0Vovan0
Silver Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору Всем привет, коль кто помнит Возник вопрос с менкодером и ффмпег, точнее одна комплексная задача, которую либо мплеер либо ффмпег вполне должны бы суметь решить, но уговорить их это сделать пока не получилось. Нужно любое видео, ну что мплеер что фф практически все воспроизводят без проблем, перекодировать cо строго определенными настройками: видео - xvid (без gmc, без qpel, без b-frames) и x264 (Main@1.3, без cabac, без b-frames, ref=1), со всеми остальными настройками получить максимум качества аудио - aac , тут особых сложностей и ограничений нет все это обязательно в контейнере mp4. И очень желательно чтобы кодирование происходило в несколько потоков, т.е. многоядерник был загружен по максимуму менкодер - прекрасно справляется с кодированием видео и аудио вместе, благо в работе с ним хороший опыт накопился и все нужные настройки устанавливаю, многопоточность тоже работает, но.. менкодер нормально муксит либо в ави, либо в rawstream. Ави никак не подходит изза отсутствия поддержки aac, понимаем аас в авишках исключительно mplayer и ничего больше. В mp4 через -of lavf -lavfopts format=mp4 менкодер муксит криво - снова ничем кроме мплеера полученное не воспроизводится. Последний вариант - менкодером кодируем отдельно видео и аудио в rawstream - с x264 все прекрасно, обычно двдрипы я так и делаю, с xvid думаю тоже все должно быть как надо, а вот с aac (использую -of rawaudio -ovc frameno) - никак, полученный на выходе аудиопоток с помощью mp4box смуксить в mp4 не удается, видимо там не совсем стандартный сырой аас файл получается. Декодировать звук из видеофайла в wav мплеером с опциями -vc null -vo null -ao pcm:file=.. чтобы потом отдельно пережать его в aac тоже не выход, это и значительно дольше, и чревато рассинхроном, и на некоторых файлах мплеер кричит о переполнении видеобуфера и ничего полезного после себя не оставляет. В общем по мплееру итог получается нерадностный. С ффмпег в общем получше, но и не идеал. Собирать её уже пришлось учиться самому, ибо в разных сборках либо не хватает чего-то, или нетак что-то, и тп. Но в общем собрал с поддержкой libx264 и libfaac, однако незаладилось с многопоточностью, да и другие моменты есть. ffmpeg прекрасно муксит все в mp4 , да и вообще для ремукса из одного формата в другой это для меня незаменимый инструмент, но кодировать аудио и видео так же удобно как менкодером у меня ею не получается: В последних версиях ффмпег какие то проблемы с дефолтно заданными опциями x264 , выдается предупреждение об этом и рекомендация использовать готовые пресеты для видео вместо дефолтных опций. Все бы хорошо, да только не очень понятно как тут задавать все нужные мне опции, в командных опциях ффмпег многое совсем нетак. С хвидом, который мне тоже весьма нужен - вообще практически непонятно как задать нужные настройки для него, по x264 и ffmpeg в инете кое что нашлось, для Хвида - нет. Мне бы лучше всего подошли готовые пресеты, там уже разобраться проще, но такого не нашлось. И с хвидом нивкакую не работает многопоточность - сам собрать его с поддержкой pthreads я не смог, хотя вроде pthreads установил правильно, но xvid с многопоточностью собираться всеравно не хочет. А готовые сборки ffmpeg , с pthreads и libxvid - сколько я не задаю значение -threads , загружено только одно ядро. А пока наилучшие результаты получились, как ни странно, с avidemux - абсолютно все прекрасно работает, и видео в xvid/x264 c нужными настройками, и все это сразу в корректный mp4, и многопоточность для xvid работает, только вот файлов мне так много обрабатывать надо, и каждый вручную авидемуксом совсем не подходит В общем такая вот история, надеюсь на помощь |