У меня есть видео с моего смартфона, которое 3840x2160@57.74. Изначально оно длилось ровно 5 минут. Я заменил звук на файл musi c, который составляет 5 минут и 11 секунд, используя ffmpeg -i video.mp4 -i audio.mp3 -c copy -map 0:v:0 -map 1:a:0 output.mp4
. В конце я ожидал 11 секунд черного цвета, но вместо этого вывод видео останавливается на последнем кадре на 11 секунд. Там определенно что-то происходит, потому что, когда я пытаюсь загрузить на YouTube, он видит только первые 5 минут. Последние 10 секунд звука пропадают.
Я попытался сделать второй черный клип с ffmpeg -f lavfi -i color=c=black:s=uhd2160:r=57.74 -t 11 -pix_fmt yuv420p blk2.mp4
. Когда я пытаюсь объединить два файла с ffmpeg -f concat -safe 0 -i list.txt -c copy teacup6.mp4
, я получаю огромный список ошибок, таких как [mp4 @ 00000166fda994c0] Non-monotonous DTS in output stream 0:0; previous: 27002920, current: 3728954; changing to 27002921. This may result in incorrect timestamps in the output file.
, для кадров, которые кажутся примерно на 11 секунд, так что в основном весь 11-секундный черный клип. Когда я играю его в VL C, он становится черным, но я подозреваю, что на самом деле он не обрабатывает / не воспроизводит 11 секунд хорошего черного видео, потому что, если я щелкну по временной шкале трека, на холсте начнутся визуальные глюки.
Вот то, что ffmpeg сообщает мне о моих входах и выходах в отношении частоты кадров, формата пикселов и т. Д. c.
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000239e6cb2880] Auto-inserting h264_mp4toannexb bitstream filter
Input #0, concat, from 'list.txt':
Duration: N/A, start: -0.023021, bitrate: 72244 kb/s
Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 3840x2160, 71994 kb/s, SAR 1:1 DAR 16:9, 57.74 fps, 59 tbr, 90k tbn, 180k tbc
Metadata:
handler_name : VideoHandle
Stream #0:1(und): Audio: mp3 (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 250 kb/s
Metadata:
handler_name : SoundHandler
Output #0, mp4, to 'teacup5.mp4':
Metadata:
encoder : Lavf58.35.102
Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 3840x2160 [SAR 1:1 DAR 16:9], q=2-31, 71994 kb/s, 57.74 fps, 59 tbr, 90k tbn, 90k tbc
Metadata:
handler_name : VideoHandle
Stream #0:1(und): Audio: mp3 (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 250 kb/s
Metadata:
handler_name : SoundHandler
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
В качестве альтернативы я попытался создать черный 3840x2160 png. файл и создать 11-секундное слайд-шоу. Ничего лучше не получилось. Я пробовал одно изображение в течение 11 секунд при 57,74 к / с, я также пробовал циклическое слайд-шоу этого одного изображения с циклом на каждом кадре со скоростью 57,74 к / с. Я должен отметить, что во время слайд-шоу или цветового генератора размер файла за 11 секунд черного достигает примерно 160 КБ. На мой взгляд, странно мало, но я использовал хороший алгоритм сжатия.
Вместо этого я попытался сделать это в Da Vinci Resolve 16.1, и видео не воспроизводилось. Я также не смог найти способ сохранить ту же необычную частоту кадров 57,74 с бесплатной версией, так что это было нежелательно в любом случае. Я попытался повторно обработать, используя Ручной тормоз, но это бросило ошибку. Вывод обработанного видеофайла с ручным тормозом также застревает в последнем кадре видео, вместо того, чтобы переходить в черный цвет.