TheEqualizer писал(а):А можно подробнее, чем и как его разложить то, если программы не видят два потока. Если можно подробную инструкцию как вы делаете.
Сразу хочу заметить, что я совсем чуть-чуть тут понимаю что происходит и представленный тут вариант, скорей всего, будет не лучшим (или вообще ошибочным). Но нужный мне результат я получаю.
Скачиваем полезные утилиты (в моем случае под windows):
- FFmpeg Windows Builds, release full;
- Скачиваем mp4muxer с гита v1.0.1 и переименовываем dlb_mp4base-master\bin\mp4muxer.exe в mp4muxer-v1.0.1.exe;
- Скачиваем mp4muxer с гита v1.0.0 и переименовываем dlb_mp4base-98fc2f52f318f41eeedcfc44bc2f430d7ca4eabd\bin\mp4muxer_64bits.exe в mp4muxer-v1.0.0.exe;
- Скачиваем yusesope-tool v0.0.4_beta по этому адресу: mega и переименовываем папку в yusesope-tool-v0.0.4_beta;
- Скачиваем mp4demuxer с гита v1.0.1 и вытаскиваем dlb_mp4demux-master\bin\mp4demuxer.exe;
- Ставим себе клиента git, язык rust, менеджер cargo и компилятор visual studio с++. И вот такой нехитрой командой собираем dovi_tool:
- Код: Выделить всё
git clone https://github.com/quietvoid/dovi_tool.git "C:\_dimonml\tmp\video\soft\dovi_tool" && cd /d "C:\_dimonml\tmp\video\soft\dovi_tool" && set "RUSTFLAGS=-C target-feature=+crt-static" && cargo build --release
И забираем файл dovi_tool\target\release\dovi_tool.exe - Скачиваем текущий tsMuxer Nightly build, в моем случае я скачал w64-nightly-2021-01-24-02-52-22.zip;
- Скачиваем текущий GPAC Nightly Builds, в моем случае я скачал gpac-1.1.0-DEV-rev465-g35c4644c-master-x64.exe. Ставим, либо с помощью 7zip вытаскиваем mp4box.exe и остальные.
Я не все перечисленные программы буду использовать, но я их считаю полезными в рамках обсуждаемой темы.
В качестве примера возьму FEL семпл из раздачи Пила 8, которую ранее вы
тут упоминали. Скаченный семпл я назвал Пила 8.2017.UHD.Blu-Ray.Remux.2160p.sampl3.mkv. Вырезаю кусочек, начиная с 5ой секунды длиной 50 секунд, звук конвертирую в AC3, и собираю восьмой профиль (без EL) для своего gx.
- Код: Выделить всё
cd /d C:\_dimonml\tmp\video &&^
time /t &&^
soft\ffmpeg -stats -hide_banner -nostdin -ss "0:05" -t "0:50" -i "Пила 8.2017.UHD.Blu-Ray.Remux.2160p.sampl3.mkv" -map 0:0 -c copy -bsf:v hevc_mp4toannexb src_bl_el_rpu.hevc -map 0:1 -c copy src_a1_rus.ac3 -map 0:2 -acodec ac3 -ab 640k src_a2_rus.ac3 -map 0:3 -acodec ac3 -ab 640k src_a3_rus.ac3 -map 0:4 -acodec ac3 -ab 640k src_a4_eng.ac3 -map 0:7 -c copy src_s1_rus.srt -map 0:8 -c copy src_s2_eng.srt -map 0:9 -c copy src_s3_eng.srt &&^
soft\dovi_tool demux --input src_bl_el_rpu.hevc --bl-out bl.hevc --el-out el_rpu.hevc &&^
echo. | soft\yusesope-tool-v0.0.4_beta\python-3.7.6.amd64\python.exe soft\yusesope-tool-v0.0.4_beta\src\app.py -mux -mode 2 -bl bl.hevc -el el_rpu.hevc -of bl_rpu_81.hevc &&^
soft\mp4muxer-v1.0.1.exe --dv-profile 8 --dv-bl-compatible-id 1 --input-file bl_rpu_81.hevc --output-file bl_rpu_81.mp4 &&^
soft\gpac\mp4box.exe -brand mp42isom -ab dby1 -no-iod -add "bl_rpu_81.mp4#1" -add "src_a1_rus.ac3:lang=ru:name=Dub, iTunes" -add "src_a2_rus.ac3:lang=ru:name=А. Дольский" -add "src_a3_rus.ac3:lang=ru:name=Д. Есарев" -add "src_a4_eng.ac3:lang=en:name=Orig" -add "src_s1_rus.srt:lang=ru:name=Русский" -add "src_s2_eng.srt:lang=en:name=full" -add "src_s3_eng.srt:lang=en:name=SDH" -new "Jigsaw.8.2017.DV81.mp4" &&^
time /t
Полученный файл Jigsaw.8.2017.DV81.mp4 у меня на lg gx воспроизводится хорошо со значком DV как через dlna Serviio, так и через usb диск с четырьмя звуковыми дорожками и тремя субтитрами.
Кому нужно, например, седьмой профиль, могут его самостоятельно собрать из bl.hevc и el_rpu.hevc (на сколько я понимаю, эти файлы не должны отличатся от того, что можно получить из блю-рея).
Так же с помощью указанного тут tsMuxer можно получить DV в контейнере ts, который у меня так же хорошо воспроизводится.
Скачать исходный, полученный файл, все промежуточные и все программы, которые я тут упоминал, можно
от сюда.