Wenn ich versuche, mkv mit ffmpeg in mp4 zu konvertieren, tritt der folgende Fehler auf:
version 0.8.3-4:0.8.3-0ubuntu0.12.04.1, Copyright (c) 2000-2012 the Libav developers built on Jun 12 2012 16:52:09 with gcc 4.6.3
*** THIS PROGRAM IS DEPRECATED *** This program is only provided for compatibility and will be removed in a future release. Please use
avconv instead. [matroska,webm @ 0x1e939c0] max_analyze_duration
reached [matroska,webm @ 0x1e939c0] Estimating duration from
bitrate, this may be inaccurate Input #0, matroska,webm, from
'input.mkv': Duration: 00:01:00.76, start: 0.000000, bitrate: 384
kb/s
Stream #0.0(eng): Video: h264 (High), yuv420p, 1280x544, PAR 1:1 DAR 40:17, 25 fps, 25 tbr, 1k tbn, 50 tbc (default)
Stream #0.1(eng): Audio: ac3, 48000 Hz, 5.1, s16, 384 kb/s (default)
Stream #0.2(eng): Subtitle: [0][0][0][0] / 0x0000 Output #0, ipod, to 'output.m4v': Metadata:
encoder : Lavf53.21.0
Stream #0.0(eng): Video: libx264, yuv420p, 1280x544 [PAR 1:1 DAR 40:17], q=2-31, 25 tbn, 25 tbc (default)
Stream #0.1(eng): Audio: ac3, 48000 Hz, 5.1, 384 kb/s (default) Stream mapping: Stream #0.0 -> #0.0 Stream #0.1 -> #0.1
Press ctrl-c to stop encoding [ipod @ 0x1e9b740] Application
provided invalid, non monotonically increasing dts to muxer in stream
0: -2 >= -2 av_interleaved_write_frame(): Invalid argument
Ich habe diesen Befehl verwendet, um die Datei zu konvertieren:
ffmpeg -i input.mkv -vcodec copy -acodec copy -absf aac_adtstoasc output.m4v
Die Eingabedatei weist die folgenden Merkmale auf:
mediainfo input.mkv
>General
>
>Unique ID : 200459305952356554213392832683163418790 (0x96CF0ED8DB5914CBB9E18163689280A6)
>Complete name : input.mkv
>Format : Matroska
>Format version : Version 2
>File size : 1.46 GiB
>Duration : 1h 5mn
>Overall bit rate : 3 168 Kbps
>Encoded date : UTC 2010-09-26 21:44:02
>Writing application : mkvmerge v2.9.5 ('Tu es le seul') built on >Jun 17 2009 16:28:30
>Writing library : libebml v0.7.8 + libmatroska v0.8.1
>
>Video
>ID : 1
>Format : AVC
>Format/Info : Advanced Video Codec
>Format profile : [email protected]
>Format settings, CABAC : Yes
>Format settings, ReFrames : 4 frames
>Codec ID : V_MPEG4/ISO/AVC
>Duration : 1h 5mn
>Bit rate : 2 910 Kbps
>Width : 1 280 pixels
>Height : 720 pixels
>Display aspect ratio : 16:9
>Frame rate : 25.000 fps
>Color space : YUV
>Chroma subsampling : 4:2:0
>Bit depth : 8 bits
>Scan type : Progressive
>Bits/(Pixel*Frame) : 0.126
>Stream size : 1.31 GiB (90%)
>Writing library : x264 core 105 r1724 b02df7b
>Encoding settings : cabac=1 / ref=3 / deblock=1:0:0 / analyse=0x3:0x113 / me=hex / subme=6 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=0 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=0 / chroma_qp_offset=-2 / threads=18 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=3 / weightb=1 / open_gop=0 / weightp=0 / keyint=250 / keyint_min=25 / scenecut=40 / intra_refresh=0 / rc=2pass / mbtree=0 / bitrate=2910 / ratetol=1.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / pb_ratio=1.30 / aq=1:1.00
>
>Default : Yes
>Forced : No
>
>Audio
>ID : 2
>Format : AC-3
>Format/Info : Audio Coding 3
>Mode extension : CM (complete main)
>Codec ID : A_AC3
>Duration : 1h 5mn
>Bit rate mode : Constant
>Bit rate : 256 Kbps
>Channel(s) : 2 channels
>Channel positions : Front: L R
>Sampling rate : 48.0 KHz
>Bit depth : 16 bits
>Compression mode : Lossy
Stream size : 121 MiB (8%)
Language : English
Default : Yes
Forced : No
Ich bin mir nicht sicher, was der Fehler bedeutet oder wie man ihn korrigiert, da ffmpeg neu ist.
Vielen Dank!
Antworten:
Wie ich bereits geschrieben habe , schlage ich vor, dass Sie einige Details in Ihrer Befehlszeile ändern:
ffmpeg
füravconv
, wie es die Gabel , die von Ubuntu für ein paar Jahre war (siehe Kommentare)-absf aac_adtstoasc
? Es gab einige Probleme , die im aktuellen ffmpeg von Ubuntu möglicherweise nicht behoben wurden. Ich empfehle Ihnen, es zuerst ohne zu versuchen.-vcodec copy -acodec copy
kann zu-codec copy
oder vereinfacht werden-c copy
. Dies würde auch verhindern, dass andere Streams als Video und Audio, wie z. B. Untertitel, manipuliert werden.Der Gewinner ist also ...
Wenn das nicht funktioniert, posten Sie bitte alle Terminalausgaben.
quelle
avconv
‚s - Version könnte als meine unterschiedlich sein.avconv
wird in Ubuntu nicht mehr gepflegt :-)ffmpeg
? Haben Sie Quellen oder Hinweise zur Änderung?Ich weiß, dass es ein sehr alter Thread ist, aber ich habe eine Lösung gefunden, um ffmpeg erfolgreich auszuführen. Nicht verwenden
-vcodec copy -acodec copy
,ffmpeg -i input.mkv output.m4v
sondern nur verwenden. Es wird gestartet.Aber in meinem Fall konvertiere ich eine .mkv in .mp4, die Ergebnisausgabe ist nur Papierkorb. Es verliert die Bildgenauigkeit.
quelle
copy
Codec nicht verwenden , wird er neu codiert und verliert an Qualität.Um alle Dateien in einem Ordner automatisch von MKV nach MP4 zu konvertieren, können Sie einen Alias erstellen:
Dieser Befehl führt die folgenden Schritte aus:
quelle
Es gibt bereits eine Antwort zu diesem Thema .mkv-Datei verlustfrei in MP4-Datei konvertieren?
Das Grundkonzept ist, dass sowohl der MKV als auch der MP4 Container sind. Es handelt sich lediglich um Container. Sie müssen die Audio- und Videospuren grundsätzlich entpacken und neu packen, wenn Sie zwischen den beiden wechseln möchten.
quelle
Bekam dies auf Xubuntu 14.04, als ich versuchte, eine DVD mit MP4s mit DVDStyler zu brennen; Bombono erzeugt den gleichen Fehler. ffmpeg # 1154 deutet darauf hin, dass dies möglicherweise behoben wurde
ffmpeg
, obwohl dies möglicherweise nicht deravconv
Fall ist. libav # 478 ist immer noch als offen markiert.Siehe auch: /unix/127522/avconv-error-av-interleaved-write-frame
Ich habe Launchpad # 1339980 eingereicht . Verwenden Sie zusammenfassend eine aktuelle Version von
ffmpeg
und nichtavconv
.quelle
Versuchen Sie dieses :: Libav in Linux
Installation: Befehl ausführen
Befehl zur Videokonvertierung :: Gehe zu Ordner enthält das Video und wird im Terminal ausgeführt
quelle