summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjep <jep@2b0047a9-a6d8-0310-accf-f7200b2a168c>2013-08-24 13:34:44 +0000
committerjep <jep@2b0047a9-a6d8-0310-accf-f7200b2a168c>2013-08-24 13:34:44 +0000
commit355b6a0e264ff954eb1ec6934cf865a1fdcb675f (patch)
tree612351ea5565431816e715dff9afbc8c4cf76cae
parent8e94be9aa121e55febe4fb52d175dc18ee070d9d (diff)
* src/mp3-c.c: (III_huffman_decode), (III_dequantize_sample),
(c_decode_mp3): * src/mp3-ipp.c: (ipp_decode_mp3): Add some debugging code. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2492 2b0047a9-a6d8-0310-accf-f7200b2a168c
-rw-r--r--ChangeLog7
-rw-r--r--src/mp3-c.c34
-rw-r--r--src/mp3-ipp.c30
3 files changed, 69 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index df46951..278d46e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2013-08-24 Josep Torra <josep@fluendo.com>
+
+ * src/mp3-c.c: (III_huffman_decode), (III_dequantize_sample),
+ (c_decode_mp3):
+ * src/mp3-ipp.c: (ipp_decode_mp3):
+ Add some debugging code.
+
2013-08-01 Josep Torra <josep@fluendo.com>
* src/mp3tl-priv.h:
diff --git a/src/mp3-c.c b/src/mp3-c.c
index 07b5d7b..290ccd6 100644
--- a/src/mp3-c.c
+++ b/src/mp3-c.c
@@ -613,6 +613,21 @@ III_huffman_decode (gint is[SBLIMIT][SSLIMIT], III_side_info_t * si,
for (; i < SSLIMIT * SBLIMIT; i++)
is[i / SSLIMIT][i % SSLIMIT] = 0;
+#ifdef HUFFMAN_DEBUG
+ {
+ static gint frame_num = 0;
+ gint j;
+ if (ch == 0 && gr == 0) frame_num++;
+ fprintf (stderr, "\nFrame %d, granule %d, channel %d\n", frame_num, gr, ch);
+ for (i = 0 ; i < 32; i++) {
+ for (j = 0; j < 18; j++) {
+ fprintf (stderr, "%4d ", is[i][j]);
+ }
+ fprintf (stderr, "\n");
+ }
+ }
+#endif
+
return TRUE;
}
@@ -624,7 +639,7 @@ void
III_dequantize_sample (gint is[SBLIMIT][SSLIMIT],
gfloat xr[SBLIMIT][SSLIMIT],
III_scalefac_t * scalefac,
- gr_info_t * gr_info, gint ch, frame_params * fr_ps)
+ gr_info_t * gr_info, gint ch, gint gr, frame_params * fr_ps)
{
int ss, sb, cb = 0, sfreq;
@@ -723,6 +738,21 @@ III_dequantize_sample (gint is[SBLIMIT][SSLIMIT],
}
}
}
+
+#ifdef DEQUANT_DEBUG
+ {
+ static gint frame_num = 0;
+ gint i, j;
+ if (ch == 0 && gr == 0) frame_num++;
+ fprintf (stderr, "\nFrame %d, granule %d, channel %d\n", frame_num, gr, ch);
+ for (i = 0 ; i < 32; i++) {
+ for (j = 0; j < 18; j++) {
+ fprintf (stderr, "%f ", xr[i][j]);
+ }
+ fprintf (stderr, "\n");
+ }
+ }
+#endif
}
void
@@ -1716,7 +1746,7 @@ c_decode_mp3 (mp3tl * tl)
}
III_dequantize_sample (is, ro[ch], &III_scalefac,
- &(III_side_info.gr[gr][ch]), ch, &tl->fr_ps);
+ &(III_side_info.gr[gr][ch]), ch, gr, &tl->fr_ps);
#if 0
int i;
diff --git a/src/mp3-ipp.c b/src/mp3-ipp.c
index 233e4da..b6121d7 100644
--- a/src/mp3-ipp.c
+++ b/src/mp3-ipp.c
@@ -219,6 +219,21 @@ ipp_decode_mp3 (mp3tl * tl)
}
} /* end of the channel loop, part A */
+#ifdef HUFFMAN_DEBUG
+ for (ch = 0; ch < channels; ch++) {
+ static gint frame_num = 0;
+ gint i, j;
+ if (ch == 0 && gr == 0) frame_num++;
+ fprintf (stderr, "\nFrame %d, granule %d, channel %d\n", frame_num, gr, ch);
+ for (i = 0 ; i < 32; i++) {
+ for (j = 0; j < 18; j++) {
+ fprintf (stderr, "%4d ", IsXr[(ch * IPP_MP3_GRANULE_LEN) + (i * 32) + j]);
+ }
+ fprintf (stderr, "\n");
+ }
+ }
+#endif
+
/* IPP MP3 decoder primitive #5: */
/* Requantize Huffman symbols for all channels of current granule */
if (channels == 2)
@@ -229,6 +244,21 @@ ipp_decode_mp3 (mp3tl * tl)
status = ippsReQuantize_MP3_32s_I (IsXr,
NonZeroBound, ScaleFactor, SideInfoPtr, &frameHdr, RequantBuf);
+#ifdef DEQUANT_DEBUG
+ for (ch = 0; ch < channels; ch++) {
+ static gint frame_num = 0;
+ gint i, j;
+ if (ch == 0 && gr == 0) frame_num++;
+ fprintf (stderr, "\nFrame %d, granule %d, channel %d\n", frame_num, gr, ch);
+ for (i = 0 ; i < 32; i++) {
+ for (j = 0; j < 18; j++) {
+ fprintf (stderr, "%f ", (Ipp32f) IsXr[(ch * IPP_MP3_GRANULE_LEN) + (i * 32) + j] / 0x3FFFFFF);
+ }
+ fprintf (stderr, "\n");
+ }
+ }
+#endif
+
if (ippStsNoErr != status) {
GST_DEBUG ("ippsReQuantize_MP3_32s_I() failed: %d [%s]\n",
status, ippGetStatusString (status));