Последние темы Поиск
Общие форумы
Специализированные форумы
ПроцессорыРазгон и охлаждениеСистемные платыМодули памятиВидеосистемаTV- и FM-тюнеры, видеовход, видеовыходЦифровое видео: захват, монтаж, обработкаМониторы и другие устройства отображенияЦифровое фотоБеспилотные летательные аппаратыЦифровой звукProAudio: Профессиональное звуковое оборудованиеСтереосистемыДомашний кинотеатр: проигрыватели и источники сигналаДомашний кинотеатр: аудиосистемаДомашний кинотеатр: ТV и проекторыМагнитные и SSD накопителиОптические носители информацииСетевые носители информацииПериферияКорпуса, блоки питания, UPSСети, сетевые технологии, подключение к интернетуСистемное администрирование, безопасностьСерверыНоутбуки, нетбуки и ультрабукиПланшеты и электронные книгиМобильные телефоны, смартфоны, кпк, коммуникаторыМобильные гаджетыОператоры и технологии мобильной связиТелефония, телекоммуникации, офисные АТСБытовая техника
Программы
Игры
Авторские форумы
Прочие форумы
Форумы поддержки портала iXBT.com
Архивы конференции
Архив "О Конференции"Архив "Процессоры"Архив "Разгон и охлаждение"Архив "Системные платы"Архив "Модули памяти"Архив "Видеосистема"Архив "Видеозахват"Архив "Мониторы и другие устройства отображения"Архив "Цифровое изображение"Архив "Цифровой звук"Архив "Периферия"Архив "Корпуса, блоки питания, UPS"Архив "Коммуникации: сети и сетевые технологии"Домашний интернет, модемы (архив)Архив "Системное администрирование, безопасность"Архив "Мобильная связь"Программы Microsoft: Windows, Office, Server, Windows LiveАрхив "OС и системное ПО"Архив "Программы: Интернет"Архив "Программирование"Форум прикладных программистовАрхив "Электронные устройства и компоненты"Архив "Околокомпьютерный Флейм & Общий"Архив "Полемика (Злобный Флейм)"Околоавтомобильный ФлеймФорум ремонтниковВопросы компании IntelФотокамеры SamsungФорум о магазине приложений RuStoreФорум по продукции компании Huawei
Справка и сервисы
Другие проекты iXBT.com
Страницы:Кликните, чтобы указать произвольную страницуназад1234567444546далее
denissv: ffmpeg - вопросы, примеры, обсуждение, конкуренты
alnash
Member
1/230 ответов
9 лет на iXBT, с июля 2015
Чаще пишет в "Общий" (30%)
Инфо Ответить
a
alnash Member
9 лет назад / 03 ноября 2015 22:43
В свете реально появившихся фильмов размера 4К (или 2160р) в узких кругах киноманов время от времени возникает вопрос о перекодировке 4К 4:2:0 в Full HD (1080р) 4:4:4 с целью получения максимально возможной отдачи от устаревающих FHD ТВ типа панасониковской плазмы.

К счастью для киноманов, не столь давно на одном из забугорных форумов некий товарищ именем karl предложил остроумный способ подобной перегонки буквально на коленке при помощи ffmpeg: http://www.personal-view.com/talks/discussion/10637/…progress-topic/p2
Вкратце, оный товарищ предлагает следующий алгоритм:
1) извлекаем из 2160р YUV-кадра U- и V-компоненты
2) масштабируем извлеченные U- и V-компоненты до исходного размера 2160р
3) сливаем масштабированные U- и V-компоненты с исходной Y-компонентой
4) делаем даунскейл результата до 1080p
5) кодируем даунскейленное во что-нибудь в формате 4:4:4.
По вышеуказанной ссылке находится предложенный товарищем Карлом шелл-скрипт для перекодировки какого-то 2160р в 1080р аппловским кодеком ProRes формате 10 бит 4:4:4.

С целью практической проверки оного алгоритма был избран подопытный семпл из 4K-кина Элизиум. Для простоты из подопытного с помощью MkvMerge были извлечены звуковые дороги, тэги и проч., остался только видеопоток http://sendfile.su/1170814
Медиа-инфа подопытного

