2012-05-29 6 views
2

Я использую FFMPEG с тех пор, как несколько мгновений сейчас и после того, как я попросил о помощи здесь в первый раз, я смог открыть эту командную строку, которую я использую с тех пор, для преобразования видео в формате .MP4 до .FLV: ffmpeg -i namefile.mp4 -c:v libx264 -crf 19 destinationfile.flv.Как изменить частоту дискретизации в FFMPEG

Результаты были просто потрясающими! Идеальное видео и намного меньше места. Но я попробовал эту же линию для нового видео и не работал.

Это то, что мне кажется:

[libmp3lame @ 03eaf5a0] flv does not support that sample rate, choose from (44100, 22050, 11025). 

После этого, я стараюсь тезисы команды строки

ffmpeg -i in.mp4 -c:v libx264 -b:v 500k -c:a copy out.flv 
ffmpeg -i in.mp4 -c:v libx264 -ar 22050 -crf 19 out.flv 

Без Succes. Поэтому прямо сейчас я просто не знаю, что делать дальше, чтобы преобразовать этот файл MP4 в FLV, который меньше по размеру и сохраняет идеальное изображение, как и другие преобразования, сделанные с первой строкой кода раньше.

Благодарим за помощь!

+1

Просьба показать полный, неразрешенный консольный вывод 'ffmpeg -i in.mp4 -c: v libx264 -ar 22050 -crf 19 out.flv'. – LordNeckbeard

+0

Что такое '-crf 19'? Я не вижу его в [текущих документах FFmpeg] (http://ffmpeg.org/ffmpeg.html). – blahdiblah

+0

Привет @LordNeckbeard и спасибо за вашу помощь! Я разрезал печатный экран информации в конце конвертации FFMPEG, я надеюсь, что это то, о чем вы просили, а если нет, извините и просто скажите, где я могу найти именно консольный вывод. [Изображение здесь] (http://imageshack.us/f/716/ffmpeg1.jpg/) Размер файла после преобразования был 163mo и оригинал 187. Это хорошо, но много раз я делаю что-то вроде что с FFMPEG результат был более 89/90mo для оригинального размера файла 187mo. Si, я думаю, что я ошибаюсь в отношении кода линии, который я использую для этого преобразования. Спасибо! –

ответ

3

У вас есть несколько вопросов, и вы уже решили flv does not support that sample rate включительно -ar. Мне потребовалось несколько комментариев для разъяснения, но ваша другая проблема, если я правильно вас понимаю, заключается в том, что вывод по-прежнему слишком велик в размере файла.

Вы упомянули FFmpeg: The ultimate Video and Audio Manipulation Tool, который объясняет:

ОФД может быть любым в пределах от 0 до 51, с разумных пределах будучи 17 до 23. Чем ниже, тем лучше качество, тем выше размер файла. В общем, лучше всего просто попытаться сами убедиться, что выглядит хорошо. Учитывайте размер файла результата, который вы хотите, и сколько качества вы можете торговать за меньшие размеры файлов. Все зависит от тебя.

Это означает, что вам нужно выбрать наивысшее значение CRF, которое по-прежнему дает вам качество, которое вы хотите. Поэтому вместо 19, который является очень высоким качеством, попробуйте более высокое значение. Это не значит, что вам нужно кодировать все видео, чтобы получить общее представление о том, как будет выглядеть конкретное значение crf. Используйте опции -ss и -t для выбора случайных секций для кодирования. В этом примере будет пропускать первые 2 минуты и 30 секунд, и кодировать 10 второй клип:

ffmpeg -ss 00:02:30 -i input -t 30 -c:v libx264 -preset medium -crf 24 output.mp4 

Как показано в примере -ss и -t может принимать либо часы: минуты: секунды или нескольких секунд.

Выбор использования crf означает, что вы хотите, чтобы ваши выходы имели определенное качество и размер файла, меньше беспокоит. Если обратное верно, то, что вы хотите, чтобы ваш результат был определенным размером и качеством файла, не имеет особого значения, тогда вам нужно использовать двухпроходный режим битрейта вместо crf. Вы не можете легко узнать, какой размер файла будет с crf, но двухпроходный код с -b:v может приблизительно позволить вам выбрать размер файла заранее. В этом example требуемом выходе составляет 100 МБ, а вход 671 секунд в длительности (см ссылки на математику), так что команда будет:

ffmpeg -i input -c:v libx264 -preset medium -b:v 1092k -pass 1 -an -f mp4 -y NUL 
ffmpeg -i input -c:v libx264 -preset medium -b:v 1092k -pass 2 -c:a libfaac -b:a 128k output.mp4 

Лично я редко использую два прохода кодирование, потому что я предпочитайте, чтобы мой набор видео был схожим качеством (и, следовательно, менялся размер файлов, о которых мне больше не относится).

Что касается -3 (текущего вопроса о вопросе защиты от stackoverflow), я полагаю, что читатели считали, что ваш вопрос неясен, так как вы не объяснили «без успеха», поэтому никто не знал, какова фактическая проблема. Будьте прямолинейными, описательными и предоставляйте всю полезную информацию: особенно команды и выходы консоли с вашим следующим вопросом FFmpeg, и вы получите лучшие и быстрые ответы.

+0

Спасибо @LordNeckbeard! Еще раз вы поможете мне в этом вопросе (FFMPEG)! Извините, если я не был абсолютно ясен, я начинаю в этом, стараюсь изо всех сил, и, как вы наверняка заметили, мой английский не идеален, потому что я не очень часто его использую. Я всегда благодарен вашей помощи, учитывая тезисы факторов, которые не привлекают многих людей. Я сохраню ваше сообщение, чтобы сохранить его информацию и советы, например, я сделал последний раз. Спасибо ОЧЕНЬ много! Это очень ценно! Имейте приятный день и еще раз спасибо за вашу помощь! –

+0

Ваш английский достаточно хорош. – LordNeckbeard