OriginalGriff
H264 - это формат видеопотока-он вообще не содержит никаких данных аудиопотока.
MP4 - это пакет, который может содержать как аудио, так и видеопоток(ы), но он не может "изобрести" аудиопоток из видеоданных!
Начните с исходного файла фильма: он, вероятно, содержит как видео, так и аудио потоки, и вам нужно будет извлечь / конвертировать оба, чтобы построить "рабочий" файл MP4.
Проверьте свой оригинал с помощью VLC: "Tools...Codec Information" покажет вам, какие потоки присутствуют в исходном файле. FFMPEG может извлекать как видео, так и аудио потоки в отдельные файлы, а затем объединять их обратно.
Извлечение аудиопотока:
ffmpeg -i GoodAudioInput.mp4 -c:a copy -vn -sn audio.m4a
Получить видеопоток:
ffmpeg -i GoodVideoInput.mp4 -c:v copy -sn -an video.mp4
Объедините эти два понятия:
ffmpeg -i video.mp4 -i audio.m4a -c:v copy -c:a aac -strict experimental merged.mp4
Для повторной синхронизации звука:
ffmpeg -i video.mp4 -itsoffset 3.0 -i audio.m4a -c:v copy -c:a aac -strict experimental merged.mp4
(Сделает звук через 3,0 секунды)