[Bug 727975] [adpcmdec] WAV IMA ADPCM files don't get decoded correctly
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Mon Apr 14 22:58:23 PDT 2014
https://bugzilla.gnome.org/show_bug.cgi?id=727975
GStreamer | gst-plugins-bad | 1.2.1
Harish Jenny K N <harishjennykn> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |harishjennykn at yahoo.com
--- Comment #1 from Harish Jenny K N <harishjennykn at yahoo.com> 2014-04-15 05:58:21 UTC ---
Initially Bitrate is calculated correctly as 4055 and then it gets changed to
8126 in the following location -
riff-media.c ( gst_riff_create_audio_caps function )
case GST_RIFF_WAVE_FORMAT_DVI_ADPCM:
/* Many encoding tools create a wrong bitrate information in the
* header, so either we calculate the bitrate or mark it as invalid
* as this would probably confuse timing */
strf->av_bps = 0;
if (strf->channels != 0 && strf->rate != 0 && strf->blockalign != 0) {
int spb = ((strf->blockalign - strf->channels * 4) / 2) * 2;
strf->av_bps =
gst_util_uint64_scale_int (strf->rate, strf->blockalign, spb);
GST_DEBUG ("fixing av_bps to calculated value %d of IMA DVI ADPCM",
strf->av_bps);
}
}
In this case , the channel is 1 , rate is 8000 and blockalign is 256
spb becomes 252
av_bps becomes 8126
The timestamp is calculated based on BPS.
Example gst debug log-
0:00:00.041163544 1480 0x848a230 INFO wavparse
gstwavparse.c:695:gst_wavparse_calculate_duration:<wavparse0> Got duration
(bps) 0:00:05.009106572
Hence the behaviour!
--
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