2016-07-11 9 views
1

Ich verwende FFMPEG zu konvertieren und watermar VideosFFMPEG MOV to MP4 Fehler {kann nicht Header für Ausgabedatei # 0 schreiben (falschen Codec-Parameter?): Invalid argument}

ffmpeg -i "MVI_9692.MOV" -i 360.png -acodec copy -threads 12 -filter_complex "scale=-2:360,overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2" "MVI_9692.MOV_360.mp4" 

dieser Befehl isworking OK mit mit diffrent Videos im Format aber bekam ich diese Fehlermeldung für eine der MOV-Videos

Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument 

und dies sind die Warnungen ich vor der Fehlermeldung bekam

[swscaler @ 0x47adf20] deprecated pixel format used, make sure you did set range correctly 

[mp4 @ 0x4729540] Codec for stream 1 does not use global headers but container format requires global headers 
[mp4 @ 0x4729540] Could not find tag for codec pcm_s16le in stream #1, codec not currently supported in container 

Antwort

3

FFmpeg mux PCM-Audio nicht in MP4-Dateien, so müssen Sie mit einem unterstützten Codec wie AAC, MP3, AC3 .. etc konvertieren.

Für AAC-Codierung verwenden -c:a aac

z.B.

ffmpeg -i "MVI_9692.MOV" -i 360.png -threads 12 -c:a aac 
     -filter_complex "scale=-2:360,overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2" 
     "MVI_9692.MOV_360.mp4" 
+0

dank es mit wenig Veränderung ffmpeg -i "MVI_9692.MOV" -i 360.png -threads 12 -c arbeitet: a libvo_aacenc -filter_complex „scale = -2: 360, Overlay = (main_w -overlay_w)/2: (main_h-overlay_h)/2 " " MVI_9692.MOV_360.mp4 " –

+1

Sie haben eine alte Version von FFmpeg. Der libvo-Encoder wurde entfernt, da der native nun besser ist. Upgrade, und Sie können meinen ursprünglichen Befehl verwenden. – Mulvya