Я пытаюсь объединить несколько видео mp4 вместе в папке. Однако, когда я запускаю следующий скрипт, иногда на выходе появляется только 1 видео. Например, если у меня есть video1, video2, video3 и video4, на выходе будет отображаться только video1. Примечание: я конвертирую некоторые из этих видео из mp3 в mp4, прежде чем объединить их с другими видео mp4.

#!/bin/bash
# Merge Script

 ffmpeg -f concat -i <(for f in ./*.mp4; do echo "file '$PWD/$f'"; done)  -c copy output.mp4

1 ответ1

2

Ваша команда делает именно то, что вы хотите.

Проверьте, что на выходе

for f in ./*.mp4; do echo "file '$PWD/$f'"; done

печать.

Если файлы перечислены в ожидаемом порядке, возможно, у вас возникла проблема со специальными символами в пути.

В крайнем случае вы можете запустить команду ffmpeg с режимом паники -loglevel, но будьте осторожны, она возвращает LOT

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .