Как объединить 2 файла mp4 с 1 атомом?
Я объединяю два файла mp4 для потокового видео. проблема в том, что объединенный файл содержит два атома, по 1 атому от каждого файла, и это проблема, когда дело доходит до потоковой передачи. клиенту нужно подождать, пока первый атом загрузится из файла file1, а затем пора воспроизвести вторую часть из файла file2, клиент снова будет ждать загрузки атома. когда ваш атом маленький, вы можете этого не заметить, но при потоковой передаче большого видео атом может весить 7-10мб.
Как я могу удалить эти два атома из объединенного файла и создать новый?
что я пробовал:
ffmpeg -i file1.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts intermediate1.ts
ffmpeg -i file2.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts intermediate2.ts
ffmpeg -i "concat:intermediate1.ts|intermediate2.ts" -c copy -bsf:a aac_adtstoasc m.file.mp4
MP4Box -add m.file.mp4 -isma mf.file.mp4
mv mf.file.mp4 m.file.mp4
1 ответ
Я не уверен, что вы имеете в виду, удаляя "moov" атомы / коробки. MP4Box -add
объединяет обе коробки / атомы moov в одну. Если вы хотите, чтобы начальное воспроизведение началось быстрее при загрузке, попробуйте фрагментировать файл или использовать MPEG DASH (в частности, профиль onDemand)