Предложенный тов. Карлом шелл-скрипт был немного доработан напильником под особенности конкретного подопытного:
ffmpeg -i 4k420.mkv -filter_complex 'extractplanes=y+u+v[y][u][v];
[u] scale=w=3840:h=1606:flags=print_info+neighbor+bitexact [us];
[v] scale=w=3840:h=1606:flags=print_info+neighbor+bitexact [vs];
[y][us][vs]mergeplanes=0x001020:yuv444p,format=pix_fmts=yuv444p, scale=w=1920:-1:flags=print_info+bicubic+full_chroma_inp+full_chroma_int'
-sws_dither none -c:v libx264 -preset veryslow -profile:v high444 -level 4.1 -map 0 2k444.mkv
(это всё одна длинная команда)

В результате применения модифицированной команды к подопытному получился некий результат: http://sendfile.su/1170818
Выхлоп команды:
Медиа-инфа результата:

Положительный результат состоит в том, что в итоге получается смотрибельный видеофайл, и возможно, даже в формате 4:4:4.
Отрицательный результат в том, что ни YUV444P, ни 10 бит, похоже, не поддерживаются VDPAU и железными плеерами, т.е. смотреть итоговое можно только софтварно с компа.
Безусловно, алгоритм нуждается в дальнейшей обработке напильником.
Желающие приглашаются к тестированию и проч.
Всё.

UPD. Сравнение скринов:
2К 444 http://imgur.com/eSvN9M
4K 420 http://imgur.com/52065Eg
Обои http://imgur.com/a/1UIV3

Исправлено: alnash, 03.11.2015 23:44

nikitakit
Member
1/7316 ответов
12 лет на iXBT, с сентября 2012
12 фото на iXBT.photo
Чаще пишет в "ДК аудио" (60%)
Беларусь, Мозырь
Инфо Ответить
n
nikitakit Member
9 лет назад / 04 ноября 2015 00:28
alnash
Так а чего там где обои на фотках цвет разный? - так и должно быть? (смотрю пока просто на ЖК монике не fhd даже)
alnash
Member
2/232 ответов
9 лет на iXBT, с июля 2015
Чаще пишет в "Общий" (30%)
Инфо Ответить
a
alnash Member
9 лет назад / 04 ноября 2015 02:00
nikitakitЭто косяк, надо подточить. В забугорной теме об этом написали, на досуге попробую.
Dollar_S
Member
1/6969 ответов
12 лет на iXBT, с октября 2012
Чаще пишет в "История" (40%)
Инфо Ответить
D
Dollar_S Member
9 лет назад / 04 ноября 2015 10:44
VLC - желтит сильно.
MPC-HC- дает хороший белый.
alnash
Member
3/235 ответов
9 лет на iXBT, с июля 2015
Чаще пишет в "Общий" (30%)
Инфо Ответить
a
alnash Member
9 лет назад / 04 ноября 2015 14:54
Подточил команду по рецепту тов. willyfan с забугорного форума.
Команда:
Выхлоп:
Медиа-инфа:

