From ded2cc6e39501f249ac16b88f18c1a92e136b95a Mon Sep 17 00:00:00 2001 From: Sebastian Dröge Date: Tue, 20 Nov 2007 13:08:45 +0000 Subject: 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. --- ext/wavpack/gstwavpackenc.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'ext/wavpack/gstwavpackenc.h') diff --git a/ext/wavpack/gstwavpackenc.h b/ext/wavpack/gstwavpackenc.h index 243e8d7b..dbafcd19 100644 --- a/ext/wavpack/gstwavpackenc.h +++ b/ext/wavpack/gstwavpackenc.h @@ -45,6 +45,7 @@ typedef struct { gboolean correction; GstWavpackEnc *wavpack_enc; + gboolean passthrough; } GstWavpackEncWriteID; @@ -64,6 +65,9 @@ struct _GstWavpackEnc gint samplerate; gint channels; + gint channel_mask; + gint8 channel_mapping[8]; + gboolean need_channel_remap; gint depth; GstWavpackEncWriteID wv_id; @@ -80,6 +84,9 @@ struct _GstWavpackEnc void *first_block; int32_t first_block_size; + + GstBuffer *pending_buffer; + gint32 pending_offset; }; struct _GstWavpackEncClass -- cgit