Seeking is broken with media-hub on versions 0.10.24 and above

Bug #1358368 reported by Jim Hodapp
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
gst-fluendo-mp3 (Ubuntu)
Fix Released
High
Unassigned

Bug Description

Starting in version 0.10.24, the change to line 1656 of mp3-c.c causes seeking to break when used with media-hub (most likely a timing issue):

  diff = tl->c_impl.main_data_end - III_side_info.main_data_begin;
  if (diff < 0) {
    /* Usually happens after a seek. We can't decode this frame */
    GST_LOG ("Not enough main data available to decode frame");
    return MP3TL_ERR_BAD_FRAME;
  }

Previously in version 0.10.23 and prior, this block inside the if statement was never executed:

  if (tl->c_impl.main_data_end - III_side_info.main_data_begin < 0) {
    /* Usually happens after a seek. We can't decode this frame */
    GST_LOG ("Not enough main data available to decode frame");
    return MP3TL_ERR_BAD_FRAME;
  }

This needs reworking so that when this does happen after a seek, this code recovers gracefully instead of causing a pipeline flow error resulting in an EOS.

Changed in gst-fluendo-mp3 (Ubuntu):
status: New → Confirmed
importance: Undecided → High
Revision history for this message
dolphy (julien-fluendo) wrote :

A simple fix would be :

--- /tmp/meld-tmp15YRFE
+++ /home/dolphy/oneplay-build/sources-devel/linux_x86_64/gst-fluendo-mp3-19/src/mp3-c.c
@@ -1659,7 +1659,7 @@
   if (diff < 0) {
     /* Usually happens after a seek. We can't decode this frame */
     GST_LOG ("Not enough main data available to decode frame");
- return MP3TL_ERR_BAD_FRAME;
+ return MP3TL_ERR_NEED_DATA;
   }

   /* Copy the remaining main data in the bit reservoir to the start of the

This does not happen with the IPP version available on Fluendo's web store which is also the binary build we provide to Canonical with the MP3 patent license. Any version that you compile yourself without IPP is not legally shipable under Fluendo's patent umbrella. (Might be worth checking on your side).

Best regards,

Revision history for this message
Jim Hodapp (jhodapp) wrote :

Thanks, will give this a try and report back here on my results.

Revision history for this message
Artur Rona (ari-tczew) wrote :

This bug was fixed in the package gst-fluendo-mp3 - 0.10.32.debian-1

---------------
gst-fluendo-mp3 (0.10.32.debian-1) unstable; urgency=medium

  * [f7df946] Imported Upstream version 0.10.32.debian
  * [5dc5a74] Drop GStreamer 0.10 package - 0.10 is deprecated and slated for
    removal (Closes: #785905)

 -- Iain Lane <email address hidden> Wed, 16 Sep 2015 15:14:05 +0100

Changed in gst-fluendo-mp3 (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.