Результат http://sendfile.su/1170989
Скрин http://i.imgur.com/wGiPsCd.jpg
denissv
Member
Автор темы
169/258 ответов
15 лет на iXBT, с февраля 2010
Чаще пишет в "Видеозахват" (68%)
Инфо Ответить
d
denissv Member Автор темы
9 лет назад / 17 ноября 2015 23:42
Есть две разные версии ffmpeg, чем они отличаются?
http://ffmpeg.zeranoe.com/builds/
https://www.ffmpeg.org/download.html
Kisa_AG
Member
3534/5575 ответов, #17 в рейтинге
22 года на iXBT, с апреля 2002
2 фото на iXBT.photo
Чаще пишет в "Видеозахват" (57%)
Инфо Ответить
K
Kisa_AG Member
9 лет назад / 18 ноября 2015 09:16
denissv:
Есть две разные версии ffmpeg, чем они отличаются?
http://ffmpeg.zeranoe.com/builds/
https://www.ffmpeg.org/download.html
Это одна и та же версия, только первое это билт, исполняемые файлы, а второе - исходник, из которого скомпилирован билт.
MilashkaXY
Member
191/669 ответов
12 лет на iXBT, с сентября 2012
Чаще пишет в "Видеозахват" (41%)
Россия, Москва, Венёв, Щёкино
Инфо Ответить
M
MilashkaXY Member
9 лет назад / 28 ноября 2015 01:07
ffmpeg наилучшая программа для пакетной обработки видео.
denissv
Member
Автор темы
170/261 ответов
15 лет на iXBT, с февраля 2010
Чаще пишет в "Видеозахват" (68%)
Инфо Ответить
d
denissv Member Автор темы
8 лет назад / 10 февраля 2017 22:50
Всем привет. Возникла необходимость сконвертировать множество роликов и попутно выровнять звук по громкости, звук у роликов разный по громкости, а привести его нужно к одному уровню. Если делать в звуковом редакторе, то последовательность такая: 1.компрессор 2.лимитер 3.нормализация до нужного уровня (-1...-2Дб). Но в ffmpeg не смог найти как сделать нормализацию. В фильтре alimiter автоматическая нормализация (level) почему-то не работает. Фильтры loudnorm и dynaudnorm меняют громкость не всего трека а его частей. Как сделать нормализацию?
Kisa_AG
Member
4208/6322 ответов, #17 в рейтинге
22 года на iXBT, с апреля 2002
2 фото на iXBT.photo
Чаще пишет в "Видеозахват" (57%)
Инфо Ответить
K
Kisa_AG Member
8 лет назад / 12 февраля 2017 15:54
denissv
Вроде как в ффмпеге только в два прогона можно сделать нормализацию под заданный уровень. Первым прогоном померять текущий уровень, а вторым поднять до требуемого (фильтром -af).
denissv
Member
Автор темы
171/262 ответов
15 лет на iXBT, с февраля 2010
Чаще пишет в "Видеозахват" (68%)
Инфо Ответить
d
denissv Member Автор темы
8 лет назад / 12 февраля 2017 18:26
Для нормализации использовал sox, для компрессии и лимитирования ffmpeg. Пришлось использовать кучу временных файлов:

