Это копия, сохраненная 7 декабря 2023 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
В прошлый раз мы полтреда срались и бугуртили из-за того, что в интернете кто-то опять не прав.
FFmpeg - мощнейший видео-комбайн с открытым исходным кодом подо все существующие в наблюдаемой части нашей галактики платформы. 99% бесплатного и платного графического конвертероговна используют его в качестве бек-энда, так что давай-ка заканчивай пользоваться интерфейсными зондами и осваивай сам инструмент напрямую. Вебмки для двача тоже сжимают итт.
https://www.youtube.com/watch?v=9kaIXkImCAM
Скачать тут: https://www.ffmpeg.org/download.html
Для первичного ознакомления с тем, что тут происходит, прочитай это: https://www.ffmpeg.org/ffmpeg.html - тебе будет много непонятно, но основные термины тебе зацепятся за ухо, позже разберёшься что к чему.
Полная документация по самому конвертеру и всем встроенным кодекам: https://www.ffmpeg.org/ffmpeg-all.html - можно пользоваться как справочником и подглядывать, когда что-то забыл.
Более прикладная и полезная для бытовых целей официальная вики: http://trac.ffmpeg.org/wiki - здесь ты найдёшь детальные методички с пошаговыми инструкциями для решения типовых задач типа склейки нескольких видео в одно, наложения звуков, хардсаба и т.д. Очень полезная для того, чтобы набить руку с параметрами.
Также на очень много вопросов отвечено на стековерфло и неожиданно в предыдущих тредах.
Подробный разбор режимов кодирования основных кодеков читай тут: https://slhck.info/posts/ - там всего несколько постов, но они очень крутые, чтобы понять, что происходит внутри этой адской машины.
Вики WebM-треда (частично устарело): https://github.com/pituz/webm-thread/wiki
и https://hive.blasux.ru/webm/s
Актуальный гайд по кодированию от анона из треда №5 (принимается критика, её было много в предыдущих тредах): https://github.com/megapro17/FFmpeg-Guide/blob/master/FFmpeg%20кодирование%20гайд.md
ИТТ выбираем идеальные режимы кодирования, тестируем нереализованные параметры и ждём официального исхода баттла VVC vs AV1, после чего наконец-то сможем сжимать видео ещё лучше медленнее.
P.S. Для проверки отображения на дваче вашего нестандартного медиаконтента специально существует аж целая доска: https://2ch.hk/test/ (М)
Тред №0: https://2ch.hk/s/arch/2020-08-05/res/2591244.html (М)
Тред №1: https://2ch.hk/s/arch/2021-02-25/res/2816778.html (М)
Тред №2: https://2ch.hk/s/arch/2021-09-23/res/2979843.html (М)
Тред №3: https://2ch.hk/s/arch/2021-11-13/res/3029626.html (М)
Тред №4: https://2ch.hk/s/arch/2022-03-10/res/3056070.html (М)
Тред №5: https://2ch.hk/s/arch/2022-06-29/res/3101682.html (М)
Тред №6: https://2ch.hk/s/arch/2022-09-16/res/3144406.html (М)
Тред №7: https://2ch.hk/s/arch/2022-11-14/res/3181555.html (М)
Тред №8: https://2ch.hk/s/arch/2023-04-27/res/3205384.html (М)
Тред №9: https://2ch.hk/s/res/3239508.html (М)
> > Коллекцию явно надо собирать не из рипов потоков с сервисов, а из рипов с блюреев.
> Даже если это YIFY?
Рассуждаю с позиции анимеблядства.
Всё от источника зависит. Универсального рецепта нет. Например аниме до 2009-2010 года, даже если есть булрай, предпочтительнее иметь в DVD H.264 10 bit рипе (тайтлы вроде Трёх сестриц Минами, Меланхолии Харухи Судзумии [первый сезон], Гэнсикэн, Счастливая Звезда, Добро Пожаловать в NHK!). Есть спорные BD-рипы, тех тайтлов, которые выходили изначально на DVD, как-то Девы Розена, Самурай Подсолнух. Есть переиздания BD-рипов, например в честь десятилетия первого сезона, был переиздан блурай Волчицы и Пряностей, то есть было два блурая. Первый – наспех сколоченный. Второй – уже добротно сделанный, с применением источника.
Что же касается релизов, изначально выходивших на BD – их стоит иметь в рипе, если не жалко места, то в ремуксе. За редкими исключениями. Тот же ОреИмо с интерлейсом, можно включить деинт-фильтр в плеере, либо скачать рип, где работа уже была произведена. Также у блураев есть нехорошая тенденция к бандингу, это можно проследить в том же релизе S:G; в рипах это исправили. Раньше рипы кодировали в H.264 10-bit, сейчас потихоньку перекатываются на H.265, ибо он экономит место, можно сделать ниже битрейт и получить то же качество, что и при более высоком битрейте на H.264 (можно в качестве примера найти на рутрекере раздачу Blend-S, закодированную в H.265 720p – выглядит достойно).
Также есть малочисленный подвид UHD-тайтлов, так-то Тенки но Ко, Кими но намаэ ва, Призрак в доспехах, Нэон Дженезис Евангелион. Здесь рипы H.265 без альтернатив, но ещё лучше ремуксы.
Что же касается потоковых видео, то они могут быть идентичны ТВ-версиям, только без рекламных вставок. Сами ТВ-версии сырые, на блуреях некоторые сцены перерисовывают полностью, как пример тайтл Необъятные небеса. Так что потоковые не советую даже рассматривать.
Что же касается кинца, так это вообще бездонная дырень, требующая штудирования режиссёрских версий/дисков страны происхождения (например, японская версия Соляриса Тарковского отдаёт синим).
Так что самое главное источник, а не способ его распространения, способ вторичен.
Рассуждаю с позиции анимеблядства.
Всё от источника зависит. Универсального рецепта нет. Например аниме до 2009-2010 года, даже если есть булрай, предпочтительнее иметь в DVD H.264 10 bit рипе (тайтлы вроде Трёх сестриц Минами, Меланхолии Харухи Судзумии [первый сезон], Гэнсикэн, Счастливая Звезда, Добро Пожаловать в NHK!). Есть спорные BD-рипы, тех тайтлов, которые выходили изначально на DVD, как-то Девы Розена, Самурай Подсолнух. Есть переиздания BD-рипов, например в честь десятилетия первого сезона, был переиздан блурай Волчицы и Пряностей, то есть было два блурая. Первый – наспех сколоченный. Второй – уже добротно сделанный, с применением источника.
Что же касается релизов, изначально выходивших на BD – их стоит иметь в рипе, если не жалко места, то в ремуксе. За редкими исключениями. Тот же ОреИмо с интерлейсом, можно включить деинт-фильтр в плеере, либо скачать рип, где работа уже была произведена. Также у блураев есть нехорошая тенденция к бандингу, это можно проследить в том же релизе S:G; в рипах это исправили. Раньше рипы кодировали в H.264 10-bit, сейчас потихоньку перекатываются на H.265, ибо он экономит место, можно сделать ниже битрейт и получить то же качество, что и при более высоком битрейте на H.264 (можно в качестве примера найти на рутрекере раздачу Blend-S, закодированную в H.265 720p – выглядит достойно).
Также есть малочисленный подвид UHD-тайтлов, так-то Тенки но Ко, Кими но намаэ ва, Призрак в доспехах, Нэон Дженезис Евангелион. Здесь рипы H.265 без альтернатив, но ещё лучше ремуксы.
Что же касается потоковых видео, то они могут быть идентичны ТВ-версиям, только без рекламных вставок. Сами ТВ-версии сырые, на блуреях некоторые сцены перерисовывают полностью, как пример тайтл Необъятные небеса. Так что потоковые не советую даже рассматривать.
Что же касается кинца, так это вообще бездонная дырень, требующая штудирования режиссёрских версий/дисков страны происхождения (например, японская версия Соляриса Тарковского отдаёт синим).
Так что самое главное источник, а не способ его распространения, способ вторичен.
Я в нём не разбираюсь. Какие настройки ставить?
180x144, 62:05
Тут ещё плохо сжато.
Что таблетки? Я вопрос задал, и пример прикрепил, спросил как такое делать.
Где там? У кого? Шиза? С кем говоришь?
178x144, 86:55
>vp9
>>02141
>avc
>ускорение
ffmpeg -i .\zs.avi -af volume=-1dB,afftdn -c:a libopus -b:a 6k -application voip -frame_duration 60 -vn zs-audio.mkv
ffmpeg -i .\zs.avi -an -vf deblock,yadif,deband,crop=700:568:8:0,scale=w=-2:h=144,setsar=1:1,fps=20 -c:v ffv1 -pix_fmt yuv420p10le -level 3 -threads 16 zs-video.mkv
ffmpeg -i .\zs-audio.mkv -i .\zs-video.mkv -c:a copy -c:v libsvtav1 -preset 0 -g 480 -pix_fmt yuv420p -svtav1-params tune=0:film-grain=16:mbr=10 zs-out.webm
Сам в первый раз попробовать решил сделать, жаль в 20 мб все равно не влезает
>>02732
>3gp
178x144, 86:55
Ух бля ебать, как обычно libaom-av1 тупа всех переиграл, ещё и быстрее зделол + есть возможность пожать ещё качественнее и медленнее быстрее с av1an. А это я ещё даже с параметрами не игрался.
libsvtav1 торжественно отправляется в камеру к Пахому.
ffmpeg -i .\zs-video.mkv -c:v libaom-av1 -cpu-used 0 -deadline best -g 480 -pix_fmt yuv420p -b:v 10k -pass 1 -f null NUL
ffmpeg -i .\zs-audio.mkv -i .\zs-video.mkv -c:a copy -c:v libaom-av1 -cpu-used 2 -deadline best -g 480 -pix_fmt yuv420p -b:v 10k -pass 2 zs-out-aom.webm
198x160, 86:55
Ночной энкод в 8 фпс. Пожалуй хватит...
Если уж на смартфоне кодируешь, то можно и потерпеть 10 секунд чел. Все равно сжиматься будет вечность.
Мимо реквеста.
Как мне мп4 музыкальный сделать? Не смог нагуглить. Со статичной картинкой и треком.
Почему-то у меня каждый раз обрабатывается таким образом, что картинку перешакаливает как будто принимая ее именно за видео а не за статичную пикчу.
Скачай какой-нибудь простой видеоредактор.
>Почему-то у меня каждый раз обрабатывается таким образом, что картинку перешакаливает как будто принимая ее именно за видео а не за статичную пикчу.
Может быть настройки слишком низкие выставляются битрейт там, разрешение.
Bump
Блять а нахуя он нужен, если он хуже и медленнее сжимает даже на своих самых медленных пресетах чем aom на предпоследних, ещё и битрейта не слушается?
ffmpeg -i "input.avi" -map 0:0 -filter_complex "[0:0]scale=320:240" -y "output.mp4"
вместо ожидаемого файла с одной 320x240-видеодорожкой выдает файл с двумя видеодорожками - 320x240-отскейленой и оригинального разрешения.
Что я делаю не так? Разрабы где-то успели поменять синтаксис? Это баг?
Билд стабильной ветки ffmpeg version 6.0-full_build-www.gyan.dev
Для перекодирования всех файлов в папке с порнухой в формат HEVC (High Efficiency Video Coding) с помощью FFmpeg, необходимо использовать параметры командной строки для обработки всех файлов в папке.
Вот пример командной строки для перекодирования всех файлов в папке с порнухой в формат HEVC с использованием FFmpeg:
for a in ("C:\path\to\video\folder\*.mp4") do ffmpeg -i "a" -c:v libx265 -crf 23 -preset medium -c:a copy "C:\path\to\output\folder\%%~na.mp4"
Вы можете настроить максимальный уровень сжатия необходимый вам, установив значение параметра CRF (Constant Rate Factor). Чем ниже значение CRF, тем лучшее качество видео.
Я хочу извиниться перед тобой за мою ошибку в разметке. Я думал, что все сделано правильно, но потом обнаружил, что сделал опечатку. Мы заметили, что в некоторых местах перед переменной "a" не стоят знаки процента "%%"
С уважением,
твое имя
>>08589
Открыл для себя нейросетку?
>>08784
Тема интересная на самом деле, совмещать видео подобно тому как в гкаме HDR+ работает, и таким образом восстанавливать информацию. Но для этого, во-первых, требуется, чтобы первое и второе видео были закодированы если не из одного источника, то хотя бы из разных источников высокого качества. А во-вторых, качество обоих видео должно быть сравнимое. В-третьих, чем больше по-разному пожатых видео, тем лучше будет результат (ожидаемо log2n, где n - количество видео).
> (не просто прозрачностью 50%)
А вот с этим проблема. Я так понял, что под прозрачностью ты понимаешь усреднение соответствующих пикселей одинаковых кадров у n разных видео. Ну так вот, можно же не только усреднять, можно же допустим брать медиану. Но с видео это все равно не так просто как с raw фото/видео, на обоих видео могут присутствовать одинаковые артефакты сжатия, и совмещение видео может эти артефакты очень сильно усилить, особенно учитывая что популярные кодеки достаточно детерминированы.
Что же касается "магии", то наверное, в теории такое осуществить возможно, если это "усреднение" делать на каждом этапе (де)кодирования видео (а не только на финальном). Но такое скорее всего невозможно провернуть для разных кодеков. Ну и как уже понятно, это крайне непрактичное занятие. Профиты сомнительные, а въебать знаний и человеко-часов нужно прилично.
Я всегда мап после фильтров указываю.
В твоем случае я бы сделал так:
ffmpeg -i "input.avi" -filter_complex "[0:0]scale=320:240 [v]" -map "[v]" -y "output.mp4"
Или даже просто -vf "scale=320:240" без мапа.
В общем не найдя ничего в поисковике на англицком, попробовал методом тыка поиграться с blending mode. Чуйка подсказывала что что-то надо сделать с модом difference, повторно наложив этот слой на 4к слой с каким-то ещё blending mode, но ничего похожего на улучшение не вышло. Что-то похожее на улучшение и денойз вышло если просто наложить слой 2к апскейла на 4к с lighten, видимо это лучшее что получится методом тыка.
В фш подобное можно сделать конвертнув нужные слои в смарт-объект и выбрать один из встроенных методов слияния изображений.
Алсо в ffmpeg есть фильтр blend для которого нужно поебаться с пиксельным представлением
Ещё можно поебаться с geq и реализовать любые хотелки
https://ffmpeg-user.ffmpeg.narkive.com/lV8n9pvE/blending-two-inputs-with-custom-expression
https://ffmpeg.org/ffmpeg-filters.html#geq
https://ffmpeg.org/ffmpeg-filters.html#blend
Задача называется multi image super-resolution. И она не то чтобы решена. Скорее появятся костыли которые из межкадровой корелляции будут инфу выковыривать.
У тебя то же самое и получилось.
>>08879
Тут побольше видов бленда, grainextract и grainmerge звучит похоже на то что надо, но погуглив я только нашёл как его для ретуши фото используют.
>>08890
Похожая тема, только там, как я понял, из множества кадров делают одно фото лучшего качества с помощью ИИ.
Интересно а можно заменить информацию моушен векторов из одного видео в другое
https://superuser.com/questions/1041816/combine-one-image-one-audio-file-to-make-one-video-using-ffmpeg
Учти, что -shortest и -r не совсем совместимы, ты можешь получить файл, в котором звук заканчивается раньше видео. Если хочешь использовать -r, то лучше руками указывать продолжительность видео c помощью -t.
Я это уже гуглил и это работало для мп3, но для флака у меня не работает. Возможно, нужно как-то поебаться с кодеками, но я не ебу, поэтому прежде чем самому курить мануалы решил спросить тут. Я тут ещё задумался, насколько ебанутая идея переконвертировать флак в мп3 и потом уже без мозгоёбки сделать как мне надо. Мне-то в целом флак не нужен, меня и мп3 устроит, но тогда наверное переконвертированный из флака в мп3 файлик будет необоснованно много весить, что тоже не приятно.
>Учти, что -shortest и -r не совсем совместимы, ты можешь получить файл, в котором звук заканчивается раньше видео.
С этим пока что проблем не возникало.
Получилось, надо было добавить дополнительный флаг -strict 2 (или -strict experimental, что аналогично). Причём этот флаг нужно было впихнуть после последнего input'a и перед output'ом , что для меня было не очевидно.
А какие на сегодняшний день задачи эмэрзе выполняет лучше опуса, ну или хотя бы эйэйси с ворбисом?
На основе чего ты решил мне задать такой вопрос? Я не шарю в кодеках, флак оказался единственным форматом искомого файла
Интересно просто, почему ты выбираешь древний как говно мамонта кодек, но при этом хочешь вложить обложку. У тебя видимо проблема не в том, что конечное устройство не может воспроизводить что-то другое, как у чела выше.
мп3 и флак - два самых основных аудио кодека для прослушивания музыки.
но мне интересно послушать твои обоснования, чем твои перечисленные кодеки лучше этих основных и где они вообще используются.
кароче значит смотри
если с мп3 вся твоя библиотека занимает 50 Гб
то в отпуск при том же качестве она будет занимать 20
я музыку скачиваю в том формате, в котором она распространяется в 99% случаев, а это мп3 или флак
> какая-то мышиная возня в сегменте до 128кбит
> дальше все совпадают в едином экстазе
Кого вообще этот сегмент интересует?
Спасибо. А ещё такой вопрос, может знаешь ответ на него: есть трек, альбом, идёт час, в нём условно 7 песен. В самом формате могут содержаться какие-то метаданные, в которых описаны сами треки, их длительность и тд? Чтобы самому не писать вручную тайминги, а автоматизировать это
да тут разные люди сидят, я же не знаю степень твоей ебанутости, может ты протестуешь против тех, кто распространяет во флаке и требуешь распространять музло так, как хочешь ты
Бишплатный кодык, швабодка, петучи!
Ваше AV1-очко переходит в зрительный зал к патентному троллю.
Ты в тред конвертации форматов и кодеков попал, чел.
У них не может быть никакого оффсета и разной длительности. Метаданные посмотреть можно с помощью ffmpeg -i
Всяко постарше тебя буду, зумерок.
перефорс это и и есть признак старости
Flac - если нужно высокое (оригинальное) качество. Tak - тоже lossless, чуть лучше сжатие, но его нужно самому кодировать из флака, и на любом чужом компьютере не откроется. AAC/Opus - для сжатия с потерями, лично я так и не определился какой из них лучше. Mp3 - технология прошлого, нужен чтобы слушать скуфидонский шансон и прочее говно на таком же старом и таком же говнистом аппаратном плеере из закрамов антресоли.
Опус лучше, потому что это свободный кодек.
Вроде очевидная задача, а ничего нет
> А какие на сегодняшний день задачи эмэрзе выполняет лучше опуса
Транскрибирование. Любой движок транскрибации понимает mp3. Но далеко не каждый понимает Опус.
мимо
Я использую xnview. Выделяю область и внизу появляются параметры обрезки.
Что-то вроде такого я имел в виду:
https://github.com/aidanholm/mpv-easycrop
https://github.com/he2a/mpv-config/blob/master/portable_config/scripts/mancrop.lua
> https://github.com/he2a/mpv-config/blob/master/portable_config/scripts/mancrop.lua
А как эта хуита работает? По ней, как и по остальным конфигам чет доков нет.
А, понял, это просто часть общего конфига, включается через Shift-C. Неудобная фигня таки,потому что для обрезки нужен зум, а в этом конфиге он отключен, да и кроме зума нужно удобное перемещение.
Если батч конвертация не нужна, то avidemux для одиночных видео конвертировать достаточно.
mp4+mpeg4/mp3 и AAC не прокатили. AVI+h264 или mpeg4 — тоже.
MPEG-2
С актуальностью вопросов ты опоздал на лет 6, опус давно признан и много лет уже на трубе и у коллекицонеров lossy музыки и стириминговых сервисов. Какие еще тебе аргументы нужны? С разморозкой.
>Какие еще тебе аргументы нужны?
Например, ссылки на аудиофильские форумы и там слепые тесты среди аудиофилов.
Чтобы шебм влезала в лимит мейлача ну и не была сильно попердолена
Часовые видики сжимать не собираюсь
Тогда тебе хватит тыкнуть в шапке на гайд от анона из треда №5. Для мейлача кодируй в ав1 и опус. Под лимит – по битрейту. Без черепашьей скорости – в либсвтав1, он хорошо масштабируется по пресету, оптимальную для своего железа скорость быстро выберешь. Итого:
ffmpeg -i "Исходник.mkv" -c:v libsvtav1 -preset 6 -pix_fmt yuv420p10le -b:v 500k -svtav1-params tune=0 -c:a libopus -b:a 30k -filter:a "aresample=48000:resampler=soxr:precision=33" "Пережато.webm"
ПыСы калькулятор битрейта удобно написать формулой в экселе
А можешь про пресет скорости объяснить ещё?
Попробовал сейчас на 6'ке пережать и было довольно долго по времени.
Потом решил трайнуть 12 и вышло сильно быстрее.
В том гайде, который ты дал советуют 4-6, как разумный баланс, а чем плохи значения, которые больше?
Тип качество конечное будет хуже или чего?
Чем ниже пресет, тем при равном размере выше качество и дольше кодирование. Причём чем ниже ты опускаешься от пресета по умолчанию, тем больше падает эффективность затрат времени. Насколько помню, на пресете 4 мой 2-ядерник жал четверть суток, на 2 – полсуток, на 1 – больше суток, а на верхних пресетах кодировал в околореальном времени. А вот размер будет отличаться не в разы, а на проценты. Поэтому у либсвтав1 оптимальный, а потому и дефолтный пресет – 10 из 12, довольно высокий по сравнению с равномерным распределением у того же либэкс264.
>>13112
На мейлаче превью делает сама макаба случайным кадром из ролика, это не контролируется. Превью для ав1 к макабе прикрутили недавно, и она может иногда его не отображать вовсе, это баг отгрузки на сервер.
Ну т.е тупо ставить 10ку и не запариваться?
А по поводу превью, я знаю, что на мейлаче оно само делается, мне больше для себя, чтобы в папке было наглядно видно.
> Ну т.е тупо ставить 10ку и не запариваться?
Ставить то, что не слишком запаривает твоё железо по времени. Насколько не парит подождать подольше, настолько ставь пресет пониже. Рекомендую самому поиграться с параметрами пресета и битрейта и оценить личную приемлемость результата на разных настройках.
> чтобы в папке было наглядно видно
Чтобы в проводнике были превью для ав1, можно поставить к-лайт кодек пак. В видеоплееров треде ещё один метод упоминали, но я уже забыл.
Так то да, простоянно кто-то ноет, что вебмки не открываются. Тем временем у меня hevc уже и в хроме на пк, и на встроенном браузере в телефоне работает (а av1 нет). Вот и кодек для интернета
Сколько ни постил ав1, никто не жаловался. Всё открывается. А вот если hevc запостить, то шансы 50/50 что кто-то отпишет, что не открывается.
А что, тут каждый 1 специально меняет агента, что за шизофрения
Понятно.
>>13849
Скриншот сделан с ipad'a, специально запостил с пк, потому что знаю, как тут неадекватно относятся к продукции яблока, но все равно нашелся один шизик.
>>13863 (Del)
Какой запущенный случай, все намного хуже, чем я думал.
>специально запостил с пк, потому что знаю, как тут неадекватно относятся к продукции яблока
Тебе не похуй, кто как относится? Так сильно волнует, что местный шизик тебе напишет?
Учитывая существование вот таких >>3313679 → неадекватов, меня не должен удивлять твой пост, но все-таки, если я делаю видео для мейлача, то это потому, что я хочу чтобы другие его посмотрели, так что разумно делать его таким образом, чтобы открывалось на как можно большем количестве девайсов.
И ты так говоришь барин недодал, будто нет возможности открыть в стороннем приложении, есть, но лично я в большинстве случаев не заморачиваюсь.
Давайте все видео кодировать в h264. Всё, решили. AV1 нинужон, VP9 подавно, HEVC на помойку. А всё ради того, чтобы айфоноблядь была довольна.
Чтобы угодить айфоноблядям тебе нужно h264 в baseline profile кодировать.
640x360, 1:11
2
???
Болтган, квейкодум по Вахе.
У меня после работы с svt и aom сложилось ощущение, что aom сжимает тупо ЛУЧШЕ. Условно, пресет -cpu-used 2 на aom будет сильно лучше пресета -preset 0 у svt, но svt кодировать будет намного дольше. Я ничего особо не тестировал и таймеры не засекал впрочем, просто вебм для двача сжимал.
Каких звонках, мудила? Пиши внятно.
В 99% современных приложений используется opus, при звонках через мобильную связь в пидорахии используется разное дерьмо:
https://habr.com/ru/companies/megafon/articles/687426/
Давно заметил, что при разных перечислениях файлов для объединения получается немного разный итоговый результат. Попробовал четыре варианта:
1) (for i in (*.ts) do @echo file 'i') > mylist.txt
2) Перечислил все названия в команде ffmpeg -i "concat:input1.ts|input2.ts|input3.ts" -c copy output.ts
3) Скачал непосредственно ффмпегом, т.е. итоговый файл разбухает по ходу скачивания.
4) Скачал файл программой, которая качает данные мелкие файлы и склеивает их сама (скорее всего тоже ффмпегом)
Первые 3 варианта получились с немного разным весом по байтам, но одинаково округленным до 302 мб.
Однако продолжительность 3 варианта оказалась короче, чем должна быть на 2 секнды по mpv и 4 секунды по vlc.
4 способ образовал файл с верной длительностью, но весом на 3 мб меньше, чем все остальные.
Все файлы проигрываются, длительность почти полчаса.
Если почему-то не хотите отвечать, то хоть укажите, какой из них лучше. А так же лучше 1 или 2, когда нужно склеить уже имеющиеся файлы ранее сравнивал на большом количестве мелких файлов варианты 1 и 4, получалась разница в несколько секунд и мегабайт, при длительности в несколько часов и весе где-то 15 гигов.
Фикс первого спойлера.
Чё злой такой?
AMR
https://github.com/may-son/RIFE-FixDropFrames-and-ConvertFPS
Просто возьми и сделай, посмотришь что получится.
Ты бабу так же ебать будешь? А куда, а зачем, а почему? Чел, вставил хуй и ебёшь, тут так же, вбил буквы в консольку и смотришь на результат.
Не буду я ебать баб.
То есть мне надо 20 разделить на 95? Но что значит это число? 210 мегабут в секунду? Или 21? Или это вообще килобайты?
Делил мегабайты значит на выходе тоже мегабайты, 210 килобайт получается, это битрейт на весь файл, то есть на видео и на аудио, и если битрейт аудио у тебя будет 25 килобайт, то на видео останется 185 килобайт (210 минус 25).
Ты метры в сантиметры так и не научился переводить? Скорость машины путём деления расстояния на время тоже не посчитать? Где шаманство-то?
Делишь заданный объём файла (в килобитах) на время (в секундах), получаешь суммарную скорость для всех потоков аудио, видео и прочих данных (в килобитах/секунду). На разметку контейнера можно вычесть запас в один-два процента (можно сидеть считать размеры пакетов, но это никому не нужно). От полученного числа отнимаем фиксированный битрейт аудио (для смешных видосиков больше 128 кб/с нет смысла ставить), получаем битрейт видео, в который надо уложиться (если в файле ничего другого больше нет). В два прохода обрабатываем, кодировщик сам подбирает настройки, чтобы средний битрейт (и, следовательно, общий размер) видео получился близким к указанному.
Это 0,21… мегабайт в секунду. Или, что то же самое, 1,684… мегабита в секунду. Или, что то же самое, 215,6… килобайта в секунду. Или, что то же самое, 1724,6… килобит в секунду
В Винде что используется, кибибайты или килобайты?
Изнaчaльнo былo яснo чтo вы пoeхaвшиe. Вы жe с этих кoнвepтaций дaжe нe зapaбaтывaeтe. Этo пpoстo спopтивный дpoч нa aлгopитмы сжaтия.
1800 где-то, плюс аудио
У меня есть скрипт для этого. Ещё тут какую-то таблицу давали.
Если надо кому: https://telegra.ph/Skript-dlya-vychisleniya-bitrejta-06-08
>>17448
Просто делай SD в качестве 300-500, HD в качестве 600-900 и похуй вообще. Твоё UHD в 1100-1300. Хотя я бы порекомендовал любой широкоформат переводить в 720. Но, это если в видео важных цифр нет. Для обучающих роликов с презентациями мелкошрифтом нужно ставить "1700-2000" ,а ради остальной параши хард не забивай, не резиновый (фильмы, стримы протыков, сериалы - всё храни в SD битрейтом 300-400).
Музыку и годный голос няшной тян в битрейте "160", для длительных видео битрейт музыки "128". Если на видео тонна сухой инфы не самым приятным голосом, то в моно, битрейт "80".
В lossless файл увеличивается в 4 раза в размере.
Я понимаю что ньюфаг, но что я пропускают?
Зaливaй видoс нa ютюб и кaчaй webm
Имеет ли смысл записывать видео через ffmpeg? В чём преимущество перед OBS?
Хм, дает постить только с аудиодорожкой, а без - не хочет.
ffmpeg -ss {start_time} -i track.opus -metadata album=Leviathan -metadata artist=Mastodon -metadata title= -metadata synopsis= -codec copy -to {end_time-start_time} track1.opus
Вот пишу, на выходе все то же самое, что и в изначальном аудио, НИЧЕГО НЕ МЕНЯЕТСЯ
они идентичны, почему-то фильтром не пропускает текст, пришлось скринами
Причем при добавлении новых данных, оно их добавляет. Оно именно не изменяет уже существующие по какой-то причине
Окей, получилось воспроизвести, до этого я пробовал из файла без метаданных делать новый с метаданными и всё работало.
Почему-то затирать существующие поля не получается, может баг в логике, например, ффмпег ставит указанные новые метаданные, а потом копирует уже существующие.
Можешь обойти это с помощью -map_metadata -1, но тогда придется указывать все тэги, а не только новые.
Может проще воспользоваться какой-нибудь другой утилитой.
>>20965
Нашел способ лучше:
-metadata:s:0 artist=blabla
Вот тут объяснение:
https://stackoverflow.com/a/71425802
Спасибо, ты мой спаситель!
Какие ограничения по размеру шебм/мп4 на разных досках? Какие кодеки проигрывает макакин встроенный плеер? Или это от браузера зависит?
Понятно, спасибо.
https://ffmpeg.org/ffmpeg-filters.html#Output-mode
Нихуя не понимаю.
Обычный crop работает как нужно. Для 1080p видео это crop=1920:804:0:138, например. Обрезает, сжимает, на выходе получаю видео правильного разрешения. Когда юзаю libplacebo, оно распидорасивает моё видео, растягивает его, форсит либо 720р либо 1080р цельное.
>ограничения по размеру шебм/мп4 на разных досках?
В правом нижнем углу поля ввода написано.
>Какие кодеки проигрывает макакин встроенный плеер?
Зависит от браузера и пользователя.
vp8, vp9 (8 bit), av1 (8-10 bit) проигрываются у всех кроме пидорасов.
h265 (8 bit) проигрывается почти что только у пидорасов.
h264 (8 bit) проигрывается у всех и везде.
av1 сжимает лучше всех.
По аудио: aac у всех, vorbis и opus у всех кроме пидорасов.
Пусть пидорасы поправят, если что не так.
Голос в принципе не требует больших битрейтов. Не имеет смысла завышать битрейт только из-за голоса.
А где действительно стоит задрать битрейт это на электронщине и классике. Притом для электронщины битрейт может за тебя поднять и сама психоакустическая модель опуса.
> Пусть пидорасы поправят, если что не так.
Новые яблочные гаджеты поддерживают AV1, но не vp9. Про opus не знаю, они мне об этом не говорили.
Спасибо за поправку, пидорас.
Разница есть. Коротко: libaom-av1 - четкость, стабильность, libsvtav1 - мыло, скорость.
Как пощупать четкость libaom, если с идентичными настройками она работает в 1000 раз медленнее libsvtav1?
Поставь -preset 0 на libsvtav1, пощупаешь мыло, которое будет кодироваться медленнее -speed 2 на libaom-av1.
av1an
Либа (lib) — это она, женский род.
>>22551
У вас устаревшее представление об svt av1. За то время пока вы находились в своём информационном пузыре, у этого кодировщика вышло множество версий. Поэтому его надо тестировать снова.
ffmpeg -i 'TearsOfSteel.mp4' -map 0:v:0 -vf scale=-2:360 -pix_fmt yuv420p10le -f yuv4mpegpipe -strict -1 - | SvtAv1EncApp -i stdin --preset 4 --keyint 10s --input-depth 10 --rc 1 --tbr 160 --pass 3 --tune 0 -b svt_160k.ivf
И он отлично вписался в битрейт. 156 из 160.
Скорость кодирования при пресете 4 составила 7,8 fps.
ffmpeg -i 'TearsOfSteel.mp4' -map 0:v:0 -vf scale=-2:360 -pix_fmt yuv420p10le -c:v libaom-av1 -cpu-used 8 -b:v 160k -pass 2 aom_160k.mkv
Я кодировал cpu-used 8, потому что при кодировании через avian libaom не может адекватно распределить битрейт по всему видеофайлу. А шкала crf у этих кодеков сильно отличается по качеству.
libaom тоже влез, но битрейт занижен. 138 из 160.
Скорость кодирования составила 10 fps. Да, чистого эксперимента не получилось. Но кто-то тут точно говорил что libaom cpu used 8 > svt preset 4.
Что по качеству? Как раз svt при покадровом сравнении показал большую детализацию (вспоминаем --tune 0, у libaom есть что-то подобное?). Но на битрейте 160k svt не хватает битрейта, заметны артефакты. На энкоде libaom мыла больше, и это мыло сглаживает артефекты, они менее заметны.
Короче говоря, svt тюнился под большие битрейты, и он просто ещё не расскрыл свой потенциал.
Лол, в mpv с autofit (вместо geometry) откройте 😂😂
Склеить секвенцию легко, а подготовить её концептуальным образом сложно.
Посоветуйте алгоритм и конкретную команду ffmpeg для лучшего результата. Требования такие:
1. Должно играться везде: браузер, телега, вотсапп, андроид, ios;
2. Хорошее сжатие, хотя бы в 3-4 раза;
3. Визуально не должно быть сильных различий в качестве;
Попробовал разные кодеки, результат пикрил. Оригинал Casio.mp4. Как ни странно, лучший результат по сжатию дал x265, хоть и говорят, что av1 лучше. Я бы его и выбрал, но он в браузере не играется. Нахуй нужен формат, который в 2k23 не играется в браузере не очень понятно.
Av1 вроде всем хорош, но я его загрузил в телегу и на Андроиде видос показывает просто черный экран. Такой кодек, понятно, тоже не подходит для архивации.
Получается для практического применения ничего лучше x264 пока нет? Я использовал такую команду:
[code]
ffmpeg -i input.mp4 -c:v libx264 -preset slow -crf 23 -c:a copy output_x264_crf23_slow.mp4
ffmpeg -i Casio.mp4 -c:v libvpx-vp9 -row-mt 1 -b:v 0 -crf 31 -c:a libopus Casio_vp9_crf31_rowmt1.webm
ffmpeg -i input.mp4 -vcodec libx265 -crf 28 output_x265_crf28.mp4
ffmpeg -i Casio.mp4 -c:v libsvtav1 -preset 6 -pix_fmt yuv420p10le -crf 28 -svtav1-params tune=0:irefresh-type=1 Casio_svtav1_crf28.mp4
[/code]
Ну т.е. все стандартное без изъебств. Я правильные выводы сделал? Можно ли тут что-то улучшить?
Да, совсем забыл, стоит ли как-то для моей задачи сжимать аудио? Много оно весит? Или просто хуярить везде -c:a copy ?
Ты на линуксе сидишь, вот и собирай браузер с поддержкой хевк. На худой конец можно подрубить mpv c какой-нибудь ветпасей, что делает максимально удобным в один клик включение видосов, направленных ссылками из браузера в плеер. Либо перейди на хромые.
>>23385
Смотря какой битрейт, откуда мы знаем блять что там у тебя.
Сжимать аудио имеет смысл если у тебя там PCM или FLAC аудиодорожка, ну или многоканальный DTS.
Lossy аудио имеет смысл пережимать либо для WEBM для двача, либо если твой бабушкотелик/бабушкоплеер/бабушкотилибон/холодильник/кипятильник/утюг/тапок не может декодировать аудио в твоём аудиокодеке. Во всех остальных случаях пережатие lossy в lossy смысла не имеет.
> Вопрос не в том, чтобы у меня лично играло, а в том, чтобы у всех играло, независимо от устройства.
Чтобы твоё аудио воспроизводилось на хлебопечке, кодируй его в MP3 CBR
Да причем тут аудио. Видосы с Андроид телефона много весят, надо сжать для архивации. Но чтобы визуально не было заметно качество сильно хуже. У вас что, нет видосов на телефоне, вы их не бэкапите, не сохраняете?
Для архивации не подходит никакой кодек без запиленной избыточности, чтобы в случае проеба части данных можно все равно было проиграть файл. Но можно впрочем самому такую избыточность запилить.
И av1 не кодируй с таким мыльным пресетом , конечно так он проигрывает h265. А ещё лучше этим мылокодеком тоже не кодируй
> в телегу
Ты в телеге что ли архивы держишь, ебобо? Тогда у тебя только выбор из того, что поддерживает телега.
> Получается для практического применения ничего лучше x264 пока нет?
Да. Это лучший кодек для домохозяек ввиду его распространенности, легкости как сжатия так и расжатия, и, что самое главное, достаточной для 99% случаев степенью компрессии.
Бля уже который год слушаю песенки о том, что svt уже скоро вот-вот станет сжимать лучше чем aom. А на деле нихуя не меняется. Ну сегодня вечером в очередной раз попущу svt.
Так он уже в многопроходе сжимает лучше чем aomenc. Деталей больше, распределение бит точнее.
> Ты в телеге что ли архивы держишь
Блять, вы аутисты штоле? Ты снимаешь на тилибон видосы, 99% из них говно, которое надо удалить, 1% нужно сохранить в архив на Пэка и в бэкап, потому что они ВАЖНЫЕ. Все ВАЖНЫЕ видосы содержат либо тебя самого, либо близких людей. А это значит, что будет необходимость поделиться с ними этим видосом.
Я могу у себя сжать во что угодно, ЛИЧНО Я их в любом случае смогу запустить. Но поскольку есть необходимость шарить их с разными людьми на разных платформах, то он должен играться везде, просто быть меньше раза в 3-4 без сильного ухудшения качества.
Я уже понял, что мне надо
ffmpeg -i input.mp4 -c:v libx264 -preset slow -crf 23 -c:a copy output_x264_crf23_slow.mp4
но ебать у вас токсичный тред. Вроде все по-человечески объяснил, нормально спросил, но как будто в чан с говном нырнул.
Наговнякал скрипт на повершелле с ванильным ffmpeg'ом, никакого av1an'а, никакого SvtAv1EncApp.
ffmpeg: https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-master-latest-win64-gpl-shared.zip
libsvtav1: 08c18ba0768ed3dbbff0903adc326fb3a7549bd9 (v1.6)
libaom-av1: 7d637e1ccd859f9018ebff88911411685d3a3a2b (v3.6.1)
Сурс: на няше, надруган с помощью -vf scale=h=540:w=960,ass=work/subs.ass.
Подождал неторопливого aom с лайтовой загрузочкой, 0.7 фпс и включенным row-mt, а потом svt начал ебать мой комп, сжимая на 0.2 фпс в двух проходах из трех (если ffmpeg вообще мультипасс поддерживает для svt). Случайно уснул и не поставил шебм нормальной длительности, сейчас поставлю.
>>23445
Деталей от многопроходности добавиться в принципе не может. Максимум чего может добавиться - это мыло там где было слишком четко, и четкость там где было слишком мыло, а ещё битрейт недостающий.
>>23591
Чел, ебать ты затупок, ты же можешь каждый раз когда тебе нужно куда-нибудь залить твой видос, брать его из архива, где он лежит ужатый в щи с самым медленным пресетом, и кодировать его под нужную платформу.
>-preset slow
Неужели veryslow не можешь себе позволить? Не раскрываешь до конца потенциал x264.
>но как будто в чан с говном нырнул.
Добро пожаловать на двач.
> Неужели veryslow не можешь себе позволить? Не раскрываешь до конца потенциал x264.
У вас в FAQ и написано:
> Не используйте пресеты медленее чем slow, (slower, veryslow, placebo) в них нет смысла.
> Чел, ебать ты затупок, ты же можешь каждый раз когда тебе нужно куда-нибудь залить твой видос, брать его из архива, где он лежит ужатый в щи с самым медленным пресетом, и кодировать его под нужную платформу.
Лол, и нахуя каждый раз делать этот мартышкин труд? Вы реально аутисты, сжимающие аниму.
>ffmpeg:
Ля указал плавающую версию, вот та что у меня https://github.com/BtbN/FFmpeg-Builds/releases/download/autobuild-2023-06-24-12-49/ffmpeg-N-111271-gaf3f120785-win64-gpl-shared.zip
>>23601
>У вас в FAQ и написано:
А вот методичка ffmpeg, на которую ссылается автор фака, с этим не согласна.
>Лол, и нахуя каждый раз делать этот мартышкин труд?
А что здесь непонятного? У тебя в архиве хранится оптимально пережатая версия, архив занимает мало места, ты рад. Современные процы veryslow x264 чуть ли не в реалтайме кодируют, скодировать в него из архива это не слишком долго.
Не стоит того, как по мне.
112M Orig.mp4
33M -- 26s -- x264_crf23_slow.mp4
33M -- 46s -- x264_crf23_slower.mp4
31M -- 104s -- x264_crf23_veryslow.mp4
> У тебя в архиве хранится оптимально пережатая версия, архив занимает мало места, ты рад.
По-моему ты вообще не вдупляешь о чем речь. У меня не видосы для сосача, торрента и прочих смищных вебм. Проще говоря, обычные видосы
2017-04-24_Жарил_шашлык.mp4
и все в таком духе. Если меня кто-то из родственников/друзей попросит поделиться, какие мои действия будут? Кидаю в охуенно эффективном av1. Блять, что ты кинул, тут ихуя не показывает. Ладно, сейчас подожди 15 минут я сконвертирую в нужный формат. Бляяяяяя пиздец ты. А не, подожди, вечером дома буду, тогда кину. Да ебать, ладно забей, нахуй надо.
Вместо того, чтобы просто кинуть x264 mp4, которые не настолько эффективный, но играется везде.
Так ты сыч-аутяра, ясно😒😒😒
Поддерживаю этого.
Иногда один хуже другого и наоборот. aom иногда проебывает мелкие движения (особенно заметно на дожде в начале и на 12:00) и блочит картинку (сильнее). svt выдает в целом (большую) кашу из пикселей, несмотря на самый приплющенный пресет (0), тюн на манячеткость (VQ) и больший битрейт.
Вот еще блоки с aom
768x576, 1:01
Есть вариант использовать trim вместо -ss -to, но кажется, что так возни будет больше, т.к. нужен еще setpts.
> он должен играться везде, просто быть меньше раза в 3-4 без сильного ухудшения качества.
То о чём ты говоришь невозможно даже если жать в AV1. А в случае пережатия из h264 в h264 радуйся экономии в 20% от исходника.
Ну тут паритет по качеству. Где-то мылит svt, где то aom. Но в целом они очень близки. Разницу надо прям рассматривать на стоп кадрах.
Двач может и поддерживает. Но у меня в firefox оно не откроется.
ffmpeg -hide_banner -i input.mkv -c:v libx265 -preset slow -crf 20 -profile:v main10 -g 240 -pix_fmt yuv420p10le -map 0:0 -map 0:1 -c:a copy output.mp4
Не для браузеров, а для личного архивирования. Цель: уменьшить размер исходников в 2 раза сохранив качество.
у меня видео со звуком aac-hev2 не воспроизводятся во всяких дисках или двачах если выложить
приходится перекодировать hev2 в обычный aac постоянно
Не понял вопрос.
Смотрел на своем смартфоне через приложение Codec Info. Для h264, h265, vp9 есть аппаратное ускорение. А все аудиокодеки декодируются только софтварно. Поэтому все ваши доводы о том что AAC нативный кодек рассыпаются об отсутсвие апаратного ускорение на современных смартфонах.
А что у тебя в браузере спрашивай в гугле.
Нативный декодер андроида (MediaCodec) использует аппаратное ускорение, если оно имеется.
>>25120
Узнай кто у тебя на декодере. Если ffmpeg, то только софтверно. Если MediaCodec, то поставь аиду64, зайди в кодеки и ищи записи, которые НЕ начинаются с "OMX.google" или "c2.android", но при этом начинаются с "OMX." или "c2.". Эти кодеки ускоряются.
Например c2.qti.hevc.decoder ускоряется, OMX.dolby.ac3.decoder ускоряется, OMX.google.hevc.decoder не ускоряется.
Да что-то подзаебал терминал. Я довольно редко ffmpeg ом пользуюсь и из головы постоянно вылетают команды обрезки видео и тд
Делай копилку скриптов с нужными ffmpeg опциями, как все нормальные люди.
Я вспомнил, что там есть видеоядро, на котором можно перекодировать видео.
А я люблю сжимать видео, раньше делал это на старой нвидии- h264_nvenc.
Ну вот тут подумал, может как то это видеоядро приспособить, погуглил, включил его в биосе. вроде заработало.
Но никакие гуи мокрописьки его кодек(h264_qsv) не увидели. Кроме: бандикама, и он смог с ним записывать видео, кажется.
И вот ффмпег не хочет с этим кодеком работать, что это и куда копать, может мне нужна какая то древняя версия ффмпега
код вот такой
ffmpeg -i copy.mp4 -c:v h264_qsv -global_quality 40 output.mp4
Может кто-то работат с этим квиксинком на древних процах и подскажет как заставить работать
хотя вот так сделал, вроде работает, но не совсем как надо.
Я вот указал битрейт 100к, а он всё равно 500 делает
ffmpeg -i copy.mp4 -acodec copy -vcodec h264_qsv -b:v 100k otpt8.mp4
На чём вы кодируете в AV1? На процессоре? А разве это не медленно и долго? Или у вас у всех видеокарты с энкодером AV1?
Так на процессоре быстрее. Где-то в прошлых тредах подробно поясняли, но если кратко, то энкодеры в видеокартах сделаны не для скорости, а чтобы хоть как-то работать. Производительность видеокарты в играх при этом на это своершенно не влияет, для кодировки видео используется отдельная часть чипа, очень часто совершенно идентичная и на топах и на затычках.
А что насчёт с процессоров с видеоядром, у которого специальный энкодер?
> Так на процессоре быстрее
Я в это не верю. Плюс на форчике видел анонов, которые хотят брать видеокарты под домашний плекс-сервер.
> Где-то в прошлых тредах подробно поясняли, но если кратко, то энкодеры в видеокартах сделаны не для скорости, а чтобы хоть как-то работать.
Можно использовать видеокарту вместо процессора для этих >>02996 av1an, libsvtav1, libaom-av1?
>А что насчёт с процессоров с видеоядром, у которого специальный энкодер?
Что насчёт них?
>Я в это не верю.
Решается легко собственноручным тестом.
>Плюс на форчике видел анонов, которые хотят брать видеокарты под домашний плекс-сервер.
Так там скорости не нужны, они же никуда их не сохраняют, апрямо потоком и смотрят. И если смотреть на первой скорости, то можно кадр в кадркодировать, и всё равно успеваешь. Зато эффективность выще, значит электричества меньше жрёт, меньше греется и шумит.
>>26143
Похож.
Лучший у нвидиа, у интела хуже, а про амд тактично молчим. Во встроенной или в дискретной графике энкодер – по барабану.
> Так там скорости не нужны, они же никуда их не сохраняют, апрямо потоком и смотрят. И если смотреть на первой скорости, то можно кадр в кадркодировать, и всё равно успеваешь
Ну, то есть, можно кодировать со скоростью 60 кадров в секунду на современных видеокартах?
>Ну, то есть, можно кодировать со скоростью 60 кадров в секунду на современных видеокартах?
Обычно даже 120, если h264. Современный шестиядерный процессор 300+ будет давать, но пыхтеть на все ватты.
1440x1080, 4:16
for i in (*.avi) do (
start /b /wait ffmpeg.exe -i "~dpni.avi" -map 0:0 -map 0:2 -map 0:1 -acodec copy -vcodec copy "%%~dpni_conv.avi"
)
pause
как сделать чтобы он не создавал новые файлы с именем conv а перезаписывал старые?
Уважаю пасскодогосподина.
После перепаковки удалять оригинал и переименовывать новый файл.
Иы не можешь одновременно читать из файла и его перезаписывать поверх, лол.
-hide_banner
обрезаю вот так
@echo off
set ffmpeg_path=D:\ger\Serial_Experiments_Lain_BDRip_720p_Hi10p_[AnimeCeh]\!new\ro\ffmpeg.exe
mkdir "crop" 2>nul
for A in (*.mkv) do (
%ffmpeg_path% -i "A" -ss 00:01:56 -c copy "crop\%%A"
)
echo Обрезка файлов завершена. Измененные файлы находятся в папке "crop".
pause
Пишут что H264 crf 23 примерно соответствует H265 crf 28. А какой примерно crf у AV1 будет соответствовать H264 crf 23?
>Пишут что H264 crf 23 примерно соответствует H265 crf 28
Пиздят. У меня по метрикам выходила разница примерно в 2 шага, т.е. x264@crf18 ~ x265@crf20 с -pix_fmt yuv420p.
пушто резать надо по ключевым кадрам, добавьте уже в шапку этот вопрос. буквально в каждый тред им срут.
хром не воспроизводит тоже а фурифокс да
в дискорде этот видос тоже не воспроизводит на пк, а на телефоне норм
На хромиуме не работает
Нативный хром не играет, да, но я один хрен всё в мпв перетаскиваю.
Ну так при использовании copy обрезка делается по ключевым кадрам, а если в браузере посмотреть, то зачастую бывает рассинхрон.
Кстати, еще при "copy" важно добавлять на выходе -avoid_negative_ts, это убирает рассинхрон.
1. ffmpeg -ss 4240 -t 20 -i video.mp4 -c copy seekbefore.mp4
2. ffmpeg -ss 4240 -t 20 -i video.mp4 -avoid_negative_ts 1 -c copy seekbefore-negativets.mp4
https://files.catbox.moe/f2oqwt.3gp
Видео залил так, интернет плохой
https://rutracker.org/forum/viewtopic.php?t=4060435
Вроде бы она. Только там субтитры и звуковые дорожки удалить надо, можно с помощью mkvtoolnix
Ааа, ты всё тот же шиз.
И чтобы в несколько проходов было. В общем самое максимально возможное качество через GPU NVENC
Как это возможно вообще? Попробовал один и тот же видос с -threads 8 и -threads 30 получилась разница в ~6мб (-threads 8 меньше).
>>27815
На опере работает, хотя тоже хром.
Не читал что там, но интуитивно больше тредов = более локальные оптимизации = больше размер файла.
на сайте нвидия
Алсо, если кодировать в NVENC hevc и ставить encoding mode CRF в значении 0, я так понимаю самом лучшем значении, то битрейт получается 30 мегабит. Можно ли как-то поднять этот битрейт? 35-50 мегабит или это всё в железо зашито и моя 3070ti больше не даст битрейта?
-c:v libaom-av1 -cpu-used 4 -row-mt true -threads 0 -crf 21 -tile-columns 1 -tile-rows 0 -auto-alt-ref 1 -lag-in-frames 25 -g 300 -pix_fmt yuv420p10le
960x720, 2:05
960x720, 1:00
Звук лучше всего жать в AAC HEv2, нужна сборка ffmpeg с libfdk_aac или можно пережать neroaacenc и потом сделать remux. Для видео еще нужно ставить максимальный профиль.
Кстати, еще есть такой прикол, что если сильно жать средний или полный размер кадра, то фильм меняет жанр на крипоту, т.к. появляются признаки мутации.
240x180, 1:08197 Кб, webm,
240x180, 1:00202 Кб, mp4,
240x180, 1:00194 Кб, mp4,
240x180, 1:00
Это какой-то редкий энкодер для ffmpeg, я даже сборок не могу с ним найти, а с libfdk_aac есть, видел отдельную утилиту qaac, но это уже другая история, я предпочитаю neroaacenc. Не пердолить же из-за него ffmpeg компилятором. Да и в описаниях, в частности в этой статье: https://trac.ffmpeg.org/wiki/Encode/AAC были приколы с рейтингом, пока не выяснилось, что во встроенном aac энкодере есть лажа с перекодировкой сжатых форматов.
240x180, 1:00
Даже так: av1; libx265; vp9; vp8; libx264.
Я чет не видел ни одной сборки под винду с --enable-audiotoolbox. Может и нельзя собрать с таким параметром.
libx265 завел в заблуждение своими дорисованными артефактами, которые показались детализацией.
Проверил, не умеет qaac кодировать на низких битрейтах, даже нет праметра he v2 https://hydrogenaud.io/index.php/topic,121873.0.html .
Минимум, что может:
HE 16000Hz Mono -- 10,12,16,20,24,28,32
HE 16000Hz Stereo -- 20,24,28,32,40,48,56,64
Только вот даже для перевода в моно нужно добавлять параметр через пердолинг файла для --matrix-file, где нужно указывать каналы. Короче, менее удобный, чем neroaacenc или libfdkaac, которые могут кодировать в стерео на самых низких битрейтах и не нужно менять sample rate.
https://www.mediafire.com/folder/wrpd1f5ayoavb/SHARED
Скрипты для FFmpeg (YOUTUBE-BATCH-SCRIPTS_WITH_UTILITIES.zip) и AviSynth (AVISYNTH-BATCH.zip).
FFmpeg:
local- - на скрипт перетягивается файл или папка, устанавливаются параметры и начинается обработка. В большинстве скриптов включена нормализация звука через sox. Файлы сохраняются в директорию со скриптами. Есть возможность добавления картинки под звук, обрезка по времени, создание скриншотов, добавление тишины или обрезка начала аудиофайла для синхронизации с последующим ремуксом.
online- - запускается скрипт, вставляется ссылка на онлайн-сервис, устанавливаются параметры и начинается обработка.
AviSynth:
Нет в комплекте FFmpeg, нужно добавить в директорию со скриптами или прописать в PATH.
generate-avs-drag-and-drop - создание avs-скриптов по шаблону TEMPLATE-1/2.txt путем перетягивания на него файла или папки.
encode-avs-scripts-or-drag-and-drop - конвертация с помощью FFmpeg перетянутого файла или папки, предназначен для конвертации сгенерированных avs-скриптов в директории GENERATED_SCRIPTS, которую нужно перетянуть на этот самый скрипт. При обычном запуске начинается конвертация скриптов из директории GENERATED_SCRIPTS, если в нем указан параметр INPUT_DIRECTORY.
generate-avs-encode-drag-and-drop - создание avs-скриптов перетянутого на скрипт файла или директории по шаблону с последующей конвертацией. Avs-скрипты создаются и удаляются в директории AUTOGENERATED_SCRIPTS.
*-two-pass - двухпроходная конвертация.
generate-d2v-drag-and-drop - при перетягивании создаются .d2v файлы из .vob.
set-template - выбор шаблона для TEMPLATE-1/2.txt.
Как принудительно выставить High tier в левеле?
А ваще я через Xvid4PSP кодирую и там есть почти всё, кроме этого high tier принудительного
> Почему при кодировании в CRF у меня на выходе получается переменный битрейт видео?
А каким он у тебя должен быть? Не путай CRF и CBR.
> Как принудительно выставить High tier в левеле?
Никак. Какой у тебя пиковый битрейт выпадет, такой tier у тебя и будет.
> А каким он у тебя должен быть?
Я кодирую фильмы и везде постоянный битрейт пишет. Тут начал кодировать один из BDremux, так там на выходе всегда пишет минимум битрейт 5 допустим, а максимум 35.
> Какой у тебя пиковый битрейт выпадет
Но у меня везде битрейт до 40 мегабит и при кодировании через CRF у меня High tier всегда, но если ставить CBR и выбирать битрейт до 40, то всегда Main Tier ставится сам.
Алсо, я обратил внимание, что на всех 2160p рипах фильмов всегда стоит High Tier, даже если там битрейт 10 мегабит, например
> Алсо, я обратил внимание, что на всех 2160p рипах фильмов всегда стоит High Tier, даже если там битрейт 10 мегабит, например
Зачем? Это чисто декларативная хуйня не влияет на качество картинки
> Я кодирую фильмы и везде постоянный битрейт пишет.
Чем ты их кодируешь?
> Тут начал кодировать один из BDremux, так там на выходе всегда пишет минимум битрейт 5 допустим, а максимум 35.
А как ты кодировал видео всё это время?
> но если ставить CBR и выбирать битрейт до 40, то всегда Main Tier ставится сам.
Ну так CBR на то и CBR что при 10 мегабитах High tier не может быть в принципе. Если тебе нужно достичь High tier, то ставь сразу на 40 мегабит.
> Чем ты их кодируешь?
Xvid4PSP HEVC/x265 CRF [email protected]
> А как ты кодировал видео всё это время?
В том то и дело, что так же, как и все предыдущие. Я настроил прогу из того, что нарыл в инете. Попробовал качество, попробовал воспроизведение на своей тв приставке и стал кодить, чтобы размер поменьше и качество хорошее. Видимо это файл такой просто, потому что с ним с одним проблемы. Это BDRemux Batman vs Superman.
> Зачем? Это чисто декларативная хуйня не влияет на качество картинки
А зачем тогда так принципиально делают рипы с high tier?
Вот на пике пример, что просто пишет Bit rate. В то время, как на рипе BvS пишет минимум битрей такой-то, максимум битрейт такой-то. В итоге попробовать его рипнуть в течение трёх дней я тупа забил и качаю уже готовый рип, нашёлся один, а то везде одни ремуксы.
И вообще как работает этот CRF хуй поймёшь. Сейчас рипается ремукс мульта Аладдин. при CRF 6, он раздувает файл до 50 гигов и битрей 72 мегабита. При CRF 10 файл 15 гигов, битрей явно меньше.
>>34375
> Алсо, я обратил внимание, что на всех 2160p рипах фильмов всегда стоит High Tier, даже если там битрейт 10 мегабит, например
Это значит что 10 мегабит это средний битрейт а не пиковый. А из этого следует что тебе надо кодировать либо в 2 pass VBR, либо в CRF.
> А зачем тогда так принципиально делают рипы с high tier?
Это показатель средней скорости потока, не более. Иногда бывает так, что Mediainfo вообще не пишет битрейт для видеодорожки, а бывает что выдаёт подробную характеристику. Но из этого не следует что кодирование происходило при постоянном или переменном битрейте.
Более того, у тебя на скрине BDRip в h265. А вот параметров кодирования, из которых я мог бы понять как оно закодировано, у тебя на скрине нет. Поэтому я ХЗ что у тебя там происходит.
> И вообще как работает этот CRF хуй поймёшь. Сейчас рипается ремукс мульта Аладдин. при CRF 6, он раздувает файл до 50 гигов и битрей 72 мегабита. При CRF 10 файл 15 гигов, битрей явно меньше.
Гайдов по кодированию Ultra HD контента я не встречал. Но в гайдах по кодированию Full HD контента я встречал рекомендации в CRF 18-20. CRF 16 уже overkill.
> В то время, как на рипе BvS пишет минимум битрей такой-то, максимум битрейт такой-то. В итоге попробовать его рипнуть в течение трёх дней я тупа забил
Только не говори что ты рипал рип.
> А зачем тогда так принципиально делают рипы с high tier?
А никто принципиально его не ставил. Ставят всегда либо средний битрейт, либо CRF.
> качаю уже готовый рип, нашёлся один, а то везде одни ремуксы.
лучше так всегда и делай
> Поэтому я ХЗ что у тебя там происходит.
Encoding settings : cpuid=1111039 / frame-threads=9 / numa-pools=8 / wpp / no-pmode / no-pme / no-psnr / no-ssim / log-level=3 / input-csp=1 / input-res=3840x1608 / interlace=0 / total-frames=0 / level-idc=51 / high-tier=1 / uhd-bd=0 / ref=4 / allow-non-conformance / repeat-headers / annexb / no-aud / no-hrd / info / hash=0 / no-temporal-layers / open-gop / min-keyint=24 / keyint=240 / gop-lookahead=0 / bframes=10 / b-adapt=2 / b-pyramid / bframe-bias=0 / rc-lookahead=60 / lookahead-slices=8 / scenecut=40 / hist-scenecut=0 / radl=0 / no-splice / no-intra-refresh / ctu=64 / min-cu-size=8 / no-rect / no-amp / max-tu-size=32 / tu-inter-depth=1 / tu-intra-depth=1 / limit-tu=0 / rdoq-level=0 / dynamic-rd=0.00 / no-ssim-rd / signhide / no-tskip / nr-intra=0 / nr-inter=0 / no-constrained-intra / strong-intra-smoothing / max-merge=3 / limit-refs=1 / no-limit-modes / me=1 / subme=2 / merange=57 / temporal-mvp / no-frame-dup / no-hme / weightp / no-weightb / no-analyze-src-pics / deblock=-2:-2 / no-sao / no-sao-non-deblock / rd=3 / selective-sao=0 / early-skip / rskip / no-fast-intra / no-tskip-fast / no-cu-lossless / b-intra / no-splitrd-skip / rdpenalty=0 / psy-rd=1.50 / psy-rdoq=0.00 / no-rd-refine / no-lossless / cbqpoffs=0 / crqpoffs=0 / rc=crf / crf=12.0 / qcomp=0.60 / qpstep=4 / stats-write=0 / stats-read=0 / vbv-maxrate=160000 / vbv-bufsize=160000 / vbv-init=1.0 / crf-max=21.0 / crf-min=0.0 / ipratio=1.40 / pbratio=1.30 / aq-mode=2 / aq-strength=1.00 / cutree / zone-count=0 / no-strict-cbr / qg-size=32 / no-rc-grain / qpmax=69 / qpmin=0 / no-const-vbv / sar=1 / overscan=0 / videoformat=5 / range=0 / colorprim=9 / transfer=16 / colormatrix=9 / chromaloc=0 / display-window=0 / master-display=G(8500,39850)B(6550,2300)R(35400,14600)WP(15635,16450)L(10000000,1) / cll=1000,400 / min-luma=0 / max-luma=1023 / log2-max-poc-lsb=8 / vui-timing-info / vui-hrd-info / slices=1 / no-opt-qp-pps / no-opt-ref-list-length-pps / no-multi-pass-opt-rps / scenecut-bias=0.05 / hist-threshold=0.01 / no-opt-cu-delta-qp / no-aq-motion / hdr10 / no-hdr10-opt / no-dhdr10-opt / no-idr-recovery-sei / analysis-reuse-level=0 / analysis-save-reuse-level=0 / analysis-load-reuse-level=0 / scale-factor=0 / refine-intra=0 / refine-inter=0 / refine-mv=1 / refine-ctu-distortion=0 / no-limit-sao / ctu-info=0 / no-lowpass-dct / refine-analysis-type=0 / copy-pic=1 / max-ausize-factor=1.0 / no-dynamic-refine / no-single-sei / no-hevc-aq / no-svt / no-field / qp-adaptation-range=1.00 / no-scenecut-aware-qpconformance-window-offsets / right=0 / bottom=0 / decoder-max-rate=0
> ты рипал рип
Нет же. С BDRemux делал рип. Качаю ремуксы и их рипаю.
> Поэтому я ХЗ что у тебя там происходит.
Encoding settings : cpuid=1111039 / frame-threads=9 / numa-pools=8 / wpp / no-pmode / no-pme / no-psnr / no-ssim / log-level=3 / input-csp=1 / input-res=3840x1608 / interlace=0 / total-frames=0 / level-idc=51 / high-tier=1 / uhd-bd=0 / ref=4 / allow-non-conformance / repeat-headers / annexb / no-aud / no-hrd / info / hash=0 / no-temporal-layers / open-gop / min-keyint=24 / keyint=240 / gop-lookahead=0 / bframes=10 / b-adapt=2 / b-pyramid / bframe-bias=0 / rc-lookahead=60 / lookahead-slices=8 / scenecut=40 / hist-scenecut=0 / radl=0 / no-splice / no-intra-refresh / ctu=64 / min-cu-size=8 / no-rect / no-amp / max-tu-size=32 / tu-inter-depth=1 / tu-intra-depth=1 / limit-tu=0 / rdoq-level=0 / dynamic-rd=0.00 / no-ssim-rd / signhide / no-tskip / nr-intra=0 / nr-inter=0 / no-constrained-intra / strong-intra-smoothing / max-merge=3 / limit-refs=1 / no-limit-modes / me=1 / subme=2 / merange=57 / temporal-mvp / no-frame-dup / no-hme / weightp / no-weightb / no-analyze-src-pics / deblock=-2:-2 / no-sao / no-sao-non-deblock / rd=3 / selective-sao=0 / early-skip / rskip / no-fast-intra / no-tskip-fast / no-cu-lossless / b-intra / no-splitrd-skip / rdpenalty=0 / psy-rd=1.50 / psy-rdoq=0.00 / no-rd-refine / no-lossless / cbqpoffs=0 / crqpoffs=0 / rc=crf / crf=12.0 / qcomp=0.60 / qpstep=4 / stats-write=0 / stats-read=0 / vbv-maxrate=160000 / vbv-bufsize=160000 / vbv-init=1.0 / crf-max=21.0 / crf-min=0.0 / ipratio=1.40 / pbratio=1.30 / aq-mode=2 / aq-strength=1.00 / cutree / zone-count=0 / no-strict-cbr / qg-size=32 / no-rc-grain / qpmax=69 / qpmin=0 / no-const-vbv / sar=1 / overscan=0 / videoformat=5 / range=0 / colorprim=9 / transfer=16 / colormatrix=9 / chromaloc=0 / display-window=0 / master-display=G(8500,39850)B(6550,2300)R(35400,14600)WP(15635,16450)L(10000000,1) / cll=1000,400 / min-luma=0 / max-luma=1023 / log2-max-poc-lsb=8 / vui-timing-info / vui-hrd-info / slices=1 / no-opt-qp-pps / no-opt-ref-list-length-pps / no-multi-pass-opt-rps / scenecut-bias=0.05 / hist-threshold=0.01 / no-opt-cu-delta-qp / no-aq-motion / hdr10 / no-hdr10-opt / no-dhdr10-opt / no-idr-recovery-sei / analysis-reuse-level=0 / analysis-save-reuse-level=0 / analysis-load-reuse-level=0 / scale-factor=0 / refine-intra=0 / refine-inter=0 / refine-mv=1 / refine-ctu-distortion=0 / no-limit-sao / ctu-info=0 / no-lowpass-dct / refine-analysis-type=0 / copy-pic=1 / max-ausize-factor=1.0 / no-dynamic-refine / no-single-sei / no-hevc-aq / no-svt / no-field / qp-adaptation-range=1.00 / no-scenecut-aware-qpconformance-window-offsets / right=0 / bottom=0 / decoder-max-rate=0
> ты рипал рип
Нет же. С BDRemux делал рип. Качаю ремуксы и их рипаю.
> rc=crf / crf=12.0
Ты справшивал какой тебе CRF выбрать? Если хочешь такой же как у этого рипа, ставь 12. И да, он кодировал в CRF, а не в CBR.
Настройки там примерно такие:
preset medium
bframes 10
ref 4
limit-refs 1
rc-lookahead 60
max-merge 3
b-intra 1
no-sao при включённом strong-intra-smoothing — не имеет смысла. Эти опции отвечают за замыливание кадра. Их надо включать если CRF > 22. При CRF < 18 их лучше выключить оба, то есть no-strong-intra-smoothing.
> no-sao при включённом strong-intra-smoothing — не имеет смысла
Я так понимаю это автоматом определяется. Хз где это можно установить. Но оно кадр не портит при ниже 18? Просто визуально кадр от бдремукса не отличается. Замыливания не видно.
Алсо, вот все настройки какие есть в проге.
Наверно нет. Оно выборочно работает.
При этом размер файла получается почти 38 гигов при продолжительности 2-10. Но это я прервал кодирование, поэтому стрим сайз небольшой.
Обновил архивы, исправил пути и утилиты теперь доступны в обоих архивах.
-maxrate -minrate -bufsize...
Все таки, может быть, что нужно ставить -avoid_negative_ts 2 или 0, а 1 - это (auto), в зависимости от смещения. Видео нужно перепроверять.
-1 - ‘make_non_negative’
Shift timestamps to make them non-negative. Also note that this affects only leading negative timestamps, and not non-monotonic negative timestamps.
0 - ‘make_zero’
Shift timestamps so that the first timestamp is 0.
1 - ‘auto (default)’
Enables shifting when required by the target format.
2- ‘disabled’
Disables shifting of timestamp.
А о субтитрах
Когда они отдельным файлом, — отлично, использую фильтр subtitles
Когда они изображения — норм, -filter_complex "[0:v][0:s]overlay[v]" -map "[v]"
Когда файлы внутри контейнера, —фильтр subtitles, какого черта он там по 10 минут читает?
Using font provider fontconfig
Сперва извлеки субтитры из контейнера.
ffmpeg -ss 34:23 -t 8 -i "Беспредел (1989).mp4" -i gsc.mp4 -filter_complex "[1:v]chromakey=0x20F513:0.2:0.1[ckout];[0:v][ckout]overlay[outv]" -map "[outv]" -map 0:a -aac_coder twoloop -aac_is false -y ck.mp4
Цвет можно определить в xnview. Кстати, через него можно узнать и координаты для обрезки.
Думаешь это он виноват? Вот результат ffprobe на скрине, title попадает в выходной файл, но двач не хочет его распознавать.
Ну так давай сюда видос, который распознается.
Надо затестить, меняется ли на том самом видео. И тест нового.
Прикольно. Ну видимо это не у меня руки из жопы, а макабе не нравятся новые кодировщики. Или ты ещё какую-то магию применил?
1280x720, 0:10
Где-то в 4-ой версии что-то поменяли. Особенно много сломали после 4.3.1, но насчет этой проблемы - это еще раньше, т.к. уже с этой версии >>35909 не работает. Старые версии можно скачать здесь: https://www.videohelp.com/software/ffmpeg/old-versions
Последняя проверенная, где работает - 4.0.2, остальные влом проверять.
не кодируй через говно а сам пиши параметры и все.
у всех нормальных людей в дефолт говне даже правил нет нормальных для блока слов.
еще и поддержку мп3 вырезали дауны на борде вместо того чтобы новые добавлять
Если ты не понял, то без куклоскрипта показывается тег title под названием файла и только если видео сконвертировано до определенной версии.
Для одного файла:
ffmpeg -i "video.mp4" -f wav -|sox-14.4.2\sox.exe -t wav - -t wav - norm -0.1|neroaacenc -ignorelength -br 256000 -if - -of neroaacenc.m4a
Пакетно, только для аудио:
(NeroAAC Codec)
for %a in (.mp4) do ffmpeg -i "%a" -f wav -|sox-14.4.2\sox.exe -t wav - -t wav - norm -0.1|neroaacenc -ignorelength -br 256000 -if - -of "%~na-norm.m4a"
(ffmpeg с libfdk_aac)
for %a in (.mp4) do ffmpeg -i "%a" -f wav -|sox-14.4.2\sox.exe -t wav - -t wav - norm -0.1|ffmpeg.exe -i - -map 0:a -c:a libfdk_aac -b:a 256K -c:v copy -map_chapters -1 -map_metadata -1 "%~na-norm.m4a"
Пакетно, для видео+аудио:
(NeroAAC Codec)
for %a in (.mp4) do ffmpeg -i "%a" -f wav -|sox-14.4.2\sox.exe -t wav - -t wav - norm -0.1|neroaacenc -ignorelength -br 256000 -if - -of "%~na-norm.m4a" && ffmpeg -i "%a" -i "%~na-norm.m4a" -map 0:v -map 1:a -c copy -map_chapters -1 -map_metadata -1 "%~na-norm.mp4" && del "%~na-norm.m4a"
(ffmpeg с libfdk_aac)
for %a in (.mp4) do ffmpeg -i "%a" -f wav -|sox-14.4.2\sox.exe -t wav - -t wav - norm -0.1|ffmpeg.exe -i "%a" -i - -map 0:v -map 1:a -c:a libfdk_aac -b:a 256K -c:v copy -map_chapters -1 -map_metadata -1 "%~na-norm.mp4"
Если не важно качество звука и нет версии ffmpeg с libfdk_aac или нет NeroAAC енкодера, то можно использовать встроенный кодировщик вместо -c:a libfdk_aac указать -c:a aac -aac_coder twoloop -aac_is false.
ну так и, проблема в макаке борде, если куколд показывает, нет? Щас бы древнючую версию с какого там года 2016-18 изза этого использовать
Просто было интересно, в чем проблема, в версии или просто в параметрах.
> но двач не хочет его распознавать.
У меня поэтому юзерскрипт стоит.
В конце скриншота, где:
> title not found, search for the next info segment
У двача конец поиска, у меня дальше ищет.
Какие настройки использовать в OBS для записи 4к@60 с очень высокой динамикой событий (игра Ultrakill)? Может быть, использовать ffmpeg или понизить разрешение до 1080p? Сейчас видеофайлы занимают немало (1 гигабайт на 6-7 минут), но видны сильные артефакты.
Главное - выставить аппаратное кодирование AMF или NVENC. У меня видуха старая и таких фич нету, поэтому для записи экрана с минимальными потерями кадров использую кодек MPEG-1 через драйвер UScreenCapture, который поддерживает 60 FPS, но часто таки не дотягивает до 60, обычно 52-56, встроенный gdigrab поддерживает только 30 FPS.
ffmpeg -rtbufsize 2000M -f dshow -i video="UScreenCapture" -c:v mpeg1video -qscale:v 4 -pix_fmt yuv420p -f mpeg1video CAPTURE.mpg
ffmpeg -rtbufsize 2000M -f dshow -show_video_device_dialog true -i video="UScreenCapture" -c:v mpeg1video -qscale:v 4 -pix_fmt yuv420p -f mpeg1video CAPTURE.mpg
Вообще, для записи игр еще с начала 2000-ых использовался FRAPS, размер файлов будет еще больше, то нет дропов кадров и артефактов. Сейчас с новыми видухами лучше использовать аппаратный кодировщик и писать через что-то стандартное, типа OBS.
Вместо -f mpeg1video лучше ставить -f mpegts или -f avi, будет быстрее обработка.
FFQueue, FFmpegYAG, QWinFF. Последний сам когда-то немного использовал. А вообще, можешь попробовать распаковать архив FFMPEG-YOUTUBE-BATCH-SCRIPTS_WITH_UTILITIES.zip из этого поста >>34083 , потом перетягиваешь файл или папку на "local-cut.bat", указываешь начало обрезки и длительность, создается обрезанный файл или файлы. А вот превью можно смотреть в каком-то стороннем плеере или можно перетянуть файл на local-playback.bat для проигрывания через ffplay, это уже как удобней, записать тайминги и потом вставить в тот самый скрипт.
ffmpeg -i Movie.mkv -map 0:s:0 subs.srt
получаю пикрил
На пикриле и написано, почему. У тебя там bitmap субтитры (картинки). Ты пытаешься их вывести в текст. Перед извлечением посмотри, какого типа субтитры.
ffmpeg -i 000.mkv -map 0:s:0 -c:s copy 000.sup
>Актуальный гайд по кодированию от анона из треда №5 (принимается критика
Вы указали рекомендованные CRF, не указав кодек, но они для каждого кодека разные, и даже по ссылке в источнике второй набор есть для svt-av1.
Есть несколько фильтров, но все какие-то скучные, одни полосы да фракталы.
Жизнь более-менее интересная, но гробит процессор.
Хочу чего-нибудь красивого, нескучного и лёгкого в генерации.
Есть несколько фильтров, но все какие-то скучные, одни полосы да фракталы.
Жизнь более-менее интересная, но гробит процессор.
Хочу чего-нибудь красивого, нескучного и лёгкого в генерации.
Архив FFMPEG-YOUTUBE-BATCH-SCRIPTS_WITH_UTILITIES.zip из этого поста >>34083 , там есть скрипт local-batch.bat, вот на него перетягиваешь папку и начинается перекодировка, правда, в ту же папку со скриптами, можно выставить и в другую, надо в строчке заменить "~na-REENCODED%EXTENSION%" на "\Путь к папке\~na-REENCODED%EXTENSION%", меня не напрягает, что кодируется в ту же папку, можно быстро посортировать по типу и быстро переместить в другую папку. А вот строку в твоём случае нужно оставить первую после ::ENCODING::, нужно ее раскомментировать (убрать ::) и удалить самую последнюю строку в скрипте, которая работает по дефолту. Хз, зачем тебе opus, на 96 kbps я бы использовал AAC HE, ну да ладно, дальше нужно убрать строку, начинающуюся на "set ffmpeg_parameters_aac=" и раскомментировать строку, начинающуся на "::set "ffmpeg_parameters=" (убрать ::) . После "=" указать параметры, типа: "ffmpeg_parameters=-c:v libx265 -preset medium -crf 25 -c:a libopus -b:a 96K". Опционально можно включить нормализацию звука через sox, но то такое...
Но если тебе влом затестить скрпит, то команда такая: for %a in ("путь к папке с видео\*") do ffmpeg -i "%a" -c:v libx265 -preset medium -crf 25 -c:a libopus -b:a 96K "путь к выходной папке\%~na.mp4" . Макаба может потереть часть символов, так что хз.
В FFQueue автор пытался добавить много функций, но работают они криво, странно, что за все время так и не исправил ошибку в Advanced Cutting, в видео кодируется 4 потока (2 видео и 2 аудио, обрезанные и полные) . В настройках нельзя выставить кастомный кодек и другие опции, но можно отредактировать в конфиге, правда при повторной настройке конфига через приложение все сбросится...
FFmpegYAG -вышла только одна версия, заточенная под одну вышедшую версию ffmpegHI, на которую подали жалобу из-за собранного в ней кодека libfdk_aac. Удобный превьювер для тримминга и кроппинга, но нельзя перетащить файлы прямо на интерфейс, нужно открывать через менюшку.
, QWinFF - старое приложение, не обновляется с 2015 года, которое просто работало лучше, чем WinFF, в котором были проблемы с именами файлов и это проблема того, на чем оно написано.
Из нового можно еще посмотреть на https://www.videohelp.com/software/FFmpeg-Batch ; https://www.videohelp.com/software/Videomass ; https://www.videohelp.com/software/ffe ; https://www.videohelp.com/software/AnotherGUI ; https://www.videohelp.com/software/FFmpegGUI-2
А ты что используешь?
И чтобы он нормально под линух заводился, не требуя говна мамонта
Наверное помер, никакой активности на гитхабе
480x480, 1:022,6 Мб, webm,
640x640, 0:141,2 Мб, webm,
640x640, 0:142,4 Мб, webm,
640x640, 0:14979 Кб, webm,
640x640, 0:122,2 Мб, webm,
360x360, 0:14
реквестуй через чат гпт
Отрежь от видоса 1 минуту и пожми её с 1мб битрейтом. Итоговый размер будет ориентиром 🙄🙄🙄
ffmpeg -i "%filename%.mkv" -c copy "%filename%.mp4"
звука НЕТ
Конвертирую mkv (пик1) в mp4 (пик2) командой
ffmpeg -i "%filename%.mkv" -c copy "%filename%.mp4"
Звука НЕТ
Конвертирую mkv (пик1) в mp4 (пик2) командой:
ffmpeg -i "%filename%.mkv" -c copy "%filename%.mp4"
Звука НЕТ.
-c:a aac
Опус не дружит с мп4. Перекодируй в аас, как постом выше, а цв копи.
Нет конечно. Ты не знаешь ни какими кодеками ты транскодируешь, ни какой у тебя битрейт будет на выходе, ни какого качества видео у тебя в итоге выйдет.
У меня бы получилось где-то гигабайт или 160мб без звука на 24фпс на обычном h264, плавные переходы и эффекты на экране при этом будут с шакалами
2000x1700, 1:31
ffmpeg -r 1 -loop 1 -i image.jpg -i audio.ogg -c:v libvpx-vp9 -c:a libopus -b:a 64k -pix_fmt yuv420p -crf 32 -vf scale=0:500 -r 1 -shortest "out.webm"
Доставьте плиз.
>Старый пикчегайд на русском и новый на английском.
https://arhivach.top/thread/109411/#1395795
Да! Спсибки!
Ну а чего ты хотел? Сжимаемость видео зависит главным образом от самого видео. Мультики сжимаются хорошо, потому что там графика примитивная. А вот видео снятые при плохом освещении и с задранным ISO будет сжиматся очень плохо потому что там шумов больше чем полезной информации.
> поясните за кодеки и кодирование видео.
Основные принципы сводятся к трём:
1. декомпозиция исходного материала,
2. фильтрация (удаление избыточности) в пространстве элементов декомпозиции; этот пункт применяется в кодеках с потерями информации — если кодек без потери информации (т. е. исходную последовательность точно можно воспроизвести при декодировании), то подобная фильтрация не производится;
3. энтропийное кодирование (автокорреляционный анализ и поиск способов более компактного представления информации, без потерь уже).
Исследования довольно быстро показали, что адаптивные алгоритмы серьёзно превосходят неадаптивные, в результате большинство современных кодеров с потерями в процессе работы решают комплекс оптимизационных задач. Это их дополнительная базовая способность.
По п. 2 поясняю, что коэффициенты сжатия у кодеков без потерь настолько небольшие, что такое сжатие применяется в исключительных случаях, а при распространении видеороликов по сети — почти никогда.
> Есть легкие кодеки, которыми можно перекодировать видео без качества, но меньшим размером файла?
> без потери качества
Скорее всего, исходная последовательность у тебя закодирована с потерями. В этом случае её автокорреляционные свойства уже так себе — сжать её ещё сколь-нибудь существенно маловероятно, а подобная зачата лишена практического смысла.
Если интересуют противоречащие предыдущему утверждению чудеса, то тебе в /re/ путь открыт.
Боже какой кал, не зря говорят айтишники далбаебы, я пользуюсь говнопрограммой movami, и то на 2 головы выше порекомендованого говна
Это та что с зондами в жопе, с заплати плашками и клозед сурс))) Лол )))
> В простой как две копейки синтаксис лучшего инструмента для задачи не смог
> > Боже какой кал, не зря говорят айтишники далбаебы
Люто ты себя приложил.
У тебя клавиши таб на клавиатуре нет? Ты реально альтернативно одарённый.
> пользуется дефолтным cmd
> даже в нем есть копипаста, drag and drop и автодополнение
> "превью" в любом проигрывателе с точностью до кадра
Ну хватит уже позорится.
Давай показывай свой "любой" проигрыватель где показывает милисекунды и можно листать кадрами
Есть
ffmpeg -stream_loop -1 -t 1:00 -i картинко.джипег -i аудиодорожка.m4a -pix_fmt yuv420p -vcodec libx264 -acodec copy -r 1 -g 15 -crf 18 видосик.mp4
Картинко должно иметь чётную ширину и высоту. Если это не так, то растяни её в фотошопе.
Аудиодорожка должна быть в AAC. Годных кодировщиков совсем немного: qaac или fdk aac. Всё остальное хлам и не используй это если только у тебя нет другого выбора. Поэтому кодируй аудиодорожку отдельно.
qaac.exe -V90 аудиодорожка.wav -o аудиодорожка.m4a
fdkaac -m 5 аудиодорожка.wav -o аудиодорожка.m4a
Ну и для неосиляторов mpv.
ffmpeg: /usr/src/debug/svt-av1/SVT-AV1/Source/Lib/Encoder/ASM_AVX2/EbTemporalFiltering_AVX2.c:596: svt_av1_apply_temporal_filter_planewise_medium_hbd_partial_avx2: Assertion `0' failed.
Аварийный останов (стек памяти сброшен на диск)
Чё ему не так?
Пришло время компилировать ffmpeg
Поясните за кодеки и кодирование видео.
Есть ли легкие кодеки, которыми можно перекодировать видео без потери качества, но меньшим размером файла?
Меньшим чем что?
Сейчас даже видео с камер жмётся тяжелыми кодеками с потерями. Другое дело что кодеки в камерах стоят хуёвые а потому битрейт там обычно завышают чтобы картинка не развалилась на блоки.
>Меньшим чем что?
Чем было. Думаю, есть смысл перекодировать всю коллекцию своих видео в какой-то один формат/кодик, размер уменьшить, есть смысл?
Есть смысл в x265
Не имеет смысла.
Даже если этот видос был сжат древним DivX, пережатие его в AV1 просто замылит все мелкие детали. И если для 1080p это не очень критично, то для SD контента который растягивается чтобы заполнить экран и где виден каждый пиксел это выглядеть будет отвратительно.
А вот видео фуллхд с небольшой длительности, но раздутым размером >5гб, возможно пережать, чтобы был адекватный размер файла с исходным качеством?
Думаю да. Можешь попробовать.
Но исходного™ качества всё равно не будет, так как сжимать ты его будешь с потерями.
Ну lossless кодирование качества не улучшат. Но там огромные битрейты, от 100 мегабит и выше. Поэтому сфера применения этих кодеков ограничена. Можно временно хранить футажи и промежуточные материалы на время производства видео. Но когда готова мастер копия, эти временные файлы удаляют чтобы они не занимали места.
Любая перекодировка в lossy ухудшает качество.
>>55310>>55290>>55141
Вот точный ответ на твои вопросы >>53811.
Дополнительно поясню.
>есть смысл перекодировать всю коллекцию своих видео в какой-то один формат/кодик, размер уменьшить, есть смысл?
Скорее всего, нет смысла.
>кодеков без потерь не бывает?
Вот этот поясняет верно >>55400. Такое нужно только тогда, когда хранение требует наиболее точную передачу. Например для временного хранения исходных последовательностей для монтажа, для экспериментрв и для архивного хранения исходных материалов особой ценности.
>фуллхд с небольшой длительности, но раздутым размером >5гб
Небольшая длительность - это от одной до пяти минут? Неплохо бы такой вопрос снабжать выхлопом mediainfo.
>любая перекодировка ухудшает видео?
Любая с потерями ухудшает. На практике большинсьво будет с потерями.
Может есть какой-то скрипт, который тупо режет файлы на части и не ебет мозг?
Ты зашел не по адресу.
Мы тут щас завалим тебя подробностями о том что резать можно только по ключевым кадрам и только отдельно взятую видеодорожку. О том почему нельзя резать не по ключевым кадрам и о том какие высокие битрейты у lossless кодеков.
Мы заставим тебя вручную искать ключевые кадры и точно указывать тайминги в ffmpeg. А ещё мы выебем тебе мозг выбором аудиокодека, битрейта и отдельно взятого енкодера.
Берëшь avidemux, выделяешь фрагмент по ключевым кадрам. Для видео ставишь вместо имени кодера ключевое слово «copy», звук перекодируешь тем же кодером, который был. Контейнера формат берëшь тот же. Сохраняншь фрагмент. Итого: качество видео не пострадало, но точно позиционировать начало и конец последоввтельности нельзя, а ещë пострадал за всех звук.
>Что ж там такое что аж виндовый дефендер проснулся
Отсутствие подписей и всякого DRM, насколько я понимаю. Качал из доверенноно источника?
https://www.avidemux.org/nightly/win64/ - отсюда скачал свежайший exe-шник.
Потом скачал с sourceforge - поставилось нормально.
И я уже попробовал покодировать - крутая софтина, реально работает без мозгоебли. Алсо я по дефолту и аудио поставил copy - все сохранилось как надо, спасибо большое за совет анончики.
Палю годносу - lossless cut, или как то так прога называется. Качается с гитхаба и позволяет резать видео без перекодирования.
>аудио поставил copy
Ну, это потенциальный источник проблем. Звук в lossy тоже кодируется кадрами - фактически окном отсчëтов длиной около 30 мс. Это с т. з. психоакустики это минимальная средняя длительность разборчивого завукового фрагмента - что-то вроде этого, сейчас точно не вспомню. Меньше, чем по таким интервалам, резать закодированный звук с copy невозможно. В общем случае, временны́е отметки для грениц кадров звука и видео не совпадают. При нарезке с «copy» для звука и видео, основная синхронизация идëт у ffmpeg (и, соответственно, у avidemux), насколько помню, по PTS от видеоряда, а звук режется по ближайшему к нужной PTS кадру, при этом в выходном файле-контейнере звуковая дорожка получает тег, в котором указывается время запаздывания или опережения воспроизведения звука относительно видео. Так достигается синхронизация. Проблема в том, что не все воспроизводящие устройства и программы готовы воспользоваться таким тегом - может возникнуть ощутимая рассинхронизация при воспроизведении.
>редактировании видео будет ухудшение качества?
Редактирование редактированию рознь. Кусочек вырезать по ключевым кадрам, да без перекодирования - редактирование. Написать скрипт для vapoursynth - тоже редактирование.
Некоторые операции с изображениями, например, сведение, являются разрушающими по своей природе, т. к. среди вычислительных операций есть нормализация и квантование.
Ты зачем-то пытаешься сравнивать редактор для нелинейного видеомонтажа и консольную утилиту для транскодинга аудио-видеопотоков.
>должно иметь чётную ширину и высоту
А если хочу нечеткую?
>Аудиодорожка должна быть в AAC
Почему? Видел и другие форматы аудио в видео
> qaac или fdk aac
А ваш ффмпег не умеет кодировать аудио?
>нечеткую
Там в оригинале "чётНую", нечетные размеры ffmpeg или скорее libx264 отказывается кодировать.
> не умеет кодировать аудио?
ffmpeg можно собрать с поддержкой libfdk_aac, но в конечном итоге все равно сторонний кодек делает всю работу. Есть родной aac кодек, но он хуже.
Допустим, я согласен с тобой. Но зачем тебе отдельный тред? Какие цели и задачи ты ставишь?
>>57001
>Почему? Видел и другие форматы аудио в видео
Этот почтенный господин >>54563 прав в том, что AAC сегодня является предпочтительным. Аргументы здесь такие:
- AAC более продвинутый, чем MPEG-1 L3,
- среди новых способов AAC является наиболее широко освоенным (промышленностью, выпускающей воспроизводящие устройства, программами).
Этот же почтенный господин одновременно не прав в том, что он преувеличивает значимость своих убеждений. Вот примеры его спекулятивных оценок:
> должна быть
> остальное хлам
Как ты мог догадаться, существуют причины, по которым, AAC не является лучшим выбором. Очень важной причиной является патентная чистота, которой AAC похвастать не может.
>>57001
>А ваш ффмпег не умеет кодировать аудио?
Да, умеет. И ещё и разными библиотеками: только для AAC как минимум две — встроенная и libfdk_aac. Этот почтенный господин >>57008 справедливо отмечает, что встроенный кодер AAC уступает по эффективности сжатия библиотеке libfdk_aac. Также он справедливо сообщает, что ffmpeg не всегда собирают из исходных кодов с поддержкой libfdk_aac. Встроенный в ffmpeg кодер AAC нужен для тех случаев, когда лицензия libfdk_aac не устраивает, а кодировать в AAC всё равно нужно.
И снова у >>57008 есть спорные суждения:
>все равно сторонний кодек делает всю работу
Не всю, конечно ffmpeg ещё перенаправит потоки данных и упакует всё в контейнеры. ffmpeg в таком случае позволяет кодировать видео и звук одновременно.
> Почему? Видел и другие форматы аудио в видео
Кроме совместимости с embeded уствойствами, у браузеров бывают непонятные проблемы с Opus в mp4.
Поэтому, чтобы не было проблем, кодировать надо в AAC.
>>57056
> Этот же почтенный господин одновременно не прав в том, что он преувеличивает значимость своих убеждений.
Ну если ты не считаешь кодировшик который высирает отчётливо слышимые артефакты даже на 320k, пускай даже на отдельных рандомных семплах, то я даже не знаю. Пруфы я постил когда-то давно, в предыдущих тредах.
Как для меня, это очень сильно ограничивает применимость этого кодека. Им нельзя сжимать музыку, ибо неизвестно где вылезут артефакты. Он не пригоден для скринрекординга, хотя долгое время это было единственной опцией в OBS без залезания в дебри ручных настроек. Потому я категорически не рекомендую использовать этот кодировщик.
Может быть команда ffmpeg что-то и улучшили, но я перестал следить за прогрессом в разработке. Устал ждать. Опус давно вытеснил AAC в m4a. И я не верю что они смогут довести его до ума в ближайшем будущем.
> Как ты мог догадаться, существуют причины, по которым, AAC не является лучшим выбором. Очень важной причиной является патентная чистота, которой AAC похвастать не может.
Врят-ли контейнер MPEG 4 может похвастаться патентной чистотой тоже. Но вопрос был о том как закодировать mp4 а не webm. Если вопрос был об WEBM, командлайн был бы немного другим.
Первый вопрос, во что?
Если в h264, не делай так. На торентах уже давно лежат рипы в этих форматах закодированных на таких настройках, на которых ты устанешь ждать.
Для h265: https://kokomins.wordpress.com/2019/10/10/anime-encoding-guide-for-x265-and-why-to-never-use-flac/
Для AV1: https://gitlab.com/AOMediaCodec/SVT-AV1 https://www.reddit.com/r/AV1/comments/lfheh9/encoder_tuning_part_2_making_aomencav1libaomav1/
VP9 сейчас кодек без задачь. Ни скорости как у VP8 или h264, ни эффективности как у H265 за то же время кодирования.
>Если в h264, не делай так. На торентах уже давно лежат рипы в этих форматах закодированных на таких настройках, на которых ты устанешь ждать.
Администрация торрентов запрещает использовать продвинутые кодеки, потому что они не откроются на встроенном плеере китайского телика из 2009 года?
>Для h265:
>Для AV1:
Что выбрать между ними двумя?
Сейчас откопал такую команду, которой успешно закодировал один аниме тайтл, без ухудшения качества, только шум исчез
ffmpeg -i ".mkv" -map 0:v:0 -pix_fmt yuv420p10le -f yuv4mpegpipe -strict -1 - | SvtAv1EncApp -i stdin --preset 4 --keyint 1s --crf 22 --rc 0 --film-grain 0 -b svt1av1\Outfile-tmp.ivf
Что скажешь о ней?
> Что скажешь о ней?
Я думаю что тебе не хватает --tune 0.
Тебе действительно нужен такой короткий интервал между ключевыми кадрами в 1 секунду? Обычно ставят 10 секунд для лучшей сжимаемости.
Непонятно, почему --crf 22. Почему не 24, почему не 20?
> только шум исчез
Его можно вернуть, а если быть точным то синтезировать. Начинай с --film-grain 8, сравнивай и крути. Лучше делать это на коротком отрезке.
> Что выбрать между ними двумя?
Если тебе важна аппаратная совместимость, выбирай H265. Если тебе нужно максимальное сжатие, выбирай AV1.
>Я думаю что тебе не хватает --tune 0.
У меня текстовый файл с кучей команд, которые я менял в зависимости от результата. До какого-то момента в них есть --tune 0, но потом он исчезает без объяснений. Я отказался от него по какой-то причине.
>Тебе действительно нужен такой короткий интервал между ключевыми кадрами в 1 секунду? Обычно ставят 10 секунд для лучшей сжимаемости.
Для меня это важно. Разница не столь велика, кажется, между 1s и 5s около 10%.
>Его можно вернуть, а если быть точным то синтезировать. Начинай с --film-grain 8, сравнивай и крути. Лучше делать это на коротком отрезке.
Без шума наоборот приятнее. --film-grain я в какой-то момент поменял с 8 на 0, без объяснения причины.
>Если тебе важна аппаратная совместимость, выбирай H265. Если тебе нужно максимальное сжатие, выбирай AV1.
Понял. Full hd можно кодировать в av1 без проблем, только для 4к может понадобиться аппаратное ускорение.
>Непонятно, почему --crf 22. Почему не 24, почему не 20?
Промежуточные значения между общепринятыми кодируют хуже?
Ну если ты выбрал не общепринятое а другое то на это должна быть какая-то причина.
Добавил --tune 0 и --film-grain 8.
Успел закодировать только 5 минут от 22 минутного видео. С этими опциями итоговое видео будет кодироваться дольше, вес будет больше, а улучшения качества нет, наоборот, сравнивая эти 3 картинки я вижу, что с твоими опциями яркость/контрастность/четкость немного уступают как оригиналу так и моим настройкам. Зато шум вернулся, совсем небольшой, но мне это ненужно.
ffmpeg "EP01.mkv" -map 0:v:0 -pix_fmt yuv420p10le -f yuv4mpegpipe -strict -1 - | SvtAv1EncApp -i stdin --preset 4 --keyint 1s --crf 18 --rc 0 --film-grain 8 -b svtav1\Outfile-tmp.ivf
> Но зачем тебе отдельный тред? Какие цели и задачи ты ставишь?
Ну вот, допустим, видеоредакторы, фильтры к ним, avisynth, вопросы насчет того, как и чем лучше убрать проблему на видосе. Можно совместить с аудиобработкой. В ffmpeg не так много фильтров, как под avisynth, не здесь же их обсуждать.
> Как можно их сохранить?
Отключить шумодав.
Или создать свой енкодер AV1 и интегрировать туда ИИ шумодав, который ты натренил так чтобы он сохранял мелкозернистые детали.
Тогда плохи дела. Надо подымать битрейт или ставить crf повыше.
Вот такая дорожка присутствует:
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 191 kb/s (default)
Спасибо, помогло
Сжимаю аниме в svtav1. Размер меня устраивает, скорость кодирования тоже. Качество на большинстве кадров - как в исходнике, но на некоторых кадрах есть проблемы. Например на этом. Здесь у svtav1 некоторые линии, находящиеся за слабым туманом, очень плохо видны, хотя в исходнике они более ясные. Но это даже не потеря деталей - детали остаются, но почему-то становятся менее заметными.
&& ffmpeg -i "Ergo Proxy - 01 Awakening.mkv" -t 50 -map 0:v:0 -pix_fmt yuv420p10le -f yuv4mpegpipe -strict -1 - | SvtAv1EncApp -i stdin --preset 4 --keyint 1s --crf 6 --film-grain 8 --lp 6 -b svtav1\Outfile-tmp_crf6.ivf
На основе вашего вывода, процесс конвертации продолжается, и на данный момент обработано 42439 кадров. Скорость обработки составляет примерно 4.95x.
Если продолжить оценку оставшегося времени на основе этой скорости:
Оставшееся количество кадров: 328024 - 42439 = 285585 кадров
Скорость обработки: 4.95x
Оставшееся время (в секундах): 285585 кадров / 4.95 кадра в секунду ≈ 57625 секунд
Это примерно 16 часов и 53 минут оставшегося времени до завершения конвертации, при условии, что скорость обработки останется на том же уровне.
Пожалуйста, имейте в виду, что это только приблизительная оценка, и скорость обработки может изменяться в зависимости от различных факторов.
что это за хуйня я его попросил ффмпег сконвертировать фильм 3 гб в 19 мб чтобы на двач выложитб а он его 17 часов собрался конвертировать это у меня видеокарта слабая или что
Насколько aom медленнее svt?
В городе едет так же, в деревне намного быстрее.
--sub-lang ru --sub-format srt
Вообще есть смысл качать в str формате, если он все равно объединит с видео?
>Как освоить ffmpeg?
Пробежать опытным взглядом руководство пользователя из прилагаемой документации на сайте проекта. На английском языке. Там нетрудно.
https://ffmpeg.org/ffmpeg.html
Здесь в первых четырëх разделах весьма внятно накидывают общие принцыпы. Там для иллюстрации есть несколько примеров. Сочинишь и решишь ещë несколько задачек по изложенному материалу - и усвоишь его. Если нужна прямо методическая поддержка, то мне попадались книжки, которых я не читал:
- https://books.google.com/books?id=4U34DwAAQBAJ
- https://books.google.com/books?id=Q65IzwEACAAJ
- https://books.google.com/books?id=5Cs5lAEACAAJ
- https://books.google.com/books?id=3XZIuQEACAAJ
Чуть позже посмотрю ещë на либгене.
Смотря что тебе нужно. Есть основные опции (-o, -i, -y, -map, -c, -ss, -t) и есть опции для каждого отдельного кодека. В гугле найдёшь готовые примеры команд с аргументацией, почему автор их выбрал и как они влияют на реальный результат. Сохраняй эти команды себе, применяй, экспериментируй. Я все свои команды ffmpeg скопировал с интернета и доработал после личных тестов. Разные видео требуют разные опции для лучшего результата, без личных тестов никак.
>>64074
Есть более подробная страница https://ffmpeg.org/ffmpeg-all.html
- 3636762. V. Subhash. Quick Start Guide to FFmpeg: Learn to Use the Open Source Multimedia-Processing Tool like a Pro [1ed.] — Apress, 2023;
- 2933612. Nick Ferrando. FFMPEG - From Zero to Hero — Wondermark Books, 2020;
- 1861240. Frantisek Korbel. FFmpeg Basics — 2012;
и даже такое
- 3099794. Akın Yaprakgül. Understanding FFmpeg with source code: FFMPEG Fundementals
>>64076
>Есть более подробная страница https://ffmpeg.org/ffmpeg-all.html
А ещё есть http://trac.ffmpeg.org/ и даже https://ffmpeg.org/doxygen/trunk/index.html
Но нужно ли это почтенному >>64037 прямо сейчас?
Но в результате кодирование он полностью руинит картинку.
Вот например стена на пике 1 на неё падает мягкая тень.
Но в итоге вместо плавного перехода на большинстве кадров получаются какие-то прямоугольные сегменты, которые выкрашены в определенный цвет, и между ними видны четкие грани.
Это максимально всрато, ни о каком качестве видео говорить не приходится.
Как-то можно это исправить? Это проблемы самого кодека вп9, или его настроек. Выглядит ужасно.
Проблема зовется color banding, но можно ли ее решить в твоем конкретном случае - гугли сам или жди еще ответов.
Спс. Всего лишь надо было заменить
yuv420p на
yuv420p16le
Но хз поддерживают ли его все сайты/браузеры. А то я как-то сделал вебем с каким-то нестандартным пиксельформатом и она онлайн вообще кашей какой-то была.
У меня проблема. Кодирую сериал через SvtAv1EncApp.exe, с первыми двумя сериями проблем нет, но на третьей серии начиная с 40 секунды фпс резко падает с обычных 2 до 0.6 и продолжает медленно уменьшаться. Почему так происходит?
Раз, уж, предлагалось уже тебе давать ссылки без учëта твоей подготовки, то вот тебе ещë ссылок для продвинуиых.
>Апскейл/ресайз,
Если не интересуют варианты с нейросетями, то вот для развития про остальные часто применяемые варианты (часть оконных фильтров и часть полиномиальных интерполяторов и в ffmpeg реализована)
https://imagemagick.org/Usage/filter/
Если более продвинутые варианты интересуют, то будь готов к тому, что это будет за пределами ffmpeg. Например, в виде фильтра к какому-нибудь vapoursynth.
https://forum.doom9.org/tags.php?tag=upscale
> склейка/нарезка видео/аудио,
Для этого не очень подходит ffmpeg. Он может, но не очень подходит. Даже в качестве автоматического (в смысле неинтеаркивного) средства чисто технической подготовки исходных последовательностей. Я бы предпочëл именно что нарезку делать в фреймсерверах вроде vapoursynth или avisynth+. Впрочем, у художников из adobe-треда другое представление о подходящих инструментах.
> субтитры
Зависит от того, что именно с субтитрами делать. Если отрисовать через libass поверх видео и закодировать результат, то это как раз ffmpeg. Если что-то более изощрëнное, то есть и другие инструменты.
>сжатие без потерь
huffyuv? ffv1? ffvhuff? H.264 lossless predictive 4:4:4? nvenc lossless predictive h.264? Вариантов немного и случаев немного. Ты уверен, что правильно сформулировал высказывание?
>качества,
Без исчислимых показателей качества само слово теряет научно-технический смысл.
>работа с метаданными.
Не сильная сторона ffmpeg. Лучше прочего с допустимыми метаданными, как правило, приспособлены оперировать специализированные программы и библиотеки для медиа-контейнеров.
>yuv420p16le
>profile 2
>color depth: 10–12 bit, chroma subsampling: 4:2:0
>profile 3
>color depth: 10–12 bit, chroma subsampling: 4:2:2, 4:2:0, 4:4:4
А много ли программных и аппаратных декодеров поддерживает эти профили?
Я щас загрузил такую вебем на форч.
И в разных браузерах она внезапно по разному отображается.
В хроме без лесенок, довольно плавный градиент. А в вивальди с лесенками.
Вебемка пошлая слишком.
Но я понял что впринципе вот этим yuv420p16le можно кодировать без проблем.
Даже если браузер старый и не воспринимает эту шляпу, он проигрывает как будто я просто кодировал бы с yuv420p. С всратым качеством.
fps завитит от сложности твоего видео (так называемой исходной последовательности).
Статику оно кодирует быстро, потому что там не надо считать векторы движения, ведь по сути там движения то нет.
А вот динамичные сцены ему даются тяжело. Там ведь надо найти куда переместился этот кусок кадра (их называют макроблоками). И проблема ещё в том что в динамичных сценах этот самый блок мог изменится образом нехарактерным для простого смещения на плоской поверхности. Всякие там растяжения, сужения, деформации, повороты, и прочая что нельзя описать операциями на плоскости а скорее в пространстве. Но поскольку изображение то плоское, то эффективных способов компенсировать такие изменения не существуют, и приходится тратить биты фактически не перерисовку кадра (или части от кадра).
Самая жопа состоит с экшоном от первого лица. Такое кодировать сложнее всего. А особенно игры в жанре FPS, постольку там помимо всего вышеописаного ещё и прицел мешает компенсировать движение. А на твиче ещё и лимит в 6 мегабит. И всё это кодируется в реалтайм, и ещё будь добр выделить достаточно процессорной мощности ещё и на саму игру. Степень пиздеца можешь себе представить.
При вырезании куска видео без перекодирования, часто могут оставаться какие-то куски видео в начале и/или конце вырезанного фрагмента (т.е. вырезается не то время, что указано). Или просто какой-то ступор, когда кадр зависает на 1-2 секунды, а потом начинается видео.
Как исправить?
Хотя, я так понимаю, что раз с перекодированием всё работает, это какие-то ключевые кадры или что-то такое. Но вопрос именно в том, как и чем можно вырезать без перекодирования, чтобы этого косяка не было?
Ну наверно никак. Хотя у mkv можно смещать дорожки по времени, но не всякий плеер это откроет.
Понятно... нашёл сейчас Avidemux, вроде там можно по ключевым кадрам вырезать с превью. Хоть что-то.
Можно ли посмотреть сколько места в контейнере занимает аудиопоток Ну или видеопоток?
В mp4 точно можно программой Mediainfo. Но в mkv не показывает.
Если приспичило, можно извлечь нужную дорожку из контейнера в отдельный файл и посмотреть её размер.
Это копия, сохраненная 7 декабря 2023 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.