#include "fileffmpeg.inc"
#include "indexstate.inc"
#include "mutex.h"
+#include "preferences.inc"
#include "thread.h"
#include "vframe.inc"
AVFilterContext *buffersrc_ctx;
AVFilterGraph *filter_graph;
AVFrame *frame, *fframe;
+ AVFrame *probe_frame;
AVBSFContext *bsfc;
FFPacket ipkt;
class FFVideoConvert {
public:
+ Preferences *preferences;
struct SwsContext *convert_ctx;
AVFrame *sw_frame;
- FFVideoConvert() { convert_ctx = 0; sw_frame = 0; }
+ FFVideoConvert(Preferences *preferences) {
+ this->preferences = preferences;
+ convert_ctx = 0; sw_frame = 0;
+ }
~FFVideoConvert() {
if( convert_ctx ) sws_freeContext(convert_ctx);
if( sw_frame ) av_frame_free(&sw_frame);
int interlaced;
int top_field_first;
+ int color_space, color_range;
};
class FFCodecRemap
static void load_audio_options(Asset *asset, EDL *edl);
static void scan_video_options(Asset *asset, EDL *edl);
static void load_video_options(Asset *asset, EDL *edl);
+ static void scan_format_options(Asset *asset, EDL *edl);
+ static void load_format_options(Asset *asset, EDL *edl);
static void set_asset_format(Asset *asset, EDL *edl, const char *text);
int get_file_format();
static int get_encoder(const char *options, char *format, char *codec, char *bsfilter);
int ff_coded_width(int stream);
int ff_coded_height(int stream);
float ff_aspect_ratio(int stream);
+ int ff_color_range(int stream);
+ int ff_color_space(int stream);
double ff_frame_rate(int stream);
- const char *ff_video_format(int stream);
+ const char *ff_video_codec(int stream);
int64_t ff_video_frames(int stream);
int ff_video_pid(int stream);
int ff_video_mpeg_color_range(int stream);
int ff_cpus();
const char *ff_hw_dev();
+ Preferences *ff_prefs();
void dump_context(AVCodecContext *ctx);
};