@echo off 
setlocal enabledelayedexpansion 
chcp 1251
echo.
echo.
set number=0 
if not exist "%CD%\WAVtoOGG" md "%CD%\WAVtoOGG"
if not exist "%CD%\tempforsound" md "%CD%\tempforsound"
for %%i in (*.wav) do (
set /A number=!number!+1
echo. 
echo.
echo  *****   !number!   *****   %%i   **********
echo.
echo.
echo.
call echo      %%DATE%%    %%TIME%%    start
echo.
echo.
call echo      %%DATE%%    %%TIME%%    *****   !number!   *****   %%i   *****     1. CONVERT TO FLAC
echo.
echo.
"C:\Program Files\1\clienc\ffmpeg\last\ffmpeg.exe" -i "%%~ni.wav" -ac 2 -c:a flac -compression_level 0 -sample_fmt s16 "%CD%\tempforsound\001.flac"
echo. 
echo.
call echo      %%DATE%%    %%TIME%%    *****   !number!   *****   %%i   *****    2. NORMALIZATION to -0.2
echo.
echo.
"c:\Program Files\1\clienc\sox\sox.exe" --show-progress --ignore-length --norm=-0.2 "%CD%\tempforsound\001.flac" --compression 0 "%CD%\tempforsound\002.flac"
del "%CD%\tempforsound\001.flac"
echo. 
echo.
call echo      %%DATE%%    %%TIME%%    *****   !number!   *****   %%i   *****    3. COMPRESSION
echo.
echo.
"C:\Program Files\1\clienc\ffmpeg\last\ffmpeg.exe" -i "%CD%\tempforsound\002.flac" -ac 2 -af acompressor=threshold=-10dB:ratio=5:attack=0.01:release=20:makeup=1:knee=1:detection=peak -c:a flac -compression_level 0 -sample_fmt s16 "%CD%\tempforsound\003.flac"
del "%CD%\tempforsound\002.flac"
echo.
echo.
call echo      %%DATE%%    %%TIME%%    *****   !number!   *****   %%i   *****    4. NORMALIZATION to -1
echo.
echo.
"c:\Program Files\1\clienc\sox\sox.exe" --show-progress --ignore-length --norm=-1 "%CD%\tempforsound\003.flac" --compression 0 "%CD%\tempforsound\004.flac"
del "%CD%\tempforsound\003.flac"
echo.
echo.
call echo      %%DATE%%    %%TIME%%    *****   !number!   *****   %%i   *****    5. LIMITER to -2 and CONVERT TO OGG
echo. 
echo.
"C:\Program Files\1\clienc\ffmpeg\last\ffmpeg.exe" -i "%CD%\tempforsound\004.flac" -f wav -ac 2 -af alimiter=level_in=1:level_out=1:limit=0.7943:attack=0.1:release=20:level=disabled - | "C:\Program Files\1\clienc\oggenc2.exe" - --ignorelength --discard-comments -q 4 -o "%CD%\WAVtoOGG\%%~ni.ogg"
del "%CD%\tempforsound\004.flac"
echo.
echo.
echo.
call echo      %%DATE%%    %%TIME%%    finish
echo.
echo.
)
RMDIR /s/q "%CD%\tempforsound"
pause
pause
exit
Kisa_AG
Member
4209/6323 ответов, #17 в рейтинге
22 года на iXBT, с апреля 2002
2 фото на iXBT.photo
Чаще пишет в "Видеозахват" (57%)
Инфо Ответить
K
Kisa_AG Member
8 лет назад / 12 февраля 2017 18:54
denissv
Тоже вариант!
denissv
Member
Автор темы
172/263 ответов
15 лет на iXBT, с февраля 2010
Чаще пишет в "Видеозахват" (68%)
Инфо Ответить
d
denissv Member Автор темы
8 лет назад / 12 февраля 2017 20:29
Пакетная конвертация MP4 в MKV с компрессией звуковых дорожек:
@echo off 
setlocal enabledelayedexpansion 
chcp 1251
echo.
echo.
set number=0 
if not exist "%CD%\MP4toMKV" md "%CD%\MP4toMKV"
if not exist "%CD%\tempforsound" md "%CD%\tempforsound"
for %%i in (*.MP4) do (
set /A number=!number!+1
echo. 
echo.
echo  *****   !number!   *****   %%i   **********
echo.
echo.
call echo      %%DATE%%    %%TIME%%    start
echo.
echo.
call echo      %%DATE%%    %%TIME%%    start convert audio
echo.
echo.
rem "C:\Program Files\1\clienc\ffmpeg\last\ffmpeg.exe" -i "%%~ni.MP4" -f wav -ac 1 - | "C:\Program Files\1\clienc\oggenc2.exe" - --ignorelength --discard-comments -q 0 -o "%CD%\MP4toMKV\%%~ni.ogg"
echo.
call echo      %%DATE%%    %%TIME%%    *****   !number!   *****   %%i   *****     1. CONVERT TO FLAC
echo.
echo.
"C:\Program Files\1\clienc\ffmpeg\last\ffmpeg.exe" -i "%%~ni.mp4" -ac 2 -c:a flac -compression_level 0 -sample_fmt s16 "%CD%\tempforsound\001.flac"
echo. 
echo.
call echo      %%DATE%%    %%TIME%%    *****   !number!   *****   %%i   *****    2. NORMALIZATION to -0.2
echo.
echo.
"c:\Program Files\1\clienc\sox\sox.exe" --show-progress --ignore-length --norm=-0.2 "%CD%\tempforsound\001.flac" --compression 0 "%CD%\tempforsound\002.flac"
del "%CD%\tempforsound\001.flac"
echo. 
echo.
call echo      %%DATE%%    %%TIME%%    *****   !number!   *****   %%i   *****    3. COMPRESSION
echo.
echo.
"C:\Program Files\1\clienc\ffmpeg\last\ffmpeg.exe" -i "%CD%\tempforsound\002.flac" -ac 2 -af acompressor=threshold=-10dB:ratio=5:attack=0.01:release=20:makeup=1:knee=1:detection=peak -c:a flac -compression_level 0 -sample_fmt s16 "%CD%\tempforsound\003.flac"
del "%CD%\tempforsound\002.flac"
echo.
echo.
call echo      %%DATE%%    %%TIME%%    *****   !number!   *****   %%i   *****    4. NORMALIZATION to -1
echo.
echo.
"c:\Program Files\1\clienc\sox\sox.exe" --show-progress --ignore-length --norm=-1 "%CD%\tempforsound\003.flac" --compression 0 "%CD%\tempforsound\004.flac"
del "%CD%\tempforsound\003.flac"
echo.
echo.
call echo      %%DATE%%    %%TIME%%    *****   !number!   *****   %%i   *****    5. LIMITER to -2 and CONVERT TO OGG
echo. 
echo.
"C:\Program Files\1\clienc\ffmpeg\last\ffmpeg.exe" -i "%CD%\tempforsound\004.flac" -f wav -ac 2 -af alimiter=level_in=1:level_out=1:limit=0.7943:attack=0.1:release=20:level=disabled - | "C:\Program Files\1\clienc\oggenc2.exe" - --ignorelength --discard-comments -q 4 -o "%CD%\MP4toMKV\%%~ni.ogg"
del "%CD%\tempforsound\004.flac"
echo.
echo.
call echo      %%DATE%%    %%TIME%%     1 pass
echo.
echo.
"c:\Program Files\1\clienc\ffmpeg\last\ffmpeg.exe" -i "%%~ni.mp4" -threads 4 -an -pix_fmt yuv420p -f yuv4mpegpipe - | "C:\Program Files\1\clienc\x264.exe" --demuxer y4m --force-cfr --sar 1:1 --stitchable --pass 1 --slow-firstpass --stats "stats264.log" --bitrate 5000 --deblock 0:0 --min-keyint 1 --keyint 250 --range pc --input-range pc --no-interlace --no-fast-pskip --no-dct-decimate --no-psy --deadzone-intra 11 --deadzone-inter 21 --qpmin 16 --qpmax 43 --qpstep 8 --merange 32 --me umh --subme 10 --partitions all --thread-input --threads 4 --trellis 2 --weightp 2 --b-adapt 2 --direct temporal --rc-lookahead 150 --aq-mode 3 --ref 16 --bframes 16 --b-pyramid 2 --output "%CD%\MP4toMKV\%%~ni_video.mkv" -
echo.
echo.
call echo      %%DATE%%    %%TIME%%     2 pass
echo.
echo.
"c:\Program Files\1\clienc\ffmpeg\last\ffmpeg.exe" -i "%%~ni.mp4" -threads 4 -an -pix_fmt yuv420p -f yuv4mpegpipe - | "C:\Program Files\1\clienc\x264.exe" --demuxer y4m --force-cfr --sar 1:1 --stitchable --pass 2 --stats "stats264.log" --bitrate 5000 --deblock 0:0 --min-keyint 1 --keyint 250 --range pc --input-range pc --no-interlace --no-fast-pskip --no-dct-decimate --no-psy --deadzone-intra 11 --deadzone-inter 21 --qpmin 16 --qpmax 43 --qpstep 8 --merange 32 --me umh --subme 10 --partitions all --thread-input --threads 4 --trellis 2 --weightp 2 --b-adapt 2 --direct temporal --rc-lookahead 150 --aq-mode 3 --ref 16 --bframes 16 --b-pyramid 2 --output "%CD%\MP4toMKV\%%~ni_video.mkv" -
echo.
echo.
call echo      %%DATE%%    %%TIME%%    start muxing
echo.
echo.
"C:\Program Files\1\clienc\MKVtoolnix\mkvmerge.exe" --disable-track-statistics-tags --no-cues -o "%CD%\MP4toMKV\%%~ni.mkv" --no-global-tags --no-chapters "%CD%\MP4toMKV\%%~ni_video.mkv" --no-global-tags --no-chapters "%CD%\MP4toMKV\%%~ni.ogg"
if not exist "%CD%\MP4toMKV\%%~ni.mkv" goto one
del "stats264.log.mbtree"
del "stats264.log"
del "%CD%\MP4toMKV\%%~ni.ogg"
del "%CD%\MP4toMKV\%%~ni_video.mkv"
echo.
echo.
echo.
call echo      %%DATE%%    %%TIME%%    finish
echo.
echo.
)
RMDIR /s/q "%CD%\tempforsound"
pause
pause
exit
:one
echo.
echo.
echo.
call echo    %%DATE%%    %%TIME%%      ERROR
echo.
echo.
echo.
pause
exit


