summaryrefslogtreecommitdiffstats
path: root/ext/wavpack/gstwavpackenc.c
Commit message (Collapse)AuthorAgeFilesLines
* wavpack: Use GLib GChecksum instead of our own MD5 implementationSebastian Dröge2009-08-101-9/+12
| | | | This requires GLib 2.16 but that version is already required by core anyway.
* wavpack: Implement preset interfaceSebastian Dröge2009-05-041-1/+15
|
* Update and add documentation for plugins with deps (ext).Stefan Kost2009-01-281-16/+8
| | | | Link to properties. Correct titles for examples. Document a few trivial cases. Keep lists in section file and docs/plugins/Makefile.am alphabetically ordered. Fix warnings that gtk-doc points out.
* ext/wavpack/gstwavpackenc.*: Handle non-zero start timestamps and stream ↵Sebastian Dröge2008-08-311-3/+66
| | | | | | | | | | | | | 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.
* Don't use declarations after statements and variable length arrays.Sebastian Dröge2008-07-081-5/+5
| | | | | | | | | | | | | Original commit message from CVS: * ext/raw1394/gstdv1394src.c: (gst_dv1394src_uri_set_uri): * ext/speex/gstspeexenc.c: (gst_speex_enc_sink_getcaps): * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_set_wp_config): * sys/v4l2/gstv4l2src.c: (gst_v4l2src_fixate): * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_probe_caps_for_format): * tests/examples/equalizer/demo.c: (message_handler): * tests/examples/spectrum/demo-audiotest.c: (message_handler): * tests/examples/spectrum/demo-osssrc.c: (message_handler): Don't use declarations after statements and variable length arrays.
* ext/wavpack/: Use GSlice for allocating index entries and use ↵Sebastian Dröge2008-04-031-7/+4
| | | | | | | | | | | | | | | gst_element_class_set_details_simple(). Original commit message from CVS: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init): * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_base_init): * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_index_entry_new), (gst_wavpack_parse_index_entry_free), (gst_wavpack_parse_base_init), (gst_wavpack_parse_index_append_entry), (gst_wavpack_parse_reset): Use GSlice for allocating index entries and use gst_element_class_set_details_simple().
* ext/wavpack/: Add support for encoding, parsing and decoding multichannel ↵Sebastian Dröge2007-11-201-34/+112
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* ext/wavpack/gstwavpackenc.c: Remove workaround for bug #421543. This is ↵Sebastian Dröge2007-06-091-4/+1
| | | | | | | | | fixed in core 0.10.13 and not necessary anymo... Original commit message from CVS: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_sink_set_caps): Remove workaround for bug #421543. This is fixed in core 0.10.13 and not necessary anymore as we need at least that core version.
* ext/wavpack/gstwavpackenc.c: Specify and use properties as unsigned int that ↵Sebastian Dröge2007-05-211-7/+7
| | | | | | | | | are an unsigned int. Original commit message from CVS: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_class_init), (gst_wavpack_enc_set_property), (gst_wavpack_enc_get_property): Specify and use properties as unsigned int that are an unsigned int.
* ext/wavpack/gstwavpackenc.*: Fixup docs, make the bitrate property an int as ↵Sebastian Dröge2007-05-211-30/+37
| | | | | | | | | | | | | 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.
* ext/wavpack/gstwavpackenc.c: Add missing audioconverts in the example ↵Sebastian Dröge2007-05-201-3/+3
| | | | | | | | | | | pipelines of wavpackenc. As the wavpack stuff n... Original commit message from CVS: * ext/wavpack/gstwavpackenc.c: Add missing audioconverts in the example pipelines of wavpackenc. As the wavpack stuff now needs input with 32 bit width (and random depth) this is needed now. The example pipelines for the parser and decoder are still fine.
* ext/wavpack/: Don't play audioconvert. As wavpack wants/outputs all samples ↵Sebastian Dröge2007-03-301-83/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* ext/wavpack/gstwavpackenc.c: Send the new segment event in time format ↵Sebastian Dröge2007-03-221-1/+1
| | | | | | | | | | | | | | instead of bytes. This allows "wavpackenc ! wa... Original commit message from CVS: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_push_block): Send the new segment event in time format instead of bytes. This allows "wavpackenc ! wavpackdec ! someaudiosink" pipelines. * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_plugin_init): Accept framed and non-framed input, wavpackparse doesn't care. To prevent "wavpackparse ! wavpackparse ! ..." pipelines lower the rank of wavpackparse by one. This allows "wavpackenc ! wavpackparse ! ..." pipelines.
* ext/wavpack/gstwavpackenc.*: Put the write helpers into the GstWavpackEnc ↵Sebastian Dröge2007-03-221-23/+7
| | | | | | | | | | | | | | | | 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.
* ext/wavpack/: Use a general wavpack debug category for common code.Sebastian Dröge2007-03-071-2/+2
| | | | | | | | | | | | | | | | | | Original commit message from CVS: * ext/wavpack/gstwavpack.c: (plugin_init): * ext/wavpack/gstwavpackcommon.c: Use a general wavpack debug category for common code. * ext/wavpack/gstwavpackstreamreader.c: (gst_wavpack_stream_reader_set_pos_abs), (gst_wavpack_stream_reader_set_pos_rel), (gst_wavpack_stream_reader_write_bytes): Use the general wavpack debug category here too and add debug output to the functions that should not be called at all by the wavpack library. * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_plugin_init): * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_plugin_init): * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_plugin_init): Change debugging category names to conform to the conventions.
* ext/wavpack/gstwavpackenc.c: Minor clean-up: use enum values instead of ↵Sebastian Dröge2007-01-111-11/+12
| | | | | | | | | | | hardcoded constants (#395536). Original commit message from CVS: Patch by: Sebastian Dröge <slomo@circular-chaos.org> * 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): Minor clean-up: use enum values instead of hardcoded constants (#395536).
* ext/wavpack/: Some small clean-ups: use enums instead of hard-coded numbers, ↵Sebastian Dröge2006-11-151-49/+80
| | | | | | | | | | | | | | | | | const-ify element details, re-factor som... Original commit message from CVS: Patch by: Sebastian Dröge <slomo@circular-chaos.org> * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_reset), (gst_wavpack_dec_init), (gst_wavpack_dec_change_state): * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_base_init), (gst_wavpack_enc_class_init), (gst_wavpack_enc_reset), (gst_wavpack_enc_init), (gst_wavpack_enc_set_wp_config), (gst_wavpack_enc_change_state): * ext/wavpack/gstwavpackparse.c: Some small clean-ups: use enums instead of hard-coded numbers, const-ify element details, re-factor some code into _reset() functions (#352605).
* Fix enum nicks; only emit no-more-pads once; add support for very fast ↵Sebastian Dröge2006-11-021-17/+35
| | | | | | | | | | | | | | encoding mode in upcoming 4.40.0 release (#369... Original commit message from CVS: Patch by: Sebastian Dröge <slomo at circular-chaos.org> * configure.ac: * 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_init), (gst_wavpack_enc_set_wp_config): Fix enum nicks; only emit no-more-pads once; add support for very fast encoding mode in upcoming 4.40.0 release (#369539).
* Activate pads before adding them to running element.Tim-Philipp Müller2006-10-171-0/+1
| | | | | | | | | | Original commit message from CVS: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_set_wp_config): * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_create_src_pad): * gst/nuvdemux/gstnuvdemux.c: (gst_nuv_demux_create_pads): * tests/check/elements/wavpackparse.c: (wavpackparse_found_pad): Activate pads before adding them to running element.
* Another batch of printf format fixes.Tim-Philipp Müller2006-10-051-2/+2
| | | | | | | | | | | Original commit message from CVS: * ext/dts/gstdtsdec.c: (gst_dtsdec_chain): * ext/musicbrainz/gsttrm.c: (gst_trm_setcaps): * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_sink_set_caps): * gst/qtdemux/qtdemux.c: (gst_qtdemux_chain), (qtdemux_parse), (qtdemux_parse_trak): * gst/spectrum/gstspectrum.c: (gst_spectrum_transform_ip): Another batch of printf format fixes.
* ext/wavpack/gstwavpackenc.c: Fix mem leak, send newsegment event on ↵Tim-Philipp Müller2006-08-231-3/+3
| | | | | | | | | | | | | | | | correction pad as well (#352476). Original commit message from CVS: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_push_block): Fix mem leak, send newsegment event on correction pad as well (#352476). * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init): Restore original author (on Sebastian's request). * tests/check/Makefile.am: * tests/check/gst-plugins-bad.supp: Add (so far empty) suppression file for -bad. Remove wavpackenc test from VALGRIND_TO_FIX now that the leak is fixed.
* Add docs for wavpack elements (#352476).Sebastian Dröge2006-08-231-0/+31
| | | | | | | | | | | | | | | | | 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).
* ext/wavpack/: More clean-ups: use shorter variable names to make code easier ↵Tim-Philipp Müller2006-08-211-207/+198
| | | | | | | | | | | | | | | | | | | | | 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.
* ext/wavpack/gstwavpackenc.c: Fix caps set on buffers and template caps ↵Tim-Philipp Müller2006-08-211-172/+78
| | | | | | | | | | | | | | (output is framed) and make them match (#35166... Original commit message from CVS: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_init), (gst_wavpack_enc_set_wp_config), (gst_wavpack_enc_push_block), (gst_wavpack_enc_chain), (gst_wavpack_enc_rewrite_first_block), (gst_wavpack_enc_sink_event): Fix caps set on buffers and template caps (output is framed) and make them match (#351663); use GST_WARNING_OBJECT instead of GST_ELEMENT_WARNING; simplify push_block(); do some small clean-ups here and there; fix memleak (#351663).
* ext/wavpack/: In push mode, re-sync to next wavpack header if sync is lost ↵Sebastian Dröge2006-08-161-3/+3
| | | | | | | | | | | | | (#351557). Also use hyphens instead of und... Original commit message from CVS: Patch by: Sebastian Dröge <slomo at circular-chaos.org> * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_class_init): * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_resync_adapter), (gst_wavpack_parse_chain): In push mode, re-sync to next wavpack header if sync is lost (#351557). Also use hyphens instead of underscores in GObject property names.
* configure.ac: Check for wavpack version and define WAVPACK_OLD_API if necessary.Sebastian Dröge2006-07-181-23/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message from CVS: Patch by: Sebastian Dröge <slomo at circular-chaos.org> * configure.ac: Check for wavpack version and define WAVPACK_OLD_API if necessary. * ext/wavpack/Makefile.am: * ext/wavpack/gstwavpackcommon.c: (gst_wavpack_read_header), (gst_wavpack_read_metadata): * ext/wavpack/gstwavpackcommon.h: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init), (gst_wavpack_dec_class_init), (gst_wavpack_dec_init), (gst_wavpack_dec_finalize), (gst_wavpack_dec_format_samples), (gst_wavpack_dec_clip_outgoing_buffer), (gst_wavpack_dec_chain), (gst_wavpack_dec_sink_event), (gst_wavpack_dec_change_state), (gst_wavpack_dec_request_new_pad), (gst_wavpack_dec_plugin_init): * ext/wavpack/gstwavpackdec.h: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_class_init), (gst_wavpack_enc_init), (gst_wavpack_enc_finalize), (gst_wavpack_enc_set_wp_config): * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init), (gst_wavpack_parse_finalize), (gst_wavpack_parse_class_init), (gst_wavpack_parse_index_get_entry_from_sample), (gst_wavpack_parse_scan_to_find_sample), (gst_wavpack_parse_handle_seek_event), (gst_wavpack_parse_create_src_pad): * ext/wavpack/gstwavpackstreamreader.c: * ext/wavpack/gstwavpackstreamreader.h: Port to new/official wavpack API, don't use API that was exported in wavpack header files and in the lib but meant to be private, at least not for recent wavpack versions; misc. 'cleanups' (#347443).
* ext/wavpack/gstwavpackenc.*: Use bitrate property solely for bitrates and ↵Sebastian Dröge2006-06-141-48/+51
| | | | | | | | | | | | | | | | 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.
* ext/wavpack/: Add wavpack encoder element (#343131).Sebastian Dröge2006-06-101-0/+1002
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).