Commit graph

13 commits

Author SHA1 Message Date
Mark Nauwelaerts b863df570f wavpackenc: port to audioencoder
Also adjust unit test to slightly modified behaviour.
2012-02-27 23:45:54 +01:00
Sebastian Dröge 153ae910a0 wavpack: Use GLib GChecksum instead of our own MD5 implementation
This requires GLib 2.16 but that version is already required by core anyway.
2009-08-10 09:54:16 +02:00
Sebastian Dröge 912cb98096 ext/wavpack/gstwavpackenc.*: Handle non-zero start timestamps and stream discontinuities correctly. This only has an ...
Original commit message from CVS:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_reset),
(gst_wavpack_enc_push_block), (gst_wavpack_enc_chain):
* ext/wavpack/gstwavpackenc.h:
Handle non-zero start timestamps and stream discontinuities
correctly. This only has an effect if we're muxing into
a container format as the raw WavPack stream must contain
continous sample numbers.
2008-08-31 17:09:18 +00:00
Sebastian Dröge ded2cc6e39 ext/wavpack/: Add support for encoding, parsing and decoding multichannel files with up to 8 channels. This also impr...
Original commit message from CVS:
* ext/wavpack/gstwavpackcommon.c:
(gst_wavpack_get_default_channel_mask),
(gst_wavpack_set_channel_layout),
(gst_wavpack_get_default_channel_positions),
(gst_wavpack_get_channel_mask_from_positions),
(gst_wavpack_set_channel_mapping):
* ext/wavpack/gstwavpackcommon.h:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_reset),
(gst_wavpack_dec_sink_set_caps), (gst_wavpack_dec_chain):
* ext/wavpack/gstwavpackdec.h:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_reset),
(gst_wavpack_enc_init), (gst_wavpack_enc_sink_set_caps),
(gst_wavpack_enc_set_wp_config), (gst_wavpack_enc_push_block),
(gst_wavpack_enc_fix_channel_order), (gst_wavpack_enc_chain),
(gst_wavpack_enc_rewrite_first_block),
(gst_wavpack_enc_sink_event):
* ext/wavpack/gstwavpackenc.h:
* ext/wavpack/gstwavpackparse.c:
(gst_wavpack_parse_index_append_entry), (gst_wavpack_parse_reset),
(gst_wavpack_parse_scan_to_find_sample),
(gst_wavpack_parse_sink_event), (gst_wavpack_parse_create_src_pad),
(gst_wavpack_parse_push_buffer), (gst_wavpack_parse_loop):
* ext/wavpack/gstwavpackparse.h:
Add support for encoding, parsing and decoding multichannel
files with up to 8 channels. This also improves the robustness
of parsing quite a bit.
* ext/wavpack/gstwavpackstreamreader.c:
(gst_wavpack_stream_reader_read_bytes),
(gst_wavpack_stream_reader_get_pos),
(gst_wavpack_stream_reader_set_pos_abs),
(gst_wavpack_stream_reader_set_pos_rel),
(gst_wavpack_stream_reader_push_back_byte),
(gst_wavpack_stream_reader_get_length),
(gst_wavpack_stream_reader_can_seek),
(gst_wavpack_stream_reader_write_bytes):
Improve debugging.
2007-11-20 13:08:45 +00:00
Sebastian Dröge 5947345f9a ext/wavpack/gstwavpackenc.*: Fixup docs, make the bitrate property an int as it should be and allow to set the differ...
Original commit message from CVS:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_class_init),
(gst_wavpack_enc_init), (gst_wavpack_enc_set_wp_config),
(gst_wavpack_enc_set_property), (gst_wavpack_enc_get_property):
* ext/wavpack/gstwavpackenc.h:
Fixup docs, make the bitrate property an int as it should be and
allow to set the different extra processing modes instead of only
allowing none and the default one.
2007-05-21 11:17:21 +00:00
Sebastian Dröge 6d8e6c9bb0 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.
2007-03-30 04:50:11 +00:00
Sebastian Dröge a1a03796da ext/wavpack/gstwavpackenc.*: Put the write helpers into the GstWavpackEnc struct directly and not as a pointer to sav...
Original commit message from CVS:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_class_init),
(gst_wavpack_enc_init), (gst_wavpack_enc_chain),
(gst_wavpack_enc_rewrite_first_block):
* ext/wavpack/gstwavpackenc.h:
Put the write helpers into the GstWavpackEnc struct directly and not
as a pointer to save two small, but useless mallocs. This also makes
it possible to drop the finalize method.
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_push_buffer):
For consistency reasons also set GST_BUFFER_OFFSET_END on the outgoing
buffers the same way wavpackenc does it.
2007-03-22 00:17:41 +00:00
Sebastian Dröge 75847358e4 ext/wavpack/gstwavpackenc.h: Use local copy of md5.h, as it disappeared in recent wavpack installs.
Original commit message from CVS:
* ext/wavpack/gstwavpackenc.h:
Use local copy of md5.h, as it disappeared in recent wavpack
installs.
Patch by: Sebastian Dröge <slomo at ubuntu dot com>
Fixes: #387076
2006-12-18 10:02:56 +00:00
Stefan Kost af06a16852 More G_OBJECT macro fixing.
Original commit message from CVS:
* ext/hermes/gsthermescolorspace.c:
* ext/ivorbis/vorbisfile.c:
* ext/lcs/gstcolorspace.c:
* ext/wavpack/gstwavpackenc.h:
* ext/xine/xineaudiodec.c:
* ext/xine/xineaudiosink.c:
* ext/xine/xineinput.c:
* gst/chart/gstchart.c:
* gst/equalizer/gstiirequalizer.c:
* gst/games/gstpuzzle.c:
* gst/librfb/gstrfbsrc.c:
* gst/mixmatrix/mixmatrix.c:
* gst/nsf/gstnsf.h:
* gst/vbidec/gstvbidec.c:
* gst/virtualdub/gstxsharpen.c:
More G_OBJECT macro fixing.
2006-09-16 22:14:35 +00:00
Sebastian Dröge d1c828f845 Add docs for wavpack elements (#352476).
Original commit message from CVS:
Patch by: Sebastian Dröge <slomo at circular-chaos.org>
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* docs/plugins/gst-plugins-bad-plugins.hierarchy:
* docs/plugins/inspect/plugin-wavpack.xml:
* ext/wavpack/gstwavpackdec.c:
* ext/wavpack/gstwavpackdec.h:
* ext/wavpack/gstwavpackenc.c:
* ext/wavpack/gstwavpackenc.h:
* ext/wavpack/gstwavpackparse.c:
* ext/wavpack/gstwavpackparse.h:
Add docs for wavpack elements (#352476).
2006-08-23 08:52:50 +00:00
Tim-Philipp Müller bc64aa8b09 ext/wavpack/: More clean-ups: use shorter variable names to make code easier to read; prefix structures we define wit...
Original commit message from CVS:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_init),
(gst_wavpack_enc_finalize), (gst_wavpack_enc_sink_set_caps),
(gst_wavpack_enc_set_wp_config), (gst_wavpack_enc_format_samples),
(gst_wavpack_enc_push_block), (gst_wavpack_enc_chain),
(gst_wavpack_enc_rewrite_first_block),
(gst_wavpack_enc_sink_event), (gst_wavpack_enc_change_state),
(gst_wavpack_enc_set_property), (gst_wavpack_enc_get_property):
* ext/wavpack/gstwavpackenc.h:
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_reset),
(gst_wavpack_parse_src_query), (gst_wavpack_parse_src_event),
(gst_wavpack_parse_init), (gst_wavpack_parse_get_upstream_length),
(gst_wavpack_parse_loop):
More clean-ups: use shorter variable names to make code easier to
read; prefix structures we define with 'Gst' to make it clearer
where they come from.
2006-08-21 13:59:52 +00:00
Sebastian Dröge a969a074c0 ext/wavpack/gstwavpackenc.*: Use bitrate property solely for bitrates and add new bits-per-sample property for the ot...
Original commit message from CVS:
Patch by: Sebastian Dröge  <slomo at circular-chaos org>
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_base_init),
(gst_wavpack_enc_class_init), (gst_wavpack_enc_set_wp_config),
(gst_wavpack_enc_chain), (gst_wavpack_enc_sink_event),
(gst_wavpack_enc_set_property), (gst_wavpack_enc_get_property):
* ext/wavpack/gstwavpackenc.h:
Use bitrate property solely for bitrates and add new
bits-per-sample property for the other stuff. Set duration
to 'unknown' in initial header and resend header with proper
duration on EOS; update Sebastian's e-mail address.
2006-06-14 09:32:27 +00:00
Sebastian Dröge b9ea984f76 ext/wavpack/: Add wavpack encoder element (#343131).
Original commit message from CVS:
Patch by: Sebastian Dröge  <mail at slomosnail de>
* ext/wavpack/Makefile.am:
* ext/wavpack/gstwavpack.c: (plugin_init):
* ext/wavpack/gstwavpackcommon.h:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_mode_get_type),
(gst_wavpack_enc_correction_mode_get_type),
(gst_wavpack_enc_joint_stereo_mode_get_type),
(gst_wavpack_enc_base_init), (gst_wavpack_enc_class_init),
(gst_wavpack_enc_init), (gst_wavpack_enc_dispose),
(gst_wavpack_enc_sink_set_caps), (gst_wavpack_enc_set_wp_config),
(gst_wavpack_enc_format_samples), (gst_wavpack_enc_push_block),
(gst_wavpack_enc_chain), (gst_wavpack_enc_rewrite_first_block),
(gst_wavpack_enc_sink_event), (gst_wavpack_enc_change_state),
(gst_wavpack_enc_set_property), (gst_wavpack_enc_get_property),
(gst_wavpack_enc_plugin_init):
* ext/wavpack/gstwavpackenc.h:
* ext/wavpack/md5.c:
* ext/wavpack/md5.h:
Add wavpack encoder element (#343131).
2006-06-10 15:33:18 +00:00