Age | Commit message (Collapse) | Author | Files | Lines |
|
* 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
|
|
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
|
|
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
|
|
Drop a dead assignment.
git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2634 2b0047a9-a6d8-0310-accf-f7200b2a168c
|
|
Add missing break statement.
git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2633 2b0047a9-a6d8-0310-accf-f7200b2a168c
|
|
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
|
|
* 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
|
|
* 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
|
|
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
|
|
(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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
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
|
|
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
|
|
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
|
|
(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
|
|
* 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
|
|
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
|
|
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
|
|
* 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
|
|
(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
|
|
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
|
|
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
|
|
* 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
|
|
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
|
|
* 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
|
|
* 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
|
|
(_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
|
|
(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
|
|
(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
|
|
* 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
|
|
* 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
|
|
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
|
|
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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
Make the code more portable.
git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2302 2b0047a9-a6d8-0310-accf-f7200b2a168c
|
|
* 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
|
|
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
|
|
* 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
|
|
* 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
|
|
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
|
|
* 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
|
|
* 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
|
|
Fix a copy&paste error.
git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2274 2b0047a9-a6d8-0310-accf-f7200b2a168c
|
|
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
|