Я намагаюся створити вигляд зображення у відеозображенні за допомогою декількох відеофайлів.
Я створив файл .mp4, використовуючи FFMpeg. Відео відображається правильно в програмі Windows "Фільми та телебачення". Він не відображається правильно в Chrome, Firefox, VLC Media Player або в будь-якому іншому додатку, який я маю. Я планую відобразити відео в браузері, тому для мене важлива підтримка перехресного веб-переглядача.
Відео було створено за допомогою двох частин відеодзвінка та виконання FFMpeg наступного:
- Покладіть віддалене відео (remote.mp4) у фоновому режимі.
- Віддалене відео повинне показувати перше зображення відео та виглядатиме призупинено до приблизно 2,501 секунди. Я зробив це, використовуючи itoffset.
- Віддалений аудіо також повинен починатися відтворення через 2,501 секунди. Встановлення itoffset, здається, не досягає цього, тому я додав параметр "adelay" до filter_complex.
- Місцеве відео (local.mp4) у вигляді накладання у нижньому правому куті.
- Локальне відео та аудіопочинаються з 0 секунд (відразу після відтворення відео).
- Повертав фонове зображення на 90 градусів (він був записаний боком).
- Додайте затримку звуку до віддаленого відео, щоб почати відтворення аудіопотоку 2,501 секунди після початку.
- Об'єднайте аудіовходи.
- Використовується кодек aac (тому що він здається популярним, я повністю готовий перейти, якщо це буде корисно.)
- Використовуйте відеокодек h264, знову ж таки, тому що він здається популярним.
Моя команда FFMpeg така:
ffmpeg -itsoffset 2.501 -i remote.mp4 -i local.mp4 \
-filter_complex \
" [1:v]scale=iw/4:-1:flags=lanczos[loc0]; \
[0:v]transpose=1[rotate1]; \
[rotate1][loc0]overlay=main_w-overlay_w-10:main_h-overlay_h-10:eof_action=pass[rem0]; \
[0:a]adelay=2501|2501[0adelay]; \
[0adelay]apad[0a]; \
[0a][1:a]amerge=inputs=2[a]" \
-map "[rem0]" -map "[a]" \
-ac 2 -vcodec libx264 \
-ar 44100 -acodec aac \
completed.mp4
Властивості відео:
- complete.mp4 (16 секунд, 480x640)
- local.mp4 (16 секунд, 640x480)
- remote.mp4 (14 секунд, 640x480, повернуто боком)
Коли я дивлюся на завершене відео в браузері, а не на 16 секунд, це говорить про 18 секунд. Коли я використовую ffprobe на завершеному відео, він каже: Тривалість: 00: 00: 16.68. Локальні аудіо та відео також чекають 2,501 секунди для відтворення в браузері.
Будь-яка допомога буде чудовою. Я не маю уявлення, чому браузер робить його іншим, ніж я маю намір. Дякую!
n
має бутиN