Желательно избавиться от использования временных файлов flac, если есть решение - пишите.
Ваш ответ:

Нет значка Нет значка Вот тут! Лампочка Восклицание Вопрос Класс! Улыбка Злость Огорчение Поговорим? Краснею Подмигивание Ругаю ОдобряюBIUdelSxsupxsuboffsp spoilerqurlimgvideo• list1. list1 codeprecenter-hr-rusQWE→ЙЦУ
файлыочистить
Ваше имя: Авторизуйтесь Предпросмотр В полную форму
вставить выделенную цитату в окно ответа
Если Вы считаете это сообщение ценным для дискуссии (не обязательно с ним соглашаться), Вы можете поблагодарить его автора, а также перечислить ему на счет некоторую сумму со своего баланса (при отзыве благодарности перечисленная сумма не будет вам возвращена).
Также вы можете оценить сообщение как неудачное.
В течение суток можно 20 раз оценить сообщения разных участников (купите Premium-аккаунт, либо оплачивайте оценки сверх лимита).
Если Вы считаете это сообщение ценным для дискуссии (не обязательно с ним соглашаться), Вы можете поблагодарить его автора, а также перечислить ему на счет некоторую сумму со своего баланса (при отзыве благодарности перечисленная сумма не будет вам возвращена).
Также вы можете оценить сообщение как неудачное.
В течение суток можно 20 раз оценить сообщения разных участников (купите Premium-аккаунт, либо оплачивайте оценки сверх лимита).
Страницы:Кликните, чтобы указать произвольную страницуназад1234567444546далее
Последние обсуждения в Конференции
12:30ИИ делает человека глупее ИИ
12:29Поделитесь своим настроением. Какое оно у вас сейчас? Флуд
12:29Intel Atom и "все все все" Тех. поддержка
12:29Лучший видеомагнитофон для оцифровки VHS-2023 Видеозахват
12:28Выбор усилителя Стерео
12:28Надежность хранения информации Накопители
12:28Кто и зачем покупает затычки Nvidia GT710, GT730, и подобные им от AMD ? Видеосистема
12:27Все о проводке в квартире Ремонт
12:27Кинематографический некролог Кино
12:27OLED телевизоры LG ДК TV
12:27Сайты знакомств. Делимся опытом. Семья
12:26А все-таки Высоцкий это сила. Культура
12:25CPU-флудилка Клуб Intel
12:24Будет ли война России с Украиной? Политика
12:24Объединение выходных нейтралей двух ИБП Корпуса, БП
12:24Выбор стерео колонок (2.0) Цифр.звук
12:23Выбор стирального порошка Бытовая техника
12:22Я плакаль... (картинка прикол) Юмор
12:22Рули для ПК -- выбор, отзывы, вопросы эксплуатации Игры
12:21Импульсные Зажигающие Устройства для ламп ВД Эл. устройства
12:23Основательно модернизированная «Нива» скоро у дилеров: продажи Lada Niva Sport стартуют 5 апреля
12:21АвтоВАЗ предложил россиянам больше видов Lada Largus
12:15Самый быстрый и мощный Android-чип, который потягается с Apple M4. Dimensity 9500 должен набирать 3,5 млн баллов в AnTuTu
11:58Вместо Bosch и Valeo — «Руденск»: АвтоВАЗ, КамАЗ, ПАЗ и ЛиАЗ получат белорусские фары
11:48Rapt AI и AMD сократили настройку GPU-инфраструктуры до 3 минут и увеличили запуск моделей в 10 раз на платформе Instinct
11:48Йоркский университет изучил раннюю Землю: мантия затвердела 4 миллиарда лет назад при неожиданно низком давлении
11:38«Фотография сфальсифицирована», — на АвтоВАЗе назвали фейком статью о том, что завод просит Путина «не пускать обратно Renault и других предателей»
11:32Слишком популярен для бесплатного: запуск нового генератора изображений ChatGPT отложен для пользователей без подписки
11:20Rocket Lab вывела на орбиту группировку спутников OroraTech для круглосуточного мониторинга лесных пожаров
11:20Представлена ТВ-приставка Xiaomi TV Box S нового поколения — гораздо мощнее и быстрее, с поддержкой Wi-Fi 6, 4K, Dolby Vision и HDR10+