Age | Commit message (Collapse) | Author |
|
Its resolution was in frames (+/- ~1 second), now it is calculated from the
number of samples, as it should be.
|
|
It can be the case that the header is larger than buf->max_size (8 kilobytes),
especially for slightly larger files. This sends them in parts so we don't
overfill the buffer.
|
|
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.
|
|
|
|
|
|
|
|
TRACE and ERROR are now prefixed with XINE_HDMV_.
|
|
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.]
|
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
Splitted decode_presentation_segment()
- Store presentation segments in decoder instance data.
- Try to update overlays after every decoded object.
|
|
|
|
|
|
|
|
show_overlay().
|
|
|
|
|
|
|
|
|
|
MSVC complained about a memset to a const object and all "long long"
variables that are GNU only. I fixed it by grouping the fields into a
structure and now even GCC is more happy.
|
|
|
|
The deadlock was caused by the unprotected use of
stream->demux_action_pending internal variable from play_internal() and from
within the demuxer loop.
Direct access to demux_action_pending is replaced with _x_action_raise() and
_x_action_lower(), which use a mutex for thread safety.
|
|
This fixes a segfault which may occur when playing an MPEG4 stream.
|
|
|
|
|
|
If a decoded_pic was locally cached, because it is the first half of a reference picture it would not get freed in case of a reset/flush/dispose.
|
|
In case of an empty nal_buffer the free method would run into a NULL pointer. Check for this.
|
|
--HG--
rename : src/combined/decoder_wavpack.c => src/combined/wavpack_decoder.c
rename : src/demuxers/demux_ogg.c => src/combined/xine_ogg_demuxer.c
|
|
When the parser was reset it did not forget about the last pts, which might cause metronom to freeze.
On flush the cached vo_frame_t was kept in case the previously decode produced a 1st field and the decoder was waiting for 2nd field now. As on flush all images are released after drawing this could point to a invalid vo_frame_t
|
|
|
|
some minor cleanups
|
|
|
|
This is probably still wrong, but at least works properly with BBC subtitling.
|
|
|
|
Decoding fixed (nybble extraction was broken, and some filling was wrong).
Default colour tables added.
The following is untested:
* Support for 2-bit and 8-bit images.
* Support for expansion from 2→4, 2→8 and 4→8 bits.
* Support for expansion tables.
* Handling of stuffing chunks (not expected to be seen).
* Copying of the top field into the bottom field.
|
|
|
|
|