diff options
author | Sebastian Dröge <slomo@circular-chaos.org> | 2007-03-30 04:50:11 +0000 |
---|---|---|
committer | Sebastian Dröge <slomo@circular-chaos.org> | 2007-03-30 04:50:11 +0000 |
commit | 14c0bebf4b587eb747649987eb09aeab3e31dbe8 (patch) | |
tree | c8fe4ecce8fe614311480da285ad86d1690f4d23 /tests/check/elements/wavpackparse.c | |
parent | 365437cbc0a210a71756528331c5b3b6fd667813 (diff) | |
download | gst-plugins-bad-14c0bebf4b587eb747649987eb09aeab3e31dbe8.tar.gz gst-plugins-bad-14c0bebf4b587eb747649987eb09aeab3e31dbe8.tar.bz2 gst-plugins-bad-14c0bebf4b587eb747649987eb09aeab3e31dbe8.zip |
ext/wavpack/: Don't play audioconvert. As wavpack wants/outputs all samples with width==32 and depth=[1,32] accept th...
Original commit message from CVS:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_reset),
(gst_wavpack_dec_init), (gst_wavpack_dec_sink_set_caps),
(gst_wavpack_dec_clip_outgoing_buffer),
(gst_wavpack_dec_post_tags), (gst_wavpack_dec_chain):
* ext/wavpack/gstwavpackdec.h:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_reset),
(gst_wavpack_enc_sink_set_caps), (gst_wavpack_enc_set_wp_config),
(gst_wavpack_enc_chain):
* ext/wavpack/gstwavpackenc.h:
* ext/wavpack/gstwavpackparse.c:
Don't play audioconvert. As wavpack wants/outputs all samples with
width==32 and depth=[1,32] accept this and let audioconvert convert
to accepted formats instead of doing it in the element for n*8 depths.
This also adds support for non-n*8 depths and prevents some useless
memory allocations. Fixes #421598
Also add a workaround for bug #421542 in wavpackenc for now...
* tests/check/elements/wavpackdec.c: (GST_START_TEST):
* tests/check/elements/wavpackenc.c: (GST_START_TEST):
* tests/check/elements/wavpackparse.c: (GST_START_TEST):
Consider the change above in the unit tests and test if the correct
caps are accepted and set. Also check for GST_BUFFER_OFFSET_END in
the wavpackparse unit test.
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_init),
(gst_wavpack_dec_sink_set_caps):
Set caps on the src pad as soon as possible.
* ext/wavpack/gstwavpackdec.h:
* ext/wavpack/gstwavpackcommon.h:
* ext/wavpack/gstwavpackenc.h:
* ext/wavpack/gstwavpackparse.h:
Fix indention. gst-indent is now called by cicl.
Diffstat (limited to 'tests/check/elements/wavpackparse.c')
-rw-r--r-- | tests/check/elements/wavpackparse.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/tests/check/elements/wavpackparse.c b/tests/check/elements/wavpackparse.c index 80cef399..7a3b8cc1 100644 --- a/tests/check/elements/wavpackparse.c +++ b/tests/check/elements/wavpackparse.c @@ -59,7 +59,11 @@ guint8 test_file[] = { static GstStaticPadTemplate sinktemplate = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS_ANY); + GST_STATIC_CAPS ("audio/x-wavpack, " + "width = (int) 16, " + "channels = (int) 1, " + "rate = (int) 44100, " "framed = (boolean) TRUE")); + static GstStaticPadTemplate srctemplate = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, @@ -175,11 +179,13 @@ GST_START_TEST (test_parsing_valid_frames) case 0:{ fail_unless_equals_int (GST_BUFFER_TIMESTAMP (outbuffer), 0); fail_unless_equals_int (GST_BUFFER_OFFSET (outbuffer), 0); + fail_unless_equals_int (GST_BUFFER_OFFSET_END (outbuffer), 25600); break; } case 1:{ fail_unless_equals_int (GST_BUFFER_TIMESTAMP (outbuffer), 580498866); fail_unless_equals_int (GST_BUFFER_OFFSET (outbuffer), 25600); + fail_unless_equals_int (GST_BUFFER_OFFSET_END (outbuffer), 51200); break; } } |