24 #include <QWaitCondition> 33 class QOpenGLFramebufferObject;
40 struct AVFormatContext;
43 struct AVCodecContext;
49 struct AVFilterContext;
57 Clip* copy(
Sequence* s,
bool duplicate_transitions =
true);
61 long get_clip_in_with_transition();
62 long get_timeline_in_with_transition();
63 long get_timeline_out_with_transition();
65 double getMediaFrameRate();
66 long getMaximumLength();
67 void recalculateMaxLength();
70 void refactor_frame_rate(
ComboAction* ca,
double multiplier,
bool change_timeline_points);
75 void queue_remove_earliest();
92 bool maintain_audio_pitch;
96 QVector<Marker>& get_markers();
99 QList<Effect*> effects;
101 int opening_transition;
103 int closing_transition;
107 AVFormatContext* formatCtx;
110 AVCodecContext* codecCtx;
114 long calculated_length;
122 bool finished_opening;
128 bool use_existing_frame;
131 QWaitCondition can_cache;
133 QVector<AVFrame*> queue;
137 int64_t last_invalid_ts;
140 AVFilterGraph* filter_graph;
141 AVFilterContext* buffersink_ctx;
142 AVFilterContext* buffersrc_ctx;
145 QOpenGLFramebufferObject** fbo;
146 QOpenGLTexture* texture;
150 int64_t reverse_target;
151 int frame_sample_index;
152 qint64 audio_buffer_write;
154 bool audio_just_reset;
155 long audio_target_frame;
157 QVector<Marker> markers;
Definition: sequence.h:33
Definition: transition.h:39