Age | Commit message (Collapse) | Author |
|
Supposed to be in milliseconds; totalframes is only approx. total seconds.
|
|
I don't think whoever wrote this played a TTA file all the way to the end.
|
|
* Return the correct stream length
* Return the current time
* Implement seeking
---
src/demuxers/demux_tta.c | 47 ++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 41 insertions(+), 6 deletions(-)
--HG--
extra : transplant_source : D%27%B7%5C%C4%95Ra%90E%DD%99IG%CF%5D%21%27zN
|
|
---
src/demuxers/demux_flac.c | 1 +
src/demuxers/demux_tta.c | 1 +
2 files changed, 2 insertions(+), 0 deletions(-)
--HG--
extra : transplant_source : C%21X%B8%E1p%D2%8E%E0%26%CA%3E%09%8B%09%16%19%C1CQ
|
|
I've noticed that a lot of the demuxers don't have mimetypes -- Nokia and
KDE's Phonon (when using the Xine backend, and consequently this bothers all
Amarok users) depend on the mimetypes to see what types of files it can
process.
This adds support for the True Audio data type, which scratches my itch; I'm
sure there are several other demuxers that need a similar change.
|
|
undefined.
|
|
|
|
|
|
the middle of PMT packets.
Parsing PAT resets PMT buffer. If PMT does not fit to single TS packet and
PAT packet is scheduled in middle of PMT packets, PMT is never parsed and TS
demuxer falls to PID auto detection mode.
This moves PMT buffer reset to the case where PMT PID changes and all PIDs
are reset. [As far as I can see, worst regression can be invalid PMT
sections when stream changes, new PMT pid equals to old one and demuxer is
not reset(?), but this should be OK as PMT checksums are always checked.]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This fixes a segfault which may occur when playing an MPEG4 stream.
|
|
|
|
|
|
|
|
--HG--
rename : src/combined/decoder_flac.c => src/combined/flac_decoder.c
|
|
|
|
|
|
|
|
send the pts to the decoders, even if the pes packet is just a continuation packet
|
|
|
|
--HG--
rename : src/libxineadec/xine_lpcm_decoder.c => src/audio_dec/xine_lpcm_decoder.c
|
|
|
|
--HG--
rename : include/xine.h.in => include/xine.h
rename : src/combined/decoder_flac.c => src/combined/flac_decoder.c
rename : src/libspuhdmv/xine_hdmv_decoder.c => src/spu_dec/spuhdmv_decoder.c
|
|
|
|
|
|
|
|
|
|
--HG--
rename : include/xine.h.in => include/xine.h
rename : src/xine-engine/osd.h => include/xine/osd.h
rename : src/xine-engine/video_out.h => include/xine/video_out.h
rename : src/libspudvb/xine_spudvb_decoder.c => src/spu_dec/spudvb_decoder.c
rename : src/libvdpau/Makefile.am => src/video_dec/libvdpau/Makefile.am
rename : src/libvdpau/bits_reader.h => src/video_dec/libvdpau/bits_reader.h
rename : src/libvdpau/dpb.c => src/video_dec/libvdpau/dpb.c
rename : src/libvdpau/dpb.h => src/video_dec/libvdpau/dpb.h
rename : src/libvdpau/h264_parser.c => src/video_dec/libvdpau/h264_parser.c
rename : src/libvdpau/h264_parser.h => src/video_dec/libvdpau/h264_parser.h
rename : src/libvdpau/nal.c => src/video_dec/libvdpau/nal.c
rename : src/libvdpau/nal.h => src/video_dec/libvdpau/nal.h
rename : src/libvdpau/vdpau_h264.c => src/video_dec/libvdpau/vdpau_h264.c
rename : src/libvdpau/vdpau_mpeg12.c => src/video_dec/libvdpau/vdpau_mpeg12.c
rename : src/libvdpau/vdpau_vc1.c => src/video_dec/libvdpau/vdpau_vc1.c
|
|
|
|
|
|
--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
|
|
Note that the Matroska and Bluray changes have only been compile-tested.
--HG--
rename : src/xine-engine/buffer.h => include/xine/buffer.h
rename : src/libspuhdmv/xine_hdmv_decoder.c => src/spu_dec/spuhdmv_decoder.c
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This adds the following functionality:
* Read segment title and uses that for display in a UI
There is an issue when the file does not specify a segment title. It will
then fall back to a generic "(No title)", since I could not find a way to
retrieve the file name the player shows.
* More implementation files
Added:
- demux_matroska.h
- demux_matroska_chapters.h
This breaks the OO-ish C visibility a bit, since there need to be public
(i.e. non-static) interfaces between the units.
* Chapter Handling
I did a rough initial implementation of Matroska's "editions" system. The
demuxer will parse all editions from the header, and for each edition the
top level of chapters. This is not quite the full spec as Matroska
intends, but it should work fine as long as there is only a single edition
and all editions/chapters only reference only one (the first and only)
segment in the stream, and are supposed to apply to all tracks therein.
When the stream has chapters, the demuxer will now handle skip events from
the player to jump between chapters.
|
|
|