[Bug 765797] New: gstavauddec: a/v sync issues with broken streams

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Fri Apr 29 08:12:25 UTC 2016


https://bugzilla.gnome.org/show_bug.cgi?id=765797

            Bug ID: 765797
           Summary: gstavauddec: a/v sync issues with broken streams
    Classification: Platform
           Product: GStreamer
           Version: git master
                OS: All
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gst-libav
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: matej.knopp at gmail.com
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

Every time frame decoding fails, the audio data gets skipped, but audio frame
is kept in gstaudiodecoder queue, which results in timestamps being shifted
backwards.

I think this condition inside gst_ffmpegauddec_handle_frame is not right

if (ffmpegdec->outbuf)
    ret =
        gst_audio_decoder_finish_frame (GST_AUDIO_DECODER (ffmpegdec),
        ffmpegdec->outbuf, 1);

It only finishes frame if decoding succeeds. I think it should finish the frame
regardless of whether decoding failed or not; Because otherwise when next frame
comes (and decodes correctly), it's timestamps are taken from previous (failed
frame), which results in A/V sync issues.

Sample video

http://s3.amazonaws.com/MatejK/Samples/HD-OP01-av-sync-with-failed-decoding-of-initial-frames.mkv

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list