Ich habe versucht, ein Problem zu beheben, bei dem meine MP3-Datei nicht auf YouTube hochgeladen werden konnte (mit dem Fehler "Upload fehlgeschlagen: Datei kann nicht verarbeitet werden"). Das Video wird normal im VLC-Player wiedergegeben und kann in Vegas Pro geladen werden (durch erneutes Rendern wird das Upload-Problem behoben). Das Überprüfen von Metadaten mit MediaInfo zeigt im Vergleich zu anderen mp4-Dateien aus derselben Quelle nichts Ungewöhnliches (und hat beim Hochladen auf YouTube gut funktioniert). Nachdem ich mit verschiedenen Werkzeugen gegraben hatte, fand ich ein Problem, als ich den Anweisungen im Superuser folgte, um die ursprüngliche mp4-Datei mit ffmpeg zu transcodieren. Da dies das einzige Problem ist, das ich mit der originalen mp4-Datei feststellen kann, kann es sein, dass das Hochladen fehlschlägt. Jetzt möchte ich es reparieren.
Befehl, den ich verwendet habe, ist ffmpeg -i scripts/1.mp4 -pix_fmt yuv420p -crf 18 scripts/good.mp4
Die Ausgabe ist
ffmpeg -i scripts/1.mp4 -pix_fmt yuv420p -crf 18 scripts/good.mp4
ffmpeg version N-83577-g7e538c9 Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04.3)
configuration: --prefix=/home/________/ffmpeg_build --pkg-config-flags=--static --extra-cflags=-I/home/tianyig/ffmpeg_build/include --extra-ldflags=-L/home/tianyig/ffmpeg_build/lib --bindir=/home/tianyig/bin --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree
libavutil 55. 47.100 / 55. 47.100
libavcodec 57. 80.101 / 57. 80.101
libavformat 57. 66.102 / 57. 66.102
libavdevice 57. 2.100 / 57. 2.100
libavfilter 6. 73.100 / 6. 73.100
libswscale 4. 3.101 / 4. 3.101
libswresample 2. 4.100 / 2. 4.100
libpostproc 54. 2.100 / 54. 2.100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x25074a0] Could not find codec parameters for stream 0 (Video: h264 (avc1 / 0x31637661), none, 540x960, 950 kb/s): unspecified pixel format
Consider increasing the value for the 'analyzeduration' and 'probesize' options
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'scripts/1.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf56.25.101
copyright : @Baidu.com
Duration: 00:12:15.90, start: 0.089000, bitrate: 1027 kb/s
Stream #0:0(und): Video: h264 (avc1 / 0x31637661), none, 540x960, 950 kb/s, 22.58 fps, 25 tbr, 16k tbn, 32k tbc (default)
Metadata:
handler_name : VideoHandler
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 77 kb/s (default)
Metadata:
handler_name : SoundHandler
[buffer @ 0x250e200] Unable to parse option value "-1" as pixel format
Last message repeated 1 times
[buffer @ 0x250e200] Error setting option pix_fmt to value -1.
[graph 0 input from stream 0:0 @ 0x262a4e0] Error applying options to the filter.
Error opening filters!
Es beschwert sich über pix_fmt mit dem Wert -1, aber offensichtlich habe ich bereits einen -pix_fmt yuv420p
als Teil des Befehls, der anscheinend nicht beachtet wird.
Irgendeine Idee, wie man es repariert?
quelle
-probesize 100M -analyzeduration 100M
vor-i scripts/1.mp4