summaryrefslogtreecommitdiff
path: root/src/combined/ffmpeg
AgeCommit message (Collapse)Author
2011-09-15ffmpeg audio: make sure context is allocated only oncePetri Hintukainen
imported patch 10115.diff
2011-09-16Fixed "warning: cast from pointer to integer of different size"Petri Hintukainen
2011-09-16Simplify: check for BUF_FLAG_SPECIAL only once. Splitted special buffer ↵Petri Hintukainen
handling to separate function.
2011-08-23Merge from 1.1.Darren Salt
--HG-- rename : src/xine-engine/buffer.h => include/xine/buffer.h rename : src/libxineadec/xine_lpcm_decoder.c => src/audio_dec/xine_lpcm_decoder.c rename : src/libspuhdmv/xine_hdmv_decoder.c => src/spu_dec/spuhdmv_decoder.c
2011-08-13rv30 & rv40 supportTorsten Jager
2011-08-13VP8 supportTorsten Jager
2011-08-13ffmpeg audio crash fix (sse2 alignment)Torsten Jager
Certain ffmpeg audio decoders use 32 bit float samples internally (wma, eac3, ...). They are then exported to the calling application as 16 bit integer. That conversion is done by faster sse2 code if your processor supports it. However, sse2 instructions require data buffers to be 16 byte aligned, or hit a segfault otherwise. Plain malloc() / realloc() ensures only 8 byte alignment, giving a 50% chance of a crash. FFmpeg internally uses aligned buffers a lot. It seems to be a good idea to do likewise for input buffers as well, even if current version does not strictly need it yet. Libavutil/av_realloc() has a bug that can break the alignment when enlarging an existing buffer. Thus I included a fixed version of it within ff_audio_decoder.c.
2011-09-10Not every audio packet can be used to determine the sample rate and number ofChris Rankin
audio channels. So we must keep discarding packets that cannot be used to initialise the codec until we receive one that can be.
2011-09-10Pad end of audio data buffer with zeros, as instructed by the API documentation.Chris Rankin
2011-09-10Use xine's fast memcpy function instead of standard library one.Chris Rankin
2011-09-10Optimise flags usage.Chris Rankin
2011-09-10Tidy up flags usage.Chris Rankin
2011-08-29Add AAC LATM support from FFmpeg 0.7+Chris Rankin
I've now tested this patch on Fedora 15 (FFmpeg 0.7) and Fedora 14 (FFmpeg 0.6), and am happy to report that it works fine on F15 and doesn't break xine-lib on F14. On F14, it also has the happy side effect of no longer trying to decode an LATM AAC stream with the xineplug_decode_faad.so plugin. (Which was something which never ended well anyway.)
2011-08-09Cosmetics: reordered functionsPetri Hintukainen
2011-08-09ffmpeg VC-1: scan for extradata (sequence header) from preview buffersPetri Hintukainen
2011-08-14Fixed multithreaded decoding with lavc >= 52.112.0.Petri Hintukainen
avcodec_thread_init() was deprecated in lavc 52.112.0 (2011-02-09)
2011-05-17Fix build with very recent copies of FFmpegBrad Smith
This is a backport of the 1.2 code that was commited to utilize the new API provided by FFmpeg for awhile now but this is especially important because the old API has been eliminated all together from said copies of FFmpeg.
2011-05-17Use "quietened" build if automake 1.11 was used.Darren Salt
2011-05-16Complete the adaptation to libavcodec 0.7. (Hopefully.)Darren Salt
2011-05-16Fix up "pp" post-proc plugin and A/V decoding for ffmpeg 0.7.Darren Salt
2011-02-16Make ff_video_decoder work together with input_vdr.c for MPEG2.Reinhard Nißl
input_vdr.c cannot send buffers with preview flag set after a decoder reset. Therefore, the decoder didn't get initialized anymore. So we need to call ff_handle_preview_buffer() even with real data as long as we are in decoder_init_mode to get a decoder initialized.
2010-03-24Merge from 1.1.Darren Salt
--HG-- rename : doc/hackersguide/internals.sgml => doc/hackersguide/internals.docbook rename : doc/hackersguide/library.sgml => doc/hackersguide/library.docbook rename : include/xine.h.in => include/xine.h rename : src/xine-engine/buffer.h => include/xine/buffer.h rename : src/demuxers/demux_ogg.c => src/combined/xine_ogg_demuxer.c
2010-03-23Added new audio buffer type (EAC3)Petri Hintukainen
2010-03-23Fixed using uninitialized decode_buffer_sizePetri Hintukainen
2010-03-14Merge from 1.1.Darren Salt
--HG-- rename : src/libspudec/xine_spu_decoder.c => src/spu_dec/spu_decoder.c rename : src/libspudec/spu.c => src/spu_dec/spudec.c rename : src/libspudec/spu.h => src/spu_dec/spudec.h
2010-03-10Handle odd widths properly (for ffmpeg-decoded video).Darren Salt
2010-02-25Fix build with the old, outdated and deprecated internal ffmpeg.Darren Salt
2010-02-23Merge from 1.1.Darren Salt
--HG-- rename : src/xine-engine/buffer.h => include/xine/buffer.h rename : src/libxineadec/xine_lpcm_decoder.c => src/audio_dec/xine_lpcm_decoder.c
2010-02-21WMAPro supportChristopher Martin
Rename "wmav3" to "wmapro" in xine-lib's internals to line up xine-lib's nomenclature with what everyone else calls it and knows it as. [Tweaked by ds to avoid API change.] Tell xine-lib that when it finds wmapro, look to ffmpeg. ffmpeg's wmapro decoder is unique in that it puts out samples that are floats, not 16-bit ints. These need to be converted. This requires external ffmpeg.
2010-02-04Work around an ffmpeg SVQ3 bug; check for avcodec_thread_init failure.Darren Salt
2010-01-21Undo libavutil workaround (fixed upstream).Darren Salt
2010-01-17Cope with libavutil no longer defining some endian-specific macros.Darren Salt
2009-12-05Build fix (undefined symbol) for when using older ffmpeg.Darren Salt
2009-11-30Trim trailing space & reduce space+tab.Darren Salt
2009-11-17VC1 support fixesPetri Hintukainen
There are two tricks to make VC1 decoding work: 1) VC1 sequence and entry point headers must be present in context->extradata. 2) video width and height must be known when opening decoder. Some container formats store required extra data, but mpeg-ts does not. 1) is fixed by scanning the stream for headers and discarding all data until proper headers are found. 2) is fixed by re-opening decoder with width and height information from first open.
2009-10-15Quick hack to prevent segfaulting at end-of-stream when this->context == NULL.Darren Salt
2010-02-06Merge from 1.1.Darren Salt
--HG-- rename : src/combined/decoder_wavpack.c => src/combined/wavpack_decoder.c rename : src/demuxers/demux_ogg.c => src/combined/xine_ogg_demuxer.c
2010-01-21Merge from 1.1.Darren Salt
2010-01-18Merge from 1.1.Darren Salt
2009-11-30Trim trailing space & reduce space+tab.Darren Salt
2009-11-19Merge from 1.1.Darren Salt
2009-11-05Merge from 1.1 (with adaptations).Darren Salt
--HG-- rename : src/xine-engine/scratch.h => include/xine/scratch.h rename : src/xine-utils/xmllexer.h => include/xine/xmllexer.h rename : src/xine-utils/xmlparser.h => include/xine/xmlparser.h rename : src/libspucmml/xine_cmml_decoder.c => src/spu_dec/cmml_decoder.c rename : src/libspuhdmv/xine_hdmv_decoder.c => src/spu_dec/spuhdmv_decoder.c
2009-04-03Merge from 1.1, discarding new "#if"s in ff_video_decoder.c.Darren Salt
2009-03-16Merge from 1.1.Darren Salt
--HG-- rename : src/libmpeg2new/Makefile.am => src/video_dec/libmpeg2new/Makefile.am rename : src/libmpeg2new/libmpeg2/Makefile.am => src/video_dec/libmpeg2new/libmpeg2/Makefile.am
2009-03-08Fix build with libavutil >= 50.0.0Alexis Ballier
PIX_FMT_RGBA32 was #defined to PIX_FMT_RGB32 since 2006.
2009-04-02Merge.Darren Salt
2009-04-02Fix up building with libavcodec.so.52 < 52.20.0.Darren Salt
2009-04-02FFmpeg: add support for reordered_opaque to custom get_buffer() implementation.Reinhard Nißl
After adding support for PTS reordering some time ago, any codecs using direct rendering did no longer pass PTS values to the images due to missing support for reordered_opaque in xine-lib's custom get_buffer() function. With this fix, A/V sync should now be as before or even better, due to PTS reordering (the intent of the earlier changesets).
2009-03-28Fix calculation of frame duration for ffmpeg-decoded formats.Reinhard Nißl
2009-03-28Report frame duration changes.Reinhard Nißl