Age | Commit message (Collapse) | Author |
|
Some MPEG-TS streams dont align ADTS to TS-PES,
pad ADTS frames to (nearly) fixed bitrate, and/or
wrongly flag all this as LATM.
Now the probing is more safe against ambigous input.
Somebody please test whether this still breaks real LATM.
|
|
|
|
Some MPEG-TS streams dont align ADTS to TS-PES,
pad ADTS frames to (nearly) fixed bitrate, and/or
wrongly flag all this as LATM.
Somebody please test whether this breaks real LATM.
|
|
|
|
|
|
|
|
Lavc v54,55 seems to ignore request_sample_fmt anyway,
but that need not stay that way forever.
|
|
I dont wanna lose my early 2000's videoteque.
Maybe this needs my upcoming demux_real audio fix for full functionality.
|
|
script execution time: 55"
|
|
* Observe channel configuration immediately after av_decode_audio* ().
Do not try to access nonexistant channels after a 5.1 -> 2.0 switch
for example.
* Add NULL plane pointer paranoia.
* Assume generic channel layout when no detailled one provided.
Needed for wma2.
* Follow user speaker arrangement changes on the fly.
* Defer opening audio out until we have something to play.
* Do not reopen audio out with identical settings. This and the
previous item should help avoiding waiting on some drivers.
* Hard wire output to int16_t. Some of the code did assume that,
and we are converting to that anyway.
* Do not read sample format from bits_per_coded_sample. Decoders
neither alter that field, nor do they force its value to their
output.
* Rename some vars for better readability.
|
|
Audio out was opened with bogus settings (1Hz != 0) which failed. This prevented
a retry after first audio frame came in and corrected the settings (48k/6
channels). Once ao _is_ open successfully, everything works same as before,
including further stream conf changes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
--HG--
rename : include/xine.h.in => include/xine.h
rename : src/xine-engine/xine_internal.h => include/xine/xine_internal.h
rename : src/combined/ffmpeg/ffmpeg_encoder.c => src/dxr3/ffmpeg_encoder.c
|
|
|
|
--HG--
rename : src/liba52/xine_a52_decoder.c => src/audio_dec/xine_a52_decoder.c
rename : src/libspudvb/xine_spudvb_decoder.c => src/spu_dec/spudvb_decoder.c
rename : src/libxinevdec/image.c => src/video_dec/image.c
|
|
|
|
--HG--
branch : point-release
|
|
|
|
--HG--
rename : src/libfaad/xine_faad_decoder.c => src/audio_dec/xine_faad_decoder.c
rename : src/libspudvb/xine_spudvb_decoder.c => src/spu_dec/spudvb_decoder.c
|
|
multiple audio packets in single PES packet and audio packets splitted to multiple PES packets.
|
|
|
|
try next. Fixes detecting parameters when there are multiple audio packets in single PES packet.
|
|
- 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)
|
|
|
|
--HG--
rename : src/libdts/xine_dts_decoder.c => src/audio_dec/xine_dts_decoder.c
rename : src/libmusepack/xine_musepack_decoder.c => src/audio_dec/xine_musepack_decoder.c
|
|
--HG--
rename : src/xine-engine/buffer.h => include/xine/buffer.h
|
|
This makes HEADERS optional for codecs that don't require extradata.
imported patch 10124.diff
|
|
imported patch 10123.diff
|
|
imported patch 10121.diff
|
|
imported patch 10120.diff
|
|
imported patch 10119.diff
|
|
imported patch 10116.diff
|
|
imported patch 10115.diff
|
|
|
|
handling to separate function.
|
|
--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
|
|
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.
|
|
audio channels. So we must keep discarding packets that cannot be used to
initialise the codec until we receive one that can be.
|
|
|
|
|
|
|
|
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.
|
|
|
|
--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
|
|
|