[Bug 697463] rtpsbcdebay: incorrect frame length calculation for dual channel.

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Sun Apr 7 04:51:27 PDT 2013


https://bugzilla.gnome.org/show_bug.cgi?id=697463
  GStreamer | gst-plugins-good | unspecified

Tim-Philipp Müller <t.i.m> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |t.i.m at zen.co.uk

--- Comment #2 from Tim-Philipp Müller <t.i.m at zen.co.uk> 2013-04-07 11:51:23 UTC ---
I *think* I based the calculations in sbcparse and dec on the A2DP spec v10
("Release Date: 22 May 2003, BLUETOOTH SPECIFICATION, Advanced Audio
Distribution Profile"):

> 12.9 Calculation of Bit Rate and Frame Length
>
> Bit Rate (bit_rate) is calculated using the following equation:
> bit_rate = 8 * frame_length* fs / nrof_subbands / nrof_blocks,
> where fs, nrof_subbands and nrof_blocks denote sampling
> frequency, number of subbands and number of blocks,
> respectively. Bit Rate is expressed in kb/s, because
> fs is expressed in kHz. The Frame Length (frame_length)
> is expressed in bytes as
>
>  frame_length = 4 + (4 * nrof_subbands * nrof_channels ) / 8
>       + [ nrof_blocks * nrof_channels * bitpool / 8 ].
>
> for the MONO and DUAL_CHANNEL channel modes, and
>
> frame_length = 4 + (4 * nrof_subbands * nrof_channels ) / 8
>        + [(join * nrof_subbands + nrof_blocks * bitpool ) / 8]
>
> for the STEREO and JOINT_ STEREO channel modes.
>
> Here, nrof_channels and bitpool denote number of channels
> and bitpool value, respectively. When joint stereo is used,
> join = 1, otherwise 0. For reference, see Section 12.5.


This just errors out for me with 'short packet' (bug elsewhere I guess):

  $GST_DEBUG=*rtp*:9 gst-launch-1.0 filesrc location=697463.gdp ! gdpdepay !
rtpsbcdepay ! sbcdec ! pulsesink -v

-- 
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