[Bug 721676] New: typefind does not find the correct media type for mpg with http streaming

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Mon Jan 6 19:53:28 PST 2014


https://bugzilla.gnome.org/show_bug.cgi?id=721676
  GStreamer | gstreamer (core) | 0.10.36

           Summary: typefind does not find the correct media type for mpg
                    with http streaming
    Classification: Platform
           Product: GStreamer
           Version: 0.10.36
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gstreamer (core)
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: satishnitk2000 at gmail.com
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


Created an attachment (id=265502)
 View: https://bugzilla.gnome.org/attachment.cgi?id=265502
 Review: https://bugzilla.gnome.org/review?bug=721676&attachment=265502

The patch analyzes the data to find the max probabiltity till the max data size
is reached. 

Sometimes for some mpg streams in http streaming case, only audio is decoded.
Video is not displayed. streams has both audio/video content. 

Analysis:
The issue is coming from typefind element. In this, minimum data size required
for parsing is  set to 2048 bytes and max as  128*1024.

Failing case: in this case, httpsrc (soup) source gives 2625 bytes to typefind
as first buffer. This buffer is used for parsing to find the suitable data type
for further auto plugging. For this size, five consecutive frames of mp3 are
found. So typefind declares it as mpeg/audio with probability 99. This is
maximum for current case. Hence only audio pipeline is created  and so no video
at all.

Passing case: when this passes ( showing video/audio both) then httpsrc(soup)
gives 1165 bytes which are less than min size( 2048) so they are stored and
soup again gives 4096 bytes which makes a total of 5261 bytes to typefind. With
this data length video/mpeg-sys with probability 100  is declared as typefind
output. This causes further auto plugging of demuxer and audio/video decoding
path. Hence working fine.

These figures are based on some logs and may vary for different run case, but
the issue should remain same. Main issue is that when some format is found then
it does not check for case where some other format might be found with more
probability if some more data is used for parsing.

Also proposed a patch to fix the issue.

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- 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