2013-06-11 Release Maker * configure.ac: Back to TRUNK. === release 0.10.22 === 2013-06-05 Josep Torra * configure.ac: Use again the original macro for static plugins. 2013-02-11 Andoni Morales Alastruey * src/mp3tl.c: Fix format error, where frame_bits is a guint 2013-02-11 Release Maker * configure.ac: Back to TRUNK. === release 0.10.21 === 2013-02-11 Julien Moutte * gst-fluendo-mp3.spec.in: Add support for GStreamer 1.0 2013-02-07 Josep Torra * configure.ac: Add support for automake 1.13. 2012-10-11 Josep Torra * src/Makefile.am: * src/flump3dec-0_10.c: (_cleanup), (_check_for_xing), (_update_ts), (_conv_bytes_to_time), (_total_bytes), (_total_time), (_time_to_bytepos), (gst_flump3dec_flush), (gst_flump3dec_decode), (gst_flump3dec_sink_chain), (gst_flump3dec_sink_event), (gst_flump3dec_src_convert), (gst_flump3dec_src_query), (gst_flump3dec_src_event), (gst_flump3dec_change_state), (gst_flump3dec_get_query_types), (gst_flump3dec_dispose), (gst_flump3dec_class_init), (gst_flump3dec_init): * src/flump3dec-1_0.c: (_cleanup), (gst_flump3dec_start), (gst_flump3dec_stop), (gst_flump3dec_reset_format), (gst_flump3dec_parse), (gst_flump3dec_handle_frame), (gst_flump3dec_flush), (gst_flump3dec_dispose), (gst_flump3dec_class_init), (gst_flump3dec_init): * src/flump3dec.c: * src/flump3dec.h: * src/mp3tl.c: (mp3tl_gather_frame): * src/mp3tl.h: Initial 1.0 port 2012-10-11 Josep Torra * src/bitstream.c: (bs_set_data): Ensure to reset the bit position too. 2012-10-10 Josep Torra * src/bitstream.c: (bs_set_data): * src/bitstream.h: * src/flump3dec.c: (_check_for_xing), (_cleanup), (gst_flump3dec_decode), (gst_flump3dec_sink_chain), (gst_flump3dec_change_state), (gst_flump3dec_get_query_types), (gst_flump3dec_class_init), (gst_flump3dec_init): * src/flump3dec.h: * src/mp3tl.c: (mp3tl_set_eos): Some more refactoring. 2012-10-10 Josep Torra * src/bitstream.c: (bs_seek_sync): * src/bitstream.h: * src/flump3dec.c: (_update_ts), (_time_to_bytepos), (gst_flump3dec_init): Fix documentation to reflect latest refactorings. Micro optimization on bs_seek_sync. 2012-10-09 Josep Torra * src/flump3dec.c: (_reset), (_update_ts), (_conv_bytes_to_time), (_total_bytes), (_total_time), (_time_to_bytepos), (_check_for_xing), (gst_flump3dec_flush), (gst_flump3dec_decode), (gst_flump3dec_sink_event), (gst_flump3dec_src_query), (gst_flump3dec_src_event), (gst_flump3dec_change_state), (gst_flump3dec_init): Some more code refactoring. 2012-10-09 Josep Torra * src/bitstream.c: (bs_new), (bs_free), (bs_flush), (bs_set_data), (bs_eat), (bs_consume), (bs_skipbits), (bs_seek_sync), (bs_getbytes): * src/bitstream.h: * src/decode.c: (read_header): * src/flump3dec.c: (gst_flump3dec_flush), (gst_flump3dec_decode), (gst_flump3dec_sink_chain), (gst_flump3dec_dispose), (gst_flump3dec_init): * src/flump3dec.h: * src/mp3tl-priv.h: * src/mp3tl.c: (mp3tl_new), (mp3tl_sync), (mp3tl_decode_header), (mp3tl_decode_frame), (mp3tl_flush), (mp3tl_skip_frame): * src/mp3tl.h: Refactoring to use a GstAdapter. 2012-10-09 Josep Torra * src/flump3dec.c: (gst_flump3dec_change_state), (gst_flump3dec_class_init), (gst_flump3dec_init): Drop _base_init and modernize some bits of code. 2012-10-09 Josep Torra * configure.ac: * src/Makefile.am: Prepare autotools part to handle 1.0 code. 2012-10-09 Josep Torra * src/bitstream.c: (bs_free_buffer), (bs_add_buffer): * src/bitstream.h: * src/flump3dec.c: (gst_flump3dec_decode), (gst_flump3dec_sink_chain), (gst_flump3dec_handle_sink_event), (gst_flump3dec_sink_event), (gst_flump3dec_handle_src_query), (gst_flump3dec_src_query), (gst_flump3dec_handle_src_event), (gst_flump3dec_src_event), (gst_flump3dec_get_query_types), (gst_flump3dec_init): Drop the code to support 0.11. 2012-09-04 Release Maker * configure.ac: Back to TRUNK. === release 0.10.20 === 2012-09-03 Josep Torra * src/flump3dec.c: (gst_flump3dec_decode): Fixes a regression introduced in rev 2155. The goal in this code is to repeat latest properly decoded frame as error cancelation strategy, then we need to keep the pending_frame reference as long as needed. 2012-08-28 Josep Torra * src/flump3dec.c: (gst_flump3dec_decode): Remove wrong gst_object_unref lines missed during refactoring for 0.11 exeperiments. 2012-08-22 Josep Torra * src/bitstream.c: (h_setbuf), (h_reset): * src/bitstream.h: * src/mp3-c.c: (mp3_c_flush): * src/mp3tl.c: (mp3tl_flush): Flush the decoder some more. 2012-07-04 Josep Torra * src/mp3tl-priv.h: * src/mp3tl.c: (mp3tl_new), (mp3tl_free): Ensure that the decoder instance is memory aligned otherwise we can have some segfaults in the Neon assembly due missaligned memory access. 2012-07-03 Andoni Morales Alastruey * src/Makefile.am: Don't link with ipp in the static build to avoid duplicated symbols in the final binary 2012-05-31 Release Maker * configure.ac: Back to TRUNK. === release 0.10.19 === 2012-05-31 Josep Torra * configure.ac: * src/Makefile.am: Use the new macro AG_NEED_IPP in the configure script. 2012-05-16 Josep Torra * src/bitstream.c: (bs_getbytes): * src/bitstream.h: * src/common.c: (js_bound): * src/flump3dec.c: (gst_flump3dec_decode): * src/mp3-c.c: (III_get_side_info), (III_get_LSF_scale_data), (huffman_decoder), (III_stereo): * src/mp3tl.c: (mp3tl_decode_frame): Use GST_WARNING instead of g_warning. 2012-05-16 Josep Torra * src/mp3tl.c: (mp3tl_decode_frame): Make the code more portable. 2012-05-16 Josep Torra * configure.ac: * src/Makefile.am: Properly handle ERROR_CFLAGS to not miss warnings if CFLAGS is redefined in the make run. 2012-05-16 Josep Torra * src/mp3-c-synth.c: (mp3_SubBandSynthesis): Fix a warning introduced in my recent commit on Neon optimizations. 2012-05-16 Josep Torra * src/Makefile.am: * src/bitstream.h: * src/common.h: * src/flump3dec.h: * src/gst_compat.h: Use the gst-compat.h from the common instead of our own copy. 2012-05-15 Josep Torra * src/common.h: * src/mp3-c-synth.c: (__CACHE_LINE_DECL_ALIGN), (MPG_DCT_8), (MPG_DCT_16), (MPG_DCT_32), (mp3_dewindow_output), (build_uvec), (mp3_SubBandSynthesis): * src/table-dewindow.h: Add several optimizations with arm NEON assembly. 2012-05-07 Release Maker * configure.ac: Back to TRUNK. === release 0.10.18 === 2012-05-07 Josep Torra * src/gst_compat.h: Add missing new file in my previous commit. 2012-05-07 Josep Torra * src/Makefile.am: * src/bitstream.h: * src/common.h: * src/flump3dec.c: * src/flump3dec.h: Fixes build with GStreamer prior to 0.10.18. 2012-05-07 Release Maker * configure.ac: Back to TRUNK. === release 0.10.17 === 2012-04-30 Josep Torra * src/bitstream.c: (h_setbuf): * src/common.c: (II_pick_table): * src/flump3dec.c: (gst_flump3dec_decode): Fix some dead code reported by Clang Static Analyzer. 2012-04-22 Josep Torra * src/bitstream.h: Fix a copy&paste error. 2012-04-22 Josep Torra * src/bitstream.h: Fix some more bugs in the optimized path and reenable it again. 2012-04-19 Josep Torra * src/bitstream.h: Fix a bug in the h_sstel macro. Turn off the BS optimization as it doesn't work with certain clips. 2012-03-22 Josep Torra * src/flump3dec.c: (gst_flump3dec_decode): Make the code more portable. 2012-03-22 Josep Torra * AUTHORS: Reflect support@fluendo.com. 2012-02-20 Josep Torra * configure.ac: Make it a little more verbose on the summary about the CPU tune specific flags. Some fixes to properly report the version and the IPP ussage. 2012-02-15 Xavi Artigas * src/bitstream.h: Fix Visual Studio build. It is unclear that this assembly optimization would bring benefits, since VS does not handle well registers modified inside _asm blocks. 2012-01-27 Josep Torra * src/bitstream.c: (bs_free_buffer), (bs_add_buffer): * src/bitstream.h: * src/flump3dec.c: (gst_flump3dec_decode), (gst_flump3dec_decode_buffer), (gst_flump3dec_sink_chain), (gst_flump3dec_handle_sink_event), (gst_flump3dec_sink_event), (gst_flump3dec_src_convert), (gst_flump3dec_handle_src_query), (gst_flump3dec_src_query), (gst_flump3dec_handle_src_event), (gst_flump3dec_src_event), (gst_flump3dec_init): Change the code to being able build it in current GStreamer 0.11. 2011-12-05 Release Maker * configure.ac: Back to TRUNK. === release 0.10.16 === 2011-12-05 Josep Torra * src/mp3-c-synth.c: * src/mp3-c.c: (inv_mdct_l), (inv_mdct), (III_hybrid): Use the flag --enable-tune-vfp to decide if the assembly code have to be turn on. 2011-12-01 Josep Torra * src/decode.c: * src/decode.h: Micro optimization on out_fifo and inline it. 2011-12-01 Josep Torra * src/mp3-c-synth.c: (mp3_SubBandSynthesis): Micro optimization. 2011-12-01 Josep Torra * src/mp3-c-synth.c: (mp3_SubBandSynthesis): Algorithmic optimization to avoid a lot of intermediate memory operations. 2011-11-30 Josep Torra * src/mp3-c.c: (calculate_H), (dewindow_block_type_2), (dewindow_block_type_other), (overlap_addition): Micro optimization. 2011-11-30 Josep Torra * src/mp3-c-synth.c: (III_polyphase_matrix): Minor fix on the assembly code. 2011-11-30 Josep Torra * src/mp3-c-synth.c: (MPG_DCT_8), (MPG_DCT_16), (MPG_DCT_32), (III_polyphase_matrix), (mp3_SubBandSynthesis): Inline some more code and few microoptimizations. 2011-11-29 Josep Torra * src/mp3-c.c: (calculate_H), (inv_mdct_l), (dewindow_block_type_2), (dewindow_block_type_other), (inv_mdct), (overlap_addition), (III_hybrid): Add few more assembly rewritten bits. 2011-11-29 Josep Torra * src/mp3-c-synth.c: (mp3_dewindow_output): Minor cleanups. 2011-11-22 Josep Torra * src/Makefile.am: * src/arm_vfp_synt.S: * src/mp3-c-synth.c: (mp3_dewindow_output): Rewrite the subband synthesis code in inline assembly. 2011-11-21 Josep Torra * src/mp3-c-synth.c: (mp3_dewindow_output): Fix an error introduced in the recent refactoring. 2011-11-20 Josep Torra * src/Makefile.am: * src/arm_vfp_synt.S: * src/mp3-c-synth.c: (mp3_dewindow_output), (mp3_SubBandSynthesis): Initial attempt to rewrite part of the subband synthesis in ARM/VFP assembly. 2011-11-18 Josep Torra * src/mp3-c-synth.c: (mp3_dewindow_output), (mp3_SubBandSynthesis): Reorganize the code a little. 2011-11-18 Josep Torra * src/mp3-c-synth.c: (mp3_SubBandSynthesis): Unroll a loop and implement vectorized additions with liboil. 2011-11-18 Josep Torra * src/bitstream.h: Use a static mask table for bitstream reader and some cosmetic fixes. 2011-11-18 Josep Torra * src/flump3dec.c: (gst_flump3dec_decode), (conv_bytes_to_time), (gst_flump3dec_total_time), (gst_flump3dec_src_convert), (gst_flump3dec_src_query), (gst_flump3dec_time_to_bytepos): Run gst-indent. 2011-11-18 Josep Torra * src/flump3dec.c: (gst_flump3dec_decode), (gst_flump3dec_sink_chain), (gst_flump3dec_sink_event): Few more cleanups. 2011-11-18 Josep Torra * src/flump3dec.c: (gst_flump3dec_sink_chain), (conv_bytes_to_time), (gst_flump3dec_total_bytes), (gst_flump3dec_src_convert), (gst_flump3dec_change_state), (gst_flump3dec_dispose), (gst_flump3dec_get_query_types), (gst_flump3dec_class_init), (gst_flump3dec_base_init), (gst_flump3dec_init), (gst_flump3dec_get_type): Avoid forward declarations. 2011-11-18 Josep Torra * src/flump3dec.c: (gst_flump3dec_get_type), (gst_flump3dec_class_init), (gst_flump3dec_base_init), (gst_flump3dec_init), (gst_flump3dec_reset), (gst_flump3dec_dispose), (gst_flump3dec_flush), (gst_flump3dec_sink_chain), (gst_flump3dec_check_for_xing), (gst_flump3dec_update_ts), (gst_flump3dec_drain_avail), (gst_flump3dec_sink_event), (gst_flump3dec_change_state), (gst_flump3dec_get_query_types), (conv_bytes_to_time), (gst_flump3dec_total_bytes), (gst_flump3dec_total_time), (gst_flump3dec_src_query), (gst_flump3dec_src_convert), (gst_flump3dec_time_to_bytepos), (gst_flump3dec_src_event), (plugin_init): * src/flump3dec.h: Follow the naming convention we have in other code. Some minor refactorings. 2011-11-14 Josep Torra * src/common.h: * src/decode.c: (recover_CRC_error): Fix build in recent GStreamer and recent gcc versions. 2011-11-12 Josep Torra * src/bitstream.c: (h_setbuf), (h_rewindNbits): * src/bitstream.h: Several code cleanups and simplifications. Activate again the bitstream optimized path to catch possible corner cases. 2011-11-12 Josep Torra * src/bitstream.c: * src/bitstream.h: * src/common.c: * src/common.h: * src/decode.c: * src/decode.h: * src/flump3dec.c: * src/flump3dec.h: * src/mp3-c-synth.c: * src/mp3-c.c: * src/mp3-c.h: * src/mp3-cos-tables.h: * src/mp3-ipp.c: * src/mp3-ipp.h: * src/mp3tl-priv.h: * src/mp3tl.c: * src/mp3tl.h: * src/table-bitalloc.h: * src/table-dewindow.h: * src/table-huffdec.h: * src/table-powtable-2.h: * src/table-powtable.h: Update copyright headers. 2011-11-12 Josep Torra * src/bitstream.c: (bs_free_buffer), (bs_reset), (bs_eat), (bs_consume), (bs_skipbits), (bs_nextbuf), (bs_seek_sync), (bs_buf_time), (bs_getbytes), (h_setbuf), (h_rewindNbits), (h_rewindNbytes): * src/bitstream.h: * src/common.c: (II_pick_table), (hdr_to_frps), (I_CRC_calc), (II_CRC_calc), (update_CRC): * src/common.h: * src/decode.c: (read_main_header), (read_header), (set_hdr_data_slots), (II_decode_scale), (I_buffer_sample), (II_buffer_sample), (II_dequant_and_scale_sample), (I_dequant_and_scale_sample), (init_syn_filter), (out_fifo), (recover_CRC_error): * src/decode.h: * src/flump3dec.c: (flump3dec_get_type), (flump3dec_class_init), (flump3dec_base_init), (flump3dec_init), (flump3dec_reset), (flump3dec_dispose), (flump3dec_flush), (flump3dec_sink_chain), (flump3dec_check_for_xing), (gst_flump3dec_update_ts), (flump3dec_drain_avail), (flump3dec_sink_event), (flump3dec_change_state), (flump3dec_get_query_types), (conv_bytes_to_time), (flump3dec_total_bytes), (flump3dec_total_time), (flump3dec_src_query), (flump3dec_src_convert), (flump3dec_time_to_bytepos), (flump3dec_src_event), (plugin_init): * src/mp3-c-synth.c: (III_subband_synthesis), (mp3_SubBandSynthesis), (III_polyphase_matrix), (MPG_DCT_32), (MPG_DCT_16), (MPG_DCT_8): * src/mp3-c.c: (III_get_side_info), (III_get_scale_factors), (III_get_LSF_scale_data), (III_get_LSF_scale_factors), (huffman_decoder), (III_huffman_decode), (III_dequantize_sample), (III_reorder), (III_stereo), (III_antialias), (inv_mdct_s), (inv_mdct_l), (imdct_9pt), (inv_mdct), (init_mdct), (init_hybrid), (III_hybrid), (III_frequency_inversion), (c_decode_mp3), (mp3_c_init), (mp3_c_flush): * src/mp3-c.h: * src/mp3-ipp.h: * src/mp3tl-priv.h: * src/mp3tl.c: (mp3tl_set_eos), (mp3tl_sync), (mp3tl_decode_header), (mp3tl_decode_frame), (mp3tl_flush), (mp3tl_skip_frame), (mp3tl_get_err_reason): * src/mp3tl.h: * src/table-bitalloc.h: * src/table-dewindow-ipp.h: * src/table-dewindow.h: * src/table-huffdec.h: Run gst-indent on the source code. 2011-11-11 Josep Torra * src/common.h: * src/flump3dec.c: Fix building with older GStreamer versions. 2011-10-12 Josep Torra * src/flump3dec.c: (flump3dec_drain_avail): Avoid a segfault accessing to a NULL pointer. 2011-09-05 Josep Torra * src/mp3-ipp.c: (mp3_SubBandSynthesis): Fixes warning reported by gcc 4.5.2. 2011-08-25 Julien Moutte * gst-fluendo-mp3.spec.in: Support building on Meego with proper IPP optimizations. 2011-08-19 Julien Moutte * win32/oa/libgstflump3dec_ossbuild.vcproj: Port to IPP 7. 2011-08-19 Julien Moutte * configure.ac: * win32/Makefile.am: * win32/oa/Makefile.am: * win32/oa/config.h: * win32/oa/config.h.in: * win32/oa/*.vcproj: Restore the OABuild build infrastructure. We want to keep it side by side with the new system to support customers using that build system on windows. 2011-08-08 Josep Torra * configure.ac: * src/bitstream.c: (bs_free_buffer), (bs_free), (bs_flush), (bs_add_buffer), (bs_nextbuf): * src/bitstream.h: * src/flump3dec.c: (flump3dec_init), (flump3dec_reset), (flump3dec_drain_avail), (flump3dec_sink_event), (conv_bytes_to_time), (flump3dec_total_bytes), (flump3dec_total_time), (flump3dec_src_query), (flump3dec_time_to_bytepos): * src/flump3dec.h: Initial port to GStreamer 0.11. 2011-08-08 Josep Torra * src/bitstream.c: (bs_add_buffer): * src/bitstream.h: * src/flump3dec.c: (flump3dec_sink_chain): Minor simplification on our internal BS reader. 2011-07-27 Josep Torra * src/mp3-c.c: (III_hybrid): Fix unused variable warning when building with liboil. 2011-02-28 Josep Torra * autogen.sh: * configure.ac: * src/flump3dec.c: (flump3dec_sink_event): * src/mp3-c.c: (III_huffman_decode): * src/mp3tl.c: (mp3tl_sync): Fix build on Mac OS X. 2010-10-21 Release Maker * configure.ac: Back to TRUNK. === release 0.10.15 === 2010-10-21 Jorge Zapata * src/flump3dec.c: (flump3dec_reset), (flump3dec_flush), (flump3dec_sink_chain), (flump3dec_check_for_xing), (flump3dec_drain_avail): * src/flump3dec.h: * win32/oa/config.h: Add a discont double check, checking the flag is not enough given that rtpmpadepay/rtpmpapay adds a discont flag on every buffer, so we also check the timestamps difference. Whenever we are looking for the Xing header and it is not found we must reset the bitstream. Add a cast to correctly display the needed bits. 2010-03-12 Release Maker * configure.ac: Back to TRUNK. === release 0.10.14 === 2010-03-12 Julien Moutte * ChangeLog: I screwed up with the release process ! * configure.ac: Back to TRUNK. 2010-03-12 Release Maker * configure.ac: Back to TRUNK. === release 0.10.13 === 2010-03-12 Release Maker * configure.ac: Back to TRUNK. === release 0.10.13 === 2010-03-08 Josep Torra * src/flump3dec.c: (flump3dec_sink_event): Do not drain in segment updates. 2009-10-28 Josep Torra * Makefile.am: * autogen.sh: * configure.ac: Renamed 'decoder' folder to 'src' folder to follow the naming of the other plugins. 2009-10-28 Josep Torra * configure.ac: Added handling of assemby code by automake. 2009-10-28 Josep Torra * Makefile.am: Make autogen.sh being disted. 2009-09-16 Release Maker * configure.ac: Back to TRUNK. === release 0.10.12 === 2009-09-15 Thijs Vermeir * decoder/flump3dec.c: drain available frames before applying new segment 2009-08-24 Julien Moutte * win32/oa/Makefile.am: Add OSSBUILD VCPROJ to dist. * win32/oa/config.h: Updated. 2009-03-07 Release Maker * configure.ac: Back to TRUNK. === release 0.10.11 === 2009-02-26 Julien Moutte * Makefile.am: * configure.ac: * win32/Makefile.am: * win32/oa/Makefile.am: * win32/oa/config.h.in: Make sure we include Win32 in the release process. Autogenerate the config.h file with proper versioning. 2009-02-19 Julien Moutte * decoder/flump3dec.c: (flump3dec_sink_event): Use gst_pad_push_event as it's faster. 2008-12-11 Release Maker * configure.ac: Back to TRUNK. === release 0.10.10 === 2008-11-21 Julien Moutte * configure.ac: Use the CPU_TUNE macro. * decoder/Makefile.am: Use CPU_TUNE CFLAGS and LDFLAGS for exec stack. * decoder/flump3dec.c: (flump3dec_flush), (flump3dec_sink_chain), (flump3dec_drain_avail), (flump3dec_sink_event): * decoder/flump3dec.h: Clean up indentation and make sure we set the discont flag on audio buffers when required. This fixes non flushing seek with MP3 dec in the pipeline (looping). 2008-10-13 Release Maker * configure.ac: Back to TRUNK. === release 0.10.9 === 2008-10-13 Julien Moutte * configure.ac: Make sure we don't set the Exec stack flag and don't build static libraries. * decoder/Makefile.am: Make naming of the LDFLAGS more consistent. 2008-09-15 Sergi Alvarez * decoder/flump3dec.c: (flump3dec_src_query): Check for format_bytes and format_default like comment above says. Avoid dupped check. 2008-06-18 Paul Brossier * configure.ac: back to TRUNK. === release 0.10.8 === 2008-06-09 Paul Brossier * configure.ac: update to use AG_CHECK_IPP 2008-06-09 Paul Brossier * configure.ac: update IPP lookup 2008-05-25 Julien Moutte * COPYING: * README: * decoder/bitstream.c: * decoder/bitstream.h: * decoder/common.c: * decoder/common.h: * decoder/decode.c: * decoder/decode.h: * decoder/flump3dec.c: * decoder/flump3dec.h: * decoder/mp3-c-synth.c: * decoder/mp3-c.c: * decoder/mp3-c.h: * decoder/mp3-cos-tables.h: * decoder/mp3-ipp.c: * decoder/mp3-ipp.h: * decoder/mp3tl-priv.h: * decoder/mp3tl.c: * decoder/mp3tl.h: * decoder/table-bitalloc.h: * decoder/table-dewindow.h: * decoder/table-huffdec.h: * decoder/table-powtable-2.h: * decoder/table-powtable.h: * util/gen-pow-table-2.c: (main): Update copyrights. 2008-05-25 Julien Moutte Patch by: Yoav Steinberg * decoder/bitstream.c: (bs_getbytes): * decoder/bitstream.h: * decoder/common.h: * decoder/decode.c: (II_dequant_and_scale_sample), (I_dequant_and_scale_sample), (init_syn_filter): * decoder/flump3dec.c: (flump3dec_base_init), (gst_flump3dec_update_ts), (flump3dec_drain_avail): * decoder/mp3-c-synth.c: (mp3_SubBandSynthesis), (MPG_DCT_8): * decoder/mp3-c.c: (III_get_side_info), (III_dequantize_sample), (III_stereo), (III_antialias), (inv_mdct_s), (imdct_9pt), (init_mdct), (III_hybrid): * decoder/mp3-cos-tables.h: * decoder/mp3tl.c: (mp3tl_sync), (mp3tl_decode_frame): * decoder/table-dewindow.h: * decoder/table-powtable-2.h: * decoder/table-powtable.h: Fix code to support Win32 build. 2008-03-18 Kapil Agrawal * decoder/mp3tl.c: (mp3tl_new): Initializing freebitrate flag to true. (mp3tl_sync): changed the read_header arguments. * decoder/decode.c: (read_header): changed the first argument to mp3tl, changes to support free format bitrate and moved parsing of first 21 bits to a new function read_main_header.Fixes ticket #23. * decoder/mp3tl-priv.h: added free format related elements in mp3tl. * decoder/decode.h: included mp3tl-priv.h. 2008-02-25 Release Maker * configure.ac: Back to TRUNK. === release 0.10.7 === 2008-02-22 Josep Torra Valles * configure.ac: Updated to compile with IPP version 5.3.1.062 2008-02-19 Kapil Agrawal * decoder/mp3tl.c: (mp3tl_sync): Fixed ticket #102. header and sync length were not considered while checking minimum frame size. 2007-12-14 Julien Moutte * gst-fluendo-mp3.spec.in: Handle SElinux policy in the RPM. 2007-08-23 Jan Schmidt * configure.ac: Add IPP 5.2, 5.3 & 5.3_beta to the list of versions to check for. * decoder/mp3-ipp.c: (ipp_decode_mp3): Use memmove instead of memcpy, and only copy when there are actually bytes to move. 2007-08-13 Jan Schmidt * decoder/flump3dec.c: (flump3dec_src_event): * decoder/mp3-c-synth.c: (mp3_SubBandSynthesis): * decoder/mp3-c.c: (III_stereo): * decoder/mp3tl.c: (mp3tl_new): Fix some compiler warnings about unused variables. 2007-08-13 Josep Torra Valles * decoder/bitstream.c: (h_rewindNbits), (h_rewindNbytes): * decoder/bitstream.h: * decoder/mp3-c.c: (III_huffman_decode): Partial fix for ticket #18. Disabled the optimization until a complete fix. ENABLE_OPT_BS = 0. 2007-07-26 Josep Torra Valles * configure.ac: * decoder/Makefile.am: * decoder/bitstream.c: (h_setbuf): * decoder/bitstream.h: * decoder/decode.c: * decoder/huffman.c: deleted * decoder/huffman.h: deleted * decoder/mp3-c.c: (huffman_decoder): made inline Several optimizations related to huffman decoding. 2007-07-26 Josep Torra Valles * decoder/mp3-c.c: (III_hybrid): Fixed a warning related to liboil. 2007-07-26 Josep Torra Valles * decoder/Makefile.am: Added table-powtable-2.h to fix 'make dist'. 2007-06-07 Jan Schmidt * decoder/flump3dec.c: (flump3dec_drain_avail): Don't output timestamps from an uninitialised variable when handling corrupted/skipped packets. 2007-06-06 Jan Schmidt * decoder/common.h: Fix macro for marking unused function arguments. * decoder/mp3-c.c: (III_stereo): Guard against overflowing the arrays by limiting the subband iterator to 576. 2007-06-05 Jan Schmidt * configure.ac: Add funrolling of the loops to the CFLAGS for a juicy speed boost. * decoder/decode.h: * decoder/mp3-c-synth.c: (mp3_SubBandSynthesis): * decoder/mp3-c.c: (III_get_scale_factors), (III_dequantize_sample), (inv_mdct_l), (inv_mdct), (III_hybrid), (c_decode_mp3): * decoder/mp3tl-priv.h: * decoder/mp3tl.c: (mp3tl_new), (mp3tl_decode_frame): Some fixes and optimisations, between that and funrolling loops, things are now 18% faster. * decoder/mp3-ipp.c: (decode_mp2), (ipp_decode_mp3), (mp3_SubBandSynthesis), (mp3_ipp_init), (mp3_ipp_flush), (mp3_ipp_close): Re-indent. 2007-06-01 Jan Schmidt * decoder/mp3-c.c: (III_get_side_info), (III_dequantize_sample): * decoder/table-powtable-2.h: * decoder/table-powtable.h: * util/Makefile.am: * util/gen-pow-table-2.c: (main): Speed the C-only decoder up by 38% by pre-calculating some stuff instead of doing it over and over in an inner loop. === release 0.10.6 === 2007-05-23 Jan Schmidt * decoder/mp3-c-synth.c: (III_polyphase_matrix), (MPG_DCT_8): Use a temp array to turn 8 additions and 4 subtractions into 6 additions and 2 subtractions. * decoder/mp3-c.c: (III_huffman_decode): Avoid a false assertion that occurs when we don't have any bigvalues or count1 bits to decode. Fixes #18. 2007-05-18 Jan Schmidt * decoder/flump3dec.c: (flump3dec_init), (flump3dec_reset), (flump3dec_flush), (flump3dec_sink_chain), (gst_flump3dec_update_ts), (flump3dec_drain_avail), (flump3dec_change_state): * decoder/flump3dec.h: * decoder/mp3tl.c: (mp3tl_decode_header): Fix timestamp handling so that incoming timestamps always get applied at the correct time. Add a threshold for accepting incoming timestamps - updates below the threshold are ignored, to avoid problems with the timestamping granularity of container formats. 2007-03-19 Jan Schmidt * configure.ac: Make liboil use OFF by default. Enable it with --enable-liboil. 2007-03-12 Jan Schmidt * decoder/flump3dec.c: (flump3dec_src_query), (flump3dec_src_convert), (flump3dec_time_to_bytepos), (flump3dec_src_event): Don't convert all upstream seeks to open-ended ones. Preserve -1 as a valid value for seek start and end instead of converting it blindly to time and bytes. 2007-02-28 Thomas Vander Stichele * Makefile.am: * autogen.sh: * configure.ac: adapt to new AG_GST and pull in new common common 2007-02-18 Jan Schmidt * decoder/table-powtable.h: Oops, commit the power factors table too. 2007-02-18 Jan Schmidt * Makefile.am: * configure.ac: * decoder/Makefile.am: * decoder/bitstream.c: (bs_getbytes), (h_setbuf): * decoder/bitstream.h: * decoder/mp3-c-synth.c: * decoder/mp3-c.c: (III_get_side_info), (III_dequantize_sample), (c_decode_mp3), (mp3_c_init), (mp3_c_flush): * decoder/mp3-c.h: * decoder/mp3-ipp.c: (ipp_decode_mp3), (mp3_ipp_init), (mp3_ipp_flush), (mp3_ipp_close): * decoder/mp3-ipp.h: * decoder/mp3tl-priv.h: * decoder/mp3tl.c: (mp3tl_new), (mp3tl_free), (mp3tl_decode_header), (mp3tl_decode_frame), (mp3tl_flush): Merge back pre-computed power factor table from the rework branch. Re-arrange the decoder backend so that the C implementation is always available, and use it for decoding "MPEG 2.5" even with IPP. Do more efficient bitstream operations by copying arrays of bytes directly into the huffman bitstream instead of a byte at a time. Use the simpler 'huffman bitstream' object where we can. * util/Makefile.am: * util/gen-pow-table.c: (main): Utility for computing the power factor table. 2007-02-16 Jan Schmidt * configure.ac: * decoder/Makefile.am: Add support for using liboil in the C build. * decoder/flump3dec.c: (flump3dec_base_init), (flump3dec_drain_avail): Change the reported codec tag string to 'MPEG 1/2 Audio, Layer 1/2/3' so it shows more info. Make the element details show which build (IPP,liboil,C) is in use. * decoder/mp3-c-synth.c: (mp3_SubBandSynthesis): * decoder/mp3-c.c: (inv_mdct_s), (mp3_init): * decoder/table-dewindow.h: Use liboil in one place to do an array multiply. 2007-02-13 Mathieu Garcia * decoder/flump3dec.c (flump3dec_drain_avail): Post less often the bitrate tag (> 10kbps change) 2007-02-12 Mathieu Garcia * decoder/flump3dec.c (flump3dec_change_state): (flump3dec_drain_avail): * decoder/flump3dec.h (struct FluMp3Dec): Now we post the bitrate tag. * decoder/flump3dec.c (flump3dec_drain_avail): Set the GST_TAG_AUDIO_CODEC. 2007-01-31 Christian Schaller * decoder/flump3dec.c: Fix codec classification Audio/Decoder -> Codec/Decoder/Audio === release 0.10.5 === 2006-12-12 Jan Schmidt * decoder/common.h: * decoder/flump3dec.c: (flump3dec_get_query_types): * decoder/huffman.c: * decoder/mp3-c-synth.c: (mp3_SubBandSynthesis): * decoder/mp3-c.c: (III_get_side_info), (III_frequency_inversion), (mp3_close): * decoder/mp3tl-priv.h: Fix compilation on the Sun Studio compiler === release 0.10.4 === 2006-11-28 Jan Schmidt * decoder/bitstream.c: (bs_new): * decoder/decode.c: (set_hdr_data_slots): * decoder/mp3-c.c: (III_get_LSF_scale_factors), (III_huffman_decode), (III_dequantize_sample), (III_reorder), (III_stereo), (decode_mp3): Implement MPEG-2.5 samplerates. * decoder/mp3tl.c: (mp3tl_decode_header): Ignore the incoming table of frame sizes and pass all data including possibly auxilliary bits to the decoder for now. 2006-11-21 Jan Schmidt * decoder/flump3dec.c: (flump3dec_init): Don't leak pad templates. 2006-11-20 Jan Schmidt Merge back revisions 601 thru 605 from the gst-fluendo-mp3-rework branch 2006-11-20 Jan Schmidt * decoder/mp3-c-synth.c: (III_subband_synthesis), (mp3_SubBandSynthesis): Rearrange things slightly, so Layer 2 and Layer 3 decoding also use the new synthesis function. 2006-11-20 Jan Schmidt * decoder/Makefile.am: * decoder/mp3-c-synth.c: (III_subband_synthesis), (III_polyphase_matrix), (MPG_DCT_32), (MPG_DCT_16), (MPG_DCT_8), (mp3_SubBandSynthesis): * decoder/mp3-c.c: * decoder/mp3-c.h: * decoder/mp3-cos-tables.h: * decoder/mp3tl-priv.h: * decoder/mp3tl.c: (mp3tl_decode_frame): Move synthesis/dct functions out to a separate file. Fix decoding by using the correct entry from the synth_cos64_table lookup table. 2006-11-20 Jan Schmidt * decoder/Makefile.am: * decoder/mp3-c.c: (decode_mp3), (III_subband_synthesis), (III_polyphase_matrix), (MPG_DCT_32), (MPG_DCT_16), (MPG_DCT_8), (mp3_SubBandSynthesis): * decoder/mp3-cos-tables.h: * decoder/mp3tl-priv.h: * decoder/mp3tl.c: (mp3tl_decode_frame): Optimise polyphase filter bank by using a partially hand-unrolled 32-point DCT. 2006-11-19 Jan Schmidt * decoder/Makefile.am: * decoder/mp3-c.c: (inv_mdct), (init_mdct), (III_frequency_inversion), (decode_mp3), (mp3_init): Clean up old, slow code branches. === release 0.10.3 === 2006-09-07 Jan Schmidt * decoder/flump3dec.c: (flump3dec_change_state): Patch from Sebastian Moutte to fix setting caps on the src pad when reusing the element (Closes #5) 2006-09-06 Jan Schmidt * decoder/bitstream.h: * decoder/common.h: * decoder/decode.c: (II_dequant_and_scale_sample): * decoder/flump3dec.c: (flump3dec_get_type), (flump3dec_base_init), (flump3dec_check_for_xing), (flump3dec_drain_avail), (flump3dec_get_query_types): * decoder/huffman.c: (huffman_decoder): * decoder/mp3-c.c: (III_get_side_info), (III_get_scale_factors), (III_get_LSF_scale_data), (III_get_LSF_scale_factors), (III_huffman_decode), (III_dequantize_sample), (III_antialias), (decode_mp3), (mp3_SubBandSynthesis), (mp3_init), (mp3_flush), (mp3_close): * decoder/mp3-c.h: * decoder/mp3tl-priv.h: * decoder/mp3tl.c: (mp3tl_sync), (mp3tl_decode_frame): * decoder/table-huffdec.h: Clean ups and bug fixes. Change the way the main_data buffer is calculate to eliminate a state variable. Fix a nasty array index overflow that was resulting in noise in the left channel for some builds only. Fix all -Wextra warnings 2006-08-25 Wim Taymans * decoder/flump3dec.c: (flump3dec_drain_avail), (flump3dec_sink_event): Output the first frame before the second frame instead at EOS. 2006-08-18 Jan Schmidt * configure.ac: Build against IPP for x86_64, and support IPP 5.0 & 5.1 * decoder/mp3-c.c: (mp3_SubBandSynthesis): Fix the float -> int16 conversion so it doesn't overflow === release 0.10.2 ==== 2006-04-06 Jan Schmidt * decoder/mp3-ipp.c: (mp3_SubBandSynthesis): Fix unused variable warning === release 0.10.1 === 2006-02-08 Jan Schmidt * configure.ac: Bump to 0.10.1 * decoder/flump3dec.c: (flump3dec_check_for_xing), (flump3dec_drain_avail): Also recognise LAME Info header for Xing data 2006-02-01 Andy Wingo * decoder/decode.c (out_fifo): pcm_sample[][][] is already in native endianness, no need to convert. Fixes playback on PPC. * configure.ac (GST_ERROR): AC_SUBST this so the makefiles pick it up. Turns on -Wall/-Werror. * decoder/flump3dec.c (flump3dec_total_time) (flump3dec_total_bytes): "control reaches end of non-void function" * decoder/decode.c (II_buffer_sample): * decoder/mp3tl.c (mp3tl_decode_frame): * decoder/flump3dec.c (flump3dec_total_time): "unused variables" === release 0.10.0 === 2005-12-21 Jan Schmidt * decoder/decode.c: (read_header): Remove bogus comment * decoder/mp3-c.c: (III_huffman_decode), (III_dequantize_sample), (III_reorder), (III_stereo): Fix incorrect usage of the hdr version value - it now takes 4 values to recognise MPEG-2.5, instead of a single bit. 2005-12-21 Jan Schmidt * decoder/mp3-c.c: (III_get_side_info), (III_stereo), (decode_mp3): Replace remaining MPEG_PHASE2_LSF uses 2005-12-20 Jan Schmidt * decoder/bitstream.c: (bs_nextbuf), (bs_seek_sync): * decoder/bitstream.h: Rewrite sync function to recognise MPEG 2.5 unofficial sync sequences, and to be more efficient. * decoder/common.c: (II_pick_table): * decoder/common.h: * decoder/decode.c: (read_header), (set_hdr_data_slots): * decoder/flump3dec.c: (flump3dec_check_for_xing), (flump3dec_drain_avail), (flump3dec_src_query), (flump3dec_src_convert), (flump3dec_src_event): * decoder/mp3-ipp.c: (decode_mp3): * decoder/mp3tl-priv.h: * decoder/mp3tl.c: (mp3tl_sync), (mp3tl_decode_header), (mp3tl_decode_frame), (mp3tl_skip_frame), (mp3tl_get_err_reason): * decoder/mp3tl.h: Recognise MPEG 2.5 streams and report that they're currently not supported. Implement skip function that tracks timestamps etc when not decoding unwanted output audio. Cleanups, more debug output Use gst_pad_get_parent in query and seek handling functions. 2005-12-09 Jan Schmidt * COPYING: Mention Intel copyright on some files. * TODO: Remove todo item * decoder/bitstream.c: * decoder/bitstream.h: * decoder/common.c: * decoder/common.h: * decoder/decode.c: * decoder/decode.h: * decoder/huffman.c: * decoder/huffman.h: * decoder/mp3-c.c: * decoder/mp3-c.h: * decoder/mp3tl.c: * decoder/table-bitalloc.h: * decoder/table-dewindow.h: * decoder/table-huffdec.h: Add copyright header to all files 2005-12-09 Jan Schmidt * decoder/mp3-ipp.c: * decoder/mp3-ipp.h: Add Intel copyright header to IPP sample code 2005-12-09 Jan Schmidt * decoder/flump3dec.c: (flump3dec_sink_chain), (flump3dec_check_for_xing), (flump3dec_drain_avail), (flump3dec_change_state), (flump3_inbytes_to_time), (flump3dec_total_bytes), (flump3dec_total_time), (flump3dec_src_query), (flump3dec_src_convert), (flump3dec_src_event): * decoder/flump3dec.h: * decoder/mp3-ipp.c: (decode_mp3): * decoder/mp3tl.c: (mp3tl_sync): Implement Xing header handling === release 0.9.7 === 2005-12-02 Jan Schmidt * configure.ac: Bump for release 2005-12-02 Julien MOUTTE * configure.ac: Switch to 0.10. 2005-11-28 Jan Schmidt * decoder/mp3-c.c: (III_dequantize_sample), (III_reorder), (III_i_stereo_k_values), (III_stereo), (III_antialias), (inv_mdct_s), (inv_mdct_l), (imdct_9pt), (inv_mdct), (III_hybrid), (decode_mp3): Fix compilation without IPP. Use gfloats instead of gdoubles everywhere like the reference code used to. 2005-11-23 Jan Schmidt * decoder/flump3dec.c: (flump3dec_sink_event): No need to take the stream lock any more for serialised events 2005-11-18 Thomas Vander Stichele * configure.ac: back to TRUNK === release 0.9.5 === 2005-11-14 Thomas Vander Stichele * configure.ac: releasing 0.9.5, works with GStreamer 0.9.5 2005-11-10 Jan Schmidt * decoder/mp3-ipp.c: (mp3_SubBandSynthesis): Remove excess debug. * decoder/Makefile.am: * decoder/table-dewindow-ipp.h: Add new file for IPP dewindowing 2005-11-10 Jan Schmidt * configure.ac: Update library list * decoder/common.c: (II_pick_table), (hdr_to_frps): * decoder/common.h: * decoder/decode.c: (II_decode_bitalloc), (II_decode_scale), (I_buffer_sample), (II_buffer_sample), (II_dequant_and_scale_sample), (I_dequant_and_scale_sample), (init_syn_filter): * decoder/decode.h: * decoder/flump3dec.c: (flump3dec_init), (flump3dec_flush), (flump3dec_sink_chain), (flump3dec_drain_avail), (flump3dec_sink_event), (flump3_inbytes_to_time): * decoder/flump3dec.h: * decoder/mp3-c.c: (decode_mp3), (mp3_SubBandSynthesis), (mp3_init), (mp3_close): * decoder/mp3-ipp.c: (decode_mp2), (mp3_SubBandSynthesis), (mp3_init), (mp3_close): * decoder/mp3-ipp.h: * decoder/mp3tl-priv.h: * decoder/mp3tl.c: (mp3tl_new), (mp3tl_free), (mp3tl_sync), (mp3tl_decode_frame): Speed improvements for layer 1 and 2 decoding. Detection of bad CRC Recover a bad frame by duplicating the previous frame. New-segment fix. Output the final frame on EOS. * TODO: Update todos 2005-10-27 Edward Hervey * configure.ac: Package name fixed 2005-10-27 Edward Hervey * decoder/decode.c: Remove valgrind #include * autogen.sh: * configure.ac: Updated to use standard gst-autogen.sh * common/: * common/m4/: Updated to gstreamer common 2005-10-18 Wim Taymans * decoder/flump3dec.c: We use fixed caps. 2005-10-12 Julien MOUTTE * decoder/flump3dec.c: (flump3dec_sink_event): Fix for newsegment API changes. 2005-10-04 Thomas Vander Stichele * configure.ac: releasing 0.1.3, works with GStreamer 0.9.3 2005-08-30 Jan Schmidt * decoder/flmp3dec.c: (flmp3dec_drain_avail): OK - this time for sure :) 2005-08-30 Jan Schmidt * decoder/bitstream.c: (bs_seek_sync): * decoder/flmp3dec.c: (flmp3dec_sink_chain): Fixes for timestamp handling. Hopefully correct now. 2005-08-30 Jan Schmidt * decoder/Makefile.am: Rename plugin library to flump3. * decoder/bitstream.c: (bs_add_buffer), (bs_seek_sync), (bs_buf_time): * decoder/bitstream.h: * decoder/flmp3dec.c: (flmp3dec_base_init), (flmp3dec_init), (flmp3dec_flush), (flmp3dec_sink_chain), (flmp3dec_drain_avail): * decoder/flmp3dec.h: * decoder/mp3tl-priv.h: * decoder/mp3tl.c: (mp3tl_new), (mp3tl_sync), (mp3tl_decode_frame), (mp3tl_flush): * decoder/mp3tl.h: Add code to handle incoming timestamps as the timestamp of the frame for the first sync word contained in the buffer, as per mpeg PTS. 2005-08-11 Jan Schmidt * decoder/decode.c: (set_hdr_data_slots): Fix slot calculations for LSF mpeg audio. * decoder/flmp3dec.c: (flmp3dec_sink_chain), (flmp3dec_sink_event): Change timestamp handling. Only trust upstream timestamps if we don't have one of our own. * decoder/mp3-ipp.c: (decode_mp3): Remove debug 2005-08-09 Jan Schmidt * configure.ac: Fiddle with IPP detection bits. By default, use IPP if found in /opt/intel/ipp, or with --with-ipp-path=/foo/bar * decoder/bitstream.c: (bs_seek_sync): * decoder/bitstream.h: Fix irritating bug when skipping over bits that ate 1 byte too much. * decoder/common.h: * decoder/decode.c: (set_hdr_data_slots), (recover_CRC_error): * decoder/decode.h: * decoder/mp3-c.h: * decoder/mp3-c.c: (III_get_side_info), (III_get_scale_factors), (III_get_LSF_scale_data), (III_get_LSF_scale_factors), (III_huffman_decode), (III_dequantize_sample), (III_reorder), (III_i_stereo_k_values), (III_stereo), (III_antialias), (inv_mdct_s), (inv_mdct_l), (imdct_9pt), (inv_mdct), (init_hybrid), (III_hybrid), (decode_mp3), (mp3_init), (mp3_flush): * decoder/mp3-ipp.c: (decode_mp3), (mp3_init), (mp3_flush): * decoder/mp3tl-priv.h: * decoder/mp3tl.c: (mp3tl_new), (mp3tl_sync), (mp3tl_decode_frame), (mp3tl_flush): Better resync algorithm for location frame synchronisation point. Shift a bunch of C-implementation only stuff into mp3-c.c and mp3-c.h to make the code cleaner. 2005-08-08 Christian Schaller * Add result message for IPP 2005-08-04 Jan Schmidt * configure.ac: * decoder/Makefile.am: Rearrange detection of IPP slightly, and add extra libraries * decoder/common.h: * decoder/decode.c: (set_hdr_data_slots): * decoder/decode.h: * decoder/mp3-ipp.c: (decode_mp3): * decoder/mp3-ipp.h: * decoder/mp3tl-priv.h: * decoder/mp3tl.c: (mp3tl_sync), (mp3tl_decode_header), (mp3tl_decode_frame): Merge in IPP branch. Can now selectively build IPP version or C only 2005-08-3 Christian Schaller * configure.in: add check for IPP * decoder/Makefile.am: add ipp stuff 2005-07-29 Jan Schmidt * decoder/common.h: * decoder/decode.c: (III_get_side_info), (III_get_scale_factors), (III_get_LSF_scale_data), (III_get_LSF_scale_factors), (III_huffman_decode), (III_dequantize_sample): * decoder/mp3tl.c: (mp3tl_decode_frame): Clean up some of the code a bit for readability. * decoder/flmp3dec.c: (flmp3dec_sink_event), (flmp3dec_src_event): Update for new events API. 2005-07-15 Jan Schmidt * test/layer3/: Add mp3 compliance test files. 2005-07-15 Jan Schmidt * TODO: * decoder/common.h: * decoder/decode.c: (III_get_scale_factors), (III_get_LSF_scale_data), (III_get_LSF_scale_factors), (III_huffman_decode), (III_dequantize_sample), (III_reorder), (III_stereo), (III_antialias), (inv_mdct_s), (inv_mdct_l), (imdct_9pt), (inv_mdct), (III_hybrid): * decoder/decoder.h: * decoder/huffman.c: (huffman_decoder): Profiling and optimisation of IMDCT. Valgrind fixes. * decoder/flmp3dec.c: (flmp3dec_init), (flmp3dec_sink_chain), (flmp3dec_sink_event), (flmp3dec_src_query), (flmp3dec_src_event): * decoder/flmp3dec.h: * decoder/mp3tl.c: (mp3tl_sync), (mp3tl_decode_frame), (mp3tl_flush): Better re-synchronisation and bad-frame handling. Seeking/querying fixes. 2005-07-08 Christian Schaller * Add SPEC file for RPM building * Update COPYING file to use MIT license * Add COPYING_statement which clarifies some issues around the MIT license 2005-06-14 Jan Schmidt * decoder/flmp3dec.c: (flmp3dec_sink_chain), (flmp3dec_sink_event), (flmp3_inbytes_to_time), (flmp3dec_src_query), (flmp3dec_src_event): * decoder/mp3tl.c: (mp3tl_decode_frame): Seeking changes. Some temporary debug output. Fixes for API changes. 2005-06-01 Jan Schmidt * decoder/bitstream.c: (bs_new), (bs_free), (bs_flush), (bs_add_buffer), (bs_reset), (bs_eat), (bs_consume), (bs_skipbits), (bs_nextbuf), (bs_seek_sync): * decoder/bitstream.h: * decoder/common.h: * decoder/decode.c: (read_header), (main_data_slots), (III_get_side_info), (III_get_LSF_scale_data), (III_get_LSF_scale_factors), (III_huffman_decode), (III_dequantize_sample), (III_reorder), (III_i_stereo_k_values), (III_stereo), (III_antialias), (inv_mdct): * decoder/decoder.h: * decoder/flmp3dec.c: (flmp3dec_sink_chain), (flmp3dec_sink_event), (flmp3dec_src_query): * decoder/huffman.c: * decoder/mp3tl.c: (mp3tl_new), (mp3tl_sync), (mp3tl_decode_header), (mp3tl_decode_frame), (mp3tl_flush): * decoder/mp3tl.h: * decoder/table-bitalloc.h: * decoder/table-dewindow.h: Refactor the bitstream reader so we can peek ahead, allowing better resynching after a seek. Sometimes seeking works now. Remove a few static variables I missed. 2005-05-29 Jan Schmidt * TODO: * decoder/Makefile.am: * decoder/bitstream.c: (bs_new), (bs_free), (bs_flush), (bs_set_release_func), (bs_add_buffer), (bs_nextbuf), (bs_seek_sync), (h_init), (h_flush), (h_rewindNbits), (h_rewindNbytes): * decoder/bitstream.h: * decoder/common.c: * decoder/common.h: * decoder/flmp3dec.c: (flmp3dec_init), (flmp3dec_flush), (flmp3dec_sink_chain), (flmp3dec_sink_event), (flmp3dec_change_state), (flmp3dec_get_query_types), (flmp3dec_src_query), (flmp3dec_src_convert), (flmp3dec_src_event): * decoder/flmp3dec.h: * decoder/mp3tl.c: (mp3tl_decode_frame), (mp3tl_flush): * decoder/mp3tl.h: Move bitstream handling into its own file. Bitrate tracking, querying and seek handling. Currently doesn't resync after a seek though. 2005-05-26 Jan Schmidt Initial commit