• Hi,

    um die Aufgezeichneten HQ Filme von OnlineTvRecorder über meine Twonky Server auf meinem Sony TV sehen zu können, muss ich den Audiostream von mp3 in ac3 wandeln und das ganze in einen MGEGTS Container packen. Der h264 Videostream kann unverändert beibehalten werden. Wie ich das ganze mit ffmpeg bewerkstelligen kann, ist eigentlich klar.

    ffmpeg -i input.avi -vcodec copy -acodec ac3 -ac 2 -ab 192k -f mpegts -y output.ts

    Leider ruckelt das Videobild von output.ts. Weiß jemand wieso, und wie das in den Griff bekomme?

    Mediainfo Input.avi z.B.

    General
    Complete name : C:\Users\Klaus\Programmsammlung\OTR\CutOriginale\Warehouse_13_13.05.04_21-55_rtl2_55_TVOON_DE.mpg.HQ.avi
    Format : AVI
    Format/Info : Audio Video Interleave
    File size : 527 MiB
    Duration : 1h 10mn
    Overall bit rate : 1 041 Kbps
    Writing application : Lavf54.17.100

    Video
    ID : 0
    Format : AVC
    Format/Info : Advanced Video Codec
    Format profile : High@L3.0
    Format settings, CABAC : Yes
    Format settings, ReFrames : 4 frames
    Codec ID : H264
    Duration : 1h 10mn
    Bit rate : 836 Kbps
    Width : 720 pixels
    Height : 576 pixels
    Display aspect ratio : 16:9
    Frame rate : 25.000 fps
    Standard : PAL
    Color space : YUV
    Chroma subsampling : 4:2:0
    Bit depth : 8 bits
    Scan type : Progressive
    Bits/(Pixel*Frame) : 0.081
    Stream size : 423 MiB (80%)
    Writing library : x264 core 125 r2200 999b753
    Encoding settings : cabac=1 / ref=3 / deblock=1:-1:-1 / analyse=0x3:0x113 / me=hex / subme=7 / psy=1 / fade_compensate=0.10 / psy_rd=1.00:0.15 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-3 / threads=6 / lookahead_threads=1 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=2 / b_bias=0 / direct=3 / weightb=1 / open_gop=0 / weightp=0 / keyint=250 / keyint_min=25 / scenecut=40 / intra_refresh=0 / rc_lookahead=60 / rc=crf / mbtree=1 / crf=23.0000 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / ip_ratio=1.40 / aq=2:1.00
    Color primaries : BT.601 PAL
    Transfer characteristics : BT.470 System B, BT.470 System G
    Matrix coefficients : BT.601

    Audio
    ID : 1
    Format : MPEG Audio
    Format version : Version 1
    Format profile : Layer 3
    Mode : Joint stereo
    Mode extension : MS Stereo
    Codec ID : 55
    Codec ID/Hint : MP3
    Duration : 1h 10mn
    Bit rate mode : Constant
    Bit rate : 192 Kbps
    Channel(s) : 2 channels
    Sampling rate : 48.0 KHz
    Compression mode : Lossy
    Stream size : 97.2 MiB (18%)
    Alignment : Aligned on interleaves
    Interleave, duration : 24 ms (0.60 video frame)

    Mediainfo output.ts z.B.
    General
    ID : 1 (0x1)
    Complete name : C:\Users\Klaus\Programmsammlung\OTR\Cut\test1.ts
    Format : MPEG-TS
    File size : 57.7 MiB
    Duration : 6mn 9s
    Overall bit rate mode : Variable
    Overall bit rate : 1 309 Kbps

    Video
    ID : 256 (0x100)
    Menu ID : 1 (0x1)
    Format : AVC
    Format/Info : Advanced Video Codec
    Format profile : High@L3.0
    Format settings, CABAC : Yes
    Format settings, ReFrames : 4 frames
    Codec ID : 27
    Duration : 6mn 9s
    Bit rate : 1 050 Kbps
    Width : 720 pixels
    Height : 576 pixels
    Display aspect ratio : 16:9
    Frame rate : 25.000 fps
    Standard : PAL
    Color space : YUV
    Chroma subsampling : 4:2:0
    Bit depth : 8 bits
    Scan type : Progressive
    Bits/(Pixel*Frame) : 0.101
    Stream size : 46.2 MiB (80%)
    Color primaries : BT.601 PAL
    Transfer characteristics : BT.470 System B, BT.470 System G
    Matrix coefficients : BT.601

    Audio
    ID : 257 (0x101)
    Menu ID : 1 (0x1)
    Format : AC-3
    Format/Info : Audio Coding 3
    Mode extension : CM (complete main)
    Format settings, Endianness : Big
    Codec ID : 129
    Duration : 6mn 11s
    Bit rate mode : Constant
    Bit rate : 192 Kbps
    Channel(s) : 2 channels
    Channel positions : Front: L R
    Sampling rate : 48.0 KHz
    Bit depth : 16 bits
    Compression mode : Lossy
    Delay relative to video : -2s 525ms
    Stream size : 8.51 MiB (15%)

    Menu
    ID : 4096 (0x1000)
    Menu ID : 1 (0x1)
    Duration : 6mn 9s
    List : 256 (0x100) (AVC) / 257 (0x101) (AC-3)
    Service name : Service01
    Service provider : FFmpeg
    Service type : digital television

  • Zitat

    Leider ruckelt das Videobild von output.ts. Weiß jemand wieso, und wie das in den Griff bekomme?


    Falls der Playback schon am PC ruckelt, wäre meine erste Vermutung, dass das avi vfr verwendet.
    Sollte man mit einer detaillierten MediaInfoanalyse eventuell sehen können,...

  • Falls der Playback schon am PC ruckelt, wäre meine erste Vermutung, dass das avi vfr verwendet.
    Sollte man mit einer detaillierten MediaInfoanalyse eventuell sehen können,...

    OTR hatte zwischendurch mal VFR verwendet. Mittlerweile wurde dies aber wieder umgestellt und kann somit nicht die Ursache sein.

    Frame rate : 25.000 fps

    VFR kann man mit einer gepatchten FFMPEG Version mittels der Option -vbsf h264_changesps=cfr/fps=25:1 relativ einfach in den Griff bekommen.

  • Wandel das avi erstmal mit mkvmerge nach mkv und dann - wie oben - mit ffmpeg weiter.

    Man kann am Ende auch einfach den txmuxer drüber laufen lassen und schon läuft das Video wieder flüssig, ist ja aber nicht Sinn der Sache. Meint Ihr es handelt sich um einen Bug bei ffmpeg, den man mal melden müsste?

  • Dass ffmpeg ein Format nicht völlig korrekt ausgibt, ist durchaus wahrscheinlich. Allerdings ist es auch aufgrund seiner Arbeitsweise nicht immer dazu in der Lage. Die Programme ffmpeg und mencoder verarbeiten Mediendateien normalerweise wie ein Filter, das heißt, sie lesen unter Umständen die Quelldatei nur einmal sequenziell von vorn bis hinten, und schreiben die Zieldatei auch nur einmal sequenziell von vorn bis hinten, damit auch die Ein- und Ausgabe per STDIN / STDOUT unterstützt werden kann. Dabei sind sie dann aber evtl. nicht in der Lage, Headerdaten am Anfang der Datei mit Werten zu aktualisieren, die erst am Ende der Konvertierung bekannt sind. So etwas trifft auf Transport-Streams zwar eigentlich nicht direkt zu; aber wer weiß, was da sonst noch nicht ganz so gründlich beachtet wird.

  • Zitat

    OTR hatte zwischendurch mal VFR verwendet. Mittlerweile wurde dies aber wieder umgestellt und kann somit nicht die Ursache sein.


    Gut zu wissen. Danke für die Info! :)

    Zitat

    Meint Ihr es handelt sich um einen Bug bei ffmpeg, den man mal melden müsste?


    Klar, sonst wird er vermutlich nie gefixed.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!