summaryrefslogtreecommitdiff
path: root/src/combined/ffmpeg
AgeCommit message (Collapse)Author
2011-11-02ff_audio_decoder: Use parser for AAC LATM and MPEG. Fixes streams with ↵Petri Hintukainen
multiple audio packets in single PES packet and audio packets splitted to multiple PES packets.
2011-11-02ff_audio_decoder: do not queue any data if opening audio output failsPetri Hintukainen
2011-11-02ff_audio_decoder: If codec parameters can't be read from first audio packet, ↵Petri Hintukainen
try next. Fixes detecting parameters when there are multiple audio packets in single PES packet.
2011-11-02ff_audio_decoder: open audio out after decoding the dataPetri Hintukainen
- Fixes detecting audio parameters when audio packet is splitted to multiple buffers - Simplifies the code (decode function is called only once for each audio frame)
2011-10-27ff_audio_decoder: splitted calling avcodec_decode_audio* to separate functionPetri Hintukainen
2011-09-27Fixed mpeg2 decoding with ffmpeg.Petri Hintukainen
Codec was never opened when using mpeg12 mode.
2011-09-27ff_audio_open_codec(): initialize codec if it hasn't been initialized.Petri Hintukainen
This makes HEADERS optional for codecs that don't require extradata. imported patch 10124.diff
2011-09-27Splitted ff_audio_open_codec() from ff_audio_decode_data()Petri Hintukainen
imported patch 10123.diff
2011-09-27Splitted ff_audio_init_codec() from ff_audio_handle_header_buffer()Petri Hintukainen
imported patch 10121.diff
2011-09-27Splitted ff_audio_handle_header_buffer() from ff_audio_decode_data()Petri Hintukainen
imported patch 10120.diff
2011-09-27ffmpeg audio: make sure decode_buffer is allocated only oncePetri Hintukainen
imported patch 10119.diff
2011-09-15ffmpeg audio: removed checks that are always true (context is allocated in init)Petri Hintukainen
imported patch 10116.diff
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-09-16ffmpeg video: do not require preview buffers for mpeg1/2Petri Hintukainen
2011-09-16Splitted ff_init_mpeg12_mode() from ff_handle_preview_buffer()Petri Hintukainen
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-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-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.
2010-03-23Added new audio buffer type (EAC3)Petri Hintukainen
2010-03-23Fixed using uninitialized decode_buffer_sizePetri Hintukainen
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-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
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
2009-03-08Fix build with libavutil >= 50.0.0Alexis Ballier
PIX_FMT_RGBA32 was #defined to PIX_FMT_RGB32 since 2006.
2009-02-13Fix a build failure on *BSD due to some rather useful GNUisms.Darren Salt
Their sed doesn't have \s and their tail doesn't handle -ve line counts.
2009-02-09demux_unstick_ao_loop() reports that xine might be stuck != is stuckLorenzo Desole
Don't give up immediately if demux_unstick_ao_loop() reports that xine might be stuck, because it's not necessarily so. According to my tests, this fixes http://bugs.kde.org/show_bug.cgi?id=180339#c42 and http://bugs.debian.org/514114. This has been tested with Amarok and kde 4.1.x (with phonon) and kaffeine.