summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2015-01-26* src/mp3-c-synth.c:jep2-12/+12
* src/mp3-c.c: (inv_mdct_l), (inv_mdct), (III_hybrid): Make the conditionals to turn on assembly optimization depend only in our own compilation flag. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2670 2b0047a9-a6d8-0310-accf-f7200b2a168c
2014-12-16* src/mp3-c.c:jep1-10/+10
Fix a warning about undefined behaviour when building with gcc 4.9.1. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2669 2b0047a9-a6d8-0310-accf-f7200b2a168c
2014-10-29* src/mp3-c.c: (c_decode_mp3):jep1-11/+19
Perform same testing for Main data in both variants of decoder. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2641 2b0047a9-a6d8-0310-accf-f7200b2a168c
2014-10-10* src/mp3tl.c: (mp3tl_gather_frame):jep1-1/+0
Drop a dead assignment. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2634 2b0047a9-a6d8-0310-accf-f7200b2a168c
2014-10-10* src/flump3dec-0_10.c: (gst_flump3dec_src_event):jep1-0/+1
Add missing break statement. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2633 2b0047a9-a6d8-0310-accf-f7200b2a168c
2014-10-09* src/mp3-c.c: (III_huffman_decode):jep1-13/+10
Fixes a noise issue in a MPEG 2.5 clip. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2632 2b0047a9-a6d8-0310-accf-f7200b2a168c
2014-09-18* configure.ac: drop missed reference to liboil.jep2-2/+11
* src/mp3-ipp.c: (ipp_decode_mp3): * src/mp3tl.c: (mp3tl_decode_frame): Ensure to consume data from our bitreader when there's a bad frame. Fixes random not negotiatied and noise issues after a seek. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2629 2b0047a9-a6d8-0310-accf-f7200b2a168c
2014-08-292014-08-29 Julien Moutte <julien@fluendo.com>dolphy1-1/+1
* src/mp3-c.c: (c_decode_mp3): When no previous frame is usable for decoding we need to return NEED_DATA instead of BAD_FRAME. Indeed we would never be able to recover after a seek. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2628 2b0047a9-a6d8-0310-accf-f7200b2a168c
2014-06-25* src/bitstream.c: (h_rewindNbits):jep1-1/+4
Avoid a segfault on some corrupted clips. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2622 2b0047a9-a6d8-0310-accf-f7200b2a168c
2014-05-20* src/flump3dec-0_10.c: (_update_ts), (gst_flump3dec_decode),jep1-9/+26
(gst_flump3dec_sink_chain): Fix tracking of input timestamps. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2612 2b0047a9-a6d8-0310-accf-f7200b2a168c
2014-05-152014-05-15 Julien Moutte <julien@fluendo.com>dolphy1-1/+0
* src/mp3-c.c: Remove unused variable. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2611 2b0047a9-a6d8-0310-accf-f7200b2a168c
2014-04-02* configure.ac:jep4-38/+2
* src/Makefile.am: * src/flump3dec.c: * src/mp3-c-synth.c: (mp3_dewindow_output): * src/mp3-c.c: (inv_mdct_l), (inv_mdct), (III_hybrid), (mp3_c_init): Drop liboil support. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2602 2b0047a9-a6d8-0310-accf-f7200b2a168c
2014-02-242014-02-24 Julien Moutte <julien@fluendo.com>dolphy1-6/+6
* src/flump3dec-0_10.c: Make sure we provide the incoming timestamp to the decoding function. This fixes some A/V sync issues where the MP3 decoder was ignoring incoming timestamps and generating a perfectly continuous stream. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2578 2b0047a9-a6d8-0310-accf-f7200b2a168c
2014-01-31* src/mp3-c-synth.c:amorales1-1/+1
Remove alignement hint (reviewed by Josep) git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2576 2b0047a9-a6d8-0310-accf-f7200b2a168c
2013-11-12* src/src/mp3-c.c::amorales1-1/+3
Fix compiler warning with clang: mp3-c.c:1669:64: error: comparison of unsigned expression < 0 is always false git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2524 2b0047a9-a6d8-0310-accf-f7200b2a168c
2013-09-03* src/bitstream.c: (h_rewindNbits):jep1-5/+5
Fixes decoding noise when dealing with slighly wrong encoded frames with a missmatch between huffman read bits and size described in header. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2503 2b0047a9-a6d8-0310-accf-f7200b2a168c
2013-09-03* src/mp3-c.c: (III_huffman_decode), (III_dequantize_sample),jep2-44/+33
(c_decode_mp3): * src/mp3-ipp.c: (ipp_decode_mp3): Improve a little the debugging code. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2502 2b0047a9-a6d8-0310-accf-f7200b2a168c
2013-09-03* src/flump3dec-1_0.c: (gst_flump3dec_parse):jep2-0/+5
* src/mp3tl.c: (mp3tl_gather_frame): For GStreamer 1.0 ensure to skip invalid frames like we do in GStreamer 0.10. Allows to play mp3 files with ID3 tags directly without confusing our decoder with mp3 sync codes in the ID3 data. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2501 2b0047a9-a6d8-0310-accf-f7200b2a168c
2013-09-03* src/bitstream.c: (bs_seek_sync):jep1-1/+1
Ensure not to read outside our buffer memory. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2500 2b0047a9-a6d8-0310-accf-f7200b2a168c
2013-09-02* src/mp3-c.c: (III_huffman_decode):jep1-5/+13
Fixes decoding of some mpeg 2.5 clips. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2499 2b0047a9-a6d8-0310-accf-f7200b2a168c
2013-09-02* src/mp3-c.c: (III_dequantize_sample):jep2-3/+3
* src/mp3-ipp.c: (ipp_decode_mp3): Fix debugging code. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2498 2b0047a9-a6d8-0310-accf-f7200b2a168c
2013-08-24* src/mp3-c.c: (III_huffman_decode), (III_dequantize_sample),jep2-2/+62
(c_decode_mp3): * src/mp3-ipp.c: (ipp_decode_mp3): Add some debugging code. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2492 2b0047a9-a6d8-0310-accf-f7200b2a168c
2013-08-01* src/mp3tl-priv.h:jep1-3/+3
Ensure alignment in memory required for Neon assembly optimized path. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2491 2b0047a9-a6d8-0310-accf-f7200b2a168c
2013-02-19* src/mp3tl.c:amorales1-1/+1
Fix format error, where frame_bits is a guint git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2450 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-10-11* src/Makefile.am:jep7-1014/+1400
* 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 git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2394 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-10-11* src/bitstream.c: (bs_set_data):jep1-0/+1
Ensure to reset the bit position too. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2393 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-10-10* src/bitstream.c: (bs_set_data):jep5-176/+172
* 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. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2392 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-10-10* src/bitstream.c: (bs_seek_sync):jep3-42/+41
* 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. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2391 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-10-09* src/flump3dec.c: (_reset), (_update_ts), (_conv_bytes_to_time),jep1-276/+254
(_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. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2390 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-10-09* src/bitstream.c: (bs_new), (bs_free), (bs_flush), (bs_set_data),jep8-309/+182
(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. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2389 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-10-09* src/flump3dec.c: (gst_flump3dec_change_state),jep1-46/+18
(gst_flump3dec_class_init), (gst_flump3dec_init): Drop _base_init and modernize some bits of code. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2386 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-10-09* configure.ac:jep1-6/+20
* src/Makefile.am: Prepare autotools part to handle 1.0 code. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2383 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-10-09* src/bitstream.c: (bs_free_buffer), (bs_add_buffer):jep3-176/+3
* 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. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2381 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-09-03* src/flump3dec.c: (gst_flump3dec_decode):jep1-1/+2
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. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2335 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-08-28* src/flump3dec.c: (gst_flump3dec_decode):jep1-2/+0
Remove wrong gst_object_unref lines missed during refactoring for 0.11 exeperiments. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2334 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-08-22* src/bitstream.c: (h_setbuf), (h_reset):jep4-12/+30
* src/bitstream.h: * src/mp3-c.c: (mp3_c_flush): * src/mp3tl.c: (mp3tl_flush): Flush the decoder some more. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2333 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-07-04* src/mp3tl-priv.h:jep2-2/+7
* 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. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2324 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-07-032012-07-03 Andoni Morales Alastruey <amorales@fluendo.com>amorales1-1/+5
* src/Makefile.am: Don't link with ipp in the static build to avoid duplicated symbols in the final binary git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2323 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-05-31* configure.ac:jep1-9/+16
* src/Makefile.am: Use the new macro AG_NEED_IPP in the configure script. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2315 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-05-16* src/bitstream.c: (bs_getbytes):jep6-9/+13
* 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. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2303 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-05-16* src/mp3tl.c: (mp3tl_decode_frame):jep1-1/+1
Make the code more portable. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2302 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-05-16* configure.ac:jep1-1/+1
* src/Makefile.am: Properly handle ERROR_CFLAGS to not miss warnings if CFLAGS is redefined in the make run. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2301 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-05-16* src/mp3-c-synth.c: (mp3_SubBandSynthesis):jep1-1/+2
Fix a warning introduced in my recent commit on Neon optimizations. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2300 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-05-16* src/Makefile.am:jep5-34/+4
* 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. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2299 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-05-15* src/common.h:jep3-54/+363
* 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. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2284 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-05-07* src/gst_compat.h:jep1-0/+27
Add missing new file in my previous commit. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2280 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-05-07* src/Makefile.am:jep5-44/+23
* src/bitstream.h: * src/common.h: * src/flump3dec.c: * src/flump3dec.h: Fixes build with GStreamer prior to 0.10.18. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2279 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-04-30* src/bitstream.c: (h_setbuf):jep3-6/+6
* src/common.c: (II_pick_table): * src/flump3dec.c: (gst_flump3dec_decode): Fix some dead code reported by Clang Static Analyzer. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2275 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-04-22* src/bitstream.h:jep1-1/+1
Fix a copy&paste error. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2274 2b0047a9-a6d8-0310-accf-f7200b2a168c
2012-04-22* src/bitstream.h:jep1-26/+47
Fix some more bugs in the optimized path and reenable it again. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2273 2b0047a9-a6d8-0310-accf-f7200b2a168c