Як з'ясувати параметри, задані параметром "-target" за допомогою функції ffmpeg?


3

Ffmpeg документації говорить про наступне -target:

Вкажіть тип цільового файлу ( vcd, svcd, dvd, dv, dv50 ). тип може мати префікс pal-, ntsc- або film- використовувати відповідний стандарт. Потім всі параметри формату (бітрейт, кодеки, розміри буфера) встановлюються автоматично.

Як з'ясувати точні параметри, які встановлюються "автоматично" конкретним -target варіант, наприклад pal-dvd?

Відповіді:


3

На жаль, тільки поглянувши на вихідний код. Перевіряти ffmpeg_opt.c починаючи з рядка 2084 . Тут ви знайдете варіанти для кожної цілі.

Наприклад, для dvd:

opt_video_codec(o, "c:v", "mpeg2video");
opt_audio_codec(o, "c:a", "ac3");
parse_option(o, "f", "dvd", options);

parse_option(o, "s", norm == PAL ? "720x576" : "720x480", options);
parse_option(o, "r", frame_rates[norm], options);
parse_option(o, "pix_fmt", "yuv420p", options);
av_dict_set(&o->g->codec_opts, "g", norm == PAL ? "15" : "18", AV_DICT_DONT_OVERWRITE);

av_dict_set(&o->g->codec_opts, "b:v", "6000000", AV_DICT_DONT_OVERWRITE);
av_dict_set(&o->g->codec_opts, "maxrate", "9000000", AV_DICT_DONT_OVERWRITE);
av_dict_set(&o->g->codec_opts, "minrate", "0", AV_DICT_DONT_OVERWRITE); // 1500000;
av_dict_set(&o->g->codec_opts, "bufsize", "1835008", AV_DICT_DONT_OVERWRITE); // 224*1024*8;

av_dict_set(&o->g->format_opts, "packetsize", "2048", AV_DICT_DONT_OVERWRITE);  // from www.mpucoder.com: DVD sectors contain 2048 bytes of data, this is also the size of one pack.
av_dict_set(&o->g->format_opts, "muxrate", "10080000", AV_DICT_DONT_OVERWRITE); // from mplex project: data_rate = 1260000. mux_rate = data_rate * 8

av_dict_set(&o->g->codec_opts, "b:a", "448000", AV_DICT_DONT_OVERWRITE);
parse_option(o, "ar", "48000", options);
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.