summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2011-01-21Disable decoder flush from video out to avoid decoding errors.Reinhard Nißl
Video out flushes the decoder when it runs out of images for displaying, because the decoder hasn't delivered new frames for quite a while. But flushing the decoder causes decoding errors for images after the flush. It is likely that the flush is still required for the issues it was introduced (DVD still images), but they may have been resolved differently meanwhile (e. g. by supporting sequence end code). So for now a configureable option has been introduced which keeps the current behaviour by default. --HG-- extra : transplant_source : %AB%B3u%1F%E7%3D%10%0C%3D%40%B2%B0%CB%8E%84%FE%E6%87p%AA
2011-01-21Disable decoder flush from video out to avoid decoding errors.Reinhard Nißl
Video out flushes the decoder when it runs out of images for displaying, because the decoder hasn't delivered new frames for quite a while. But flushing the decoder causes decoding errors for images after the flush. It is likely that the flush is still required for the issues it was introduced (DVD still images), but they may have been resolved differently meanwhile (e. g. by supporting sequence end code). So for now a configureable option has been introduced which keeps the current behaviour by default.
2011-01-21Disable decoder flush at discontinuity to avoid decoding errors.Reinhard Nißl
Flushing the decoder at a pts wrap causes decoding errors for images after the pts wrap. It is likely that the flush is still required for the issues it was introduced (DVD still images), but they may have been resolved differently meanwhile (e. g. by supporting sequence end code). So for now a configureable option has been introduced which keeps the current behaviour by default. --HG-- extra : transplant_source : %9Cs%D1%9A%E5Sk%27%18%A6%94%5D%AB%0Dd%CA%7E%7E%BA%FD
2011-01-21Disable decoder flush at discontinuity to avoid decoding errors.Reinhard Nißl
Flushing the decoder at a pts wrap causes decoding errors for images after the pts wrap. It is likely that the flush is still required for the issues it was introduced (DVD still images), but they may have been resolved differently meanwhile (e. g. by supporting sequence end code). So for now a configureable option has been introduced which keeps the current behaviour by default.
2011-01-20Avoid video clock errors due to decoder flush at discontinuity.Reinhard Nißl
H.264 decoders store a couple of frames in their display picture buffer. Calling flush before discontinuity my yield images with pts beyond pts boundery and therefore cause clock errors. Calling discontinuity before flush resets all pts to 0 before yielding the images. --HG-- extra : transplant_source : %9CNpV%B5%83%83%23%F5%C3%09%E43%E2%DFo.%7E%D9%C7
2011-01-20Avoid video clock errors due to decoder flush at discontinuity.Reinhard Nißl
H.264 decoders store a couple of frames in their display picture buffer. Calling flush before discontinuity my yield images with pts beyond pts boundery and therefore cause clock errors. Calling discontinuity before flush resets all pts to 0 before yielding the images.
2011-01-20Fix pts handling after introduction of picture_ready()Reinhard Nißl
Transfer of seq_pts to img->pts takes now place at picture header of next image in decoding order. So far, seq_pts was set to cur_pts at sequence header and picture header. Hence, img->pts was incorrectly set to pts of next image in decoding order. Setting seq_pts only in picture header after call of picture_ready() keeps the correct pts in seq_pts until it has been transfered to img->pts. Furthermore, cur_pts of second field must be ignored as we put both fields into the same image so the image is due at pts of first field.
2010-12-12List .ass in supported in extensions too.František Dvořák
2010-12-12Add .ass extension to be recognized as subtitle file.František Dvořák
2010-12-08Fix field interlace completenessChristophe Thommeret
2010-11-28Add some more locking to work around libxcb bugsJulian Scheel
2010-11-04Properly initialise and finalise {Image,Graphics}Magick context.Darren Salt
--HG-- extra : rebase_source : 97225919cd1c6c2327ccbb43b17a6b049e82946c
2010-12-01Update nosefart to 2.7-mls, fixes xine bug #84.František Dvořák
There was added memory limits checks, which will improve stability when playing corrupted NSF files.
2010-11-30Check boundaries during MPEG TS stream detection.František Dvořák
2010-11-30Small memory leaks in VCD input plugin class.František Dvořák
2010-11-30Various small memory leaks in xine engine.František Dvořák
2010-11-28Header stripping support in matroska demuxer.František Dvořák
Reserved space on the start of block_data for the headers during reading to avoid temporary memory buffers and memcpy()'s.
2010-11-23Build with -DLOG.František Dvořák
2010-11-10Option for disabling HW acceleration in directx.František Dvořák
Useful for example when composite managers occupy the HW.
2010-10-30Try to meassure memcpy method speed by clock() when times() not available.František Dvořák
2010-10-30Proper place for log mutex initialization (logging can start after ↵František Dvořák
xine_new()). Fixed a leak.
2010-10-30Using binary mode when writing raw data, in disabled debug code.František Dvořák
2010-10-30Using binary mode when checking configfile. New configfile would not be ↵František Dvořák
written only when switching binaries for different platforms.
2010-10-23mingw32-w64 port: integer sizes portabilityFrantišek Dvořák
- use type of enough size for pointer types (uintptr_t) - fixes "Unhandled exception" in memcpy code
2010-10-23mingw32-w64 port: integer sizes portabilityFrantišek Dvořák
- use interer types of exact size for using with eax/rax registers - fixes build of planar post plugin
2010-10-23mingw32-w64 port:František Dvořák
- symbols in objects built by mingw64 not mangled - fixes build of deinterlace post plugin
2010-10-23mingw32-w64 port:František Dvořák
- mkdir/_mkdir function - prefer prepared POSIX version in CDDA plugin
2010-10-23mingw32-w64 port: '-no-undefined' partFrantišek Dvořák
- use -no-undefined flag only for building shared libraries (libxine, plugins) - plugins LDFLAGS unification - move -no-undefined into LDFLAGS_NOUNDEFINED - attributes.m4 fix
2010-09-23Merge from 1.1.Darren Salt
2010-09-20Update Qt demuxer's extensions list.Darren Salt
2010-09-16Add f4v/f4a file extensions to the Qt demuxer's MIME tableBrad Smith
2010-08-16Fix building with recent videoprotoGeoff Leach
2010-08-21Pulseaudio volume control feedback (stream end)Günter Merz
During channel changes, the audio stream ends and a new stream begins. This in turn can lead to 'pa_stream_get_index' ending up in an assertion. Because of that, a check if there is a stream is a good idea.
2010-08-18Pulseaudio volume control feedbackGünter Merz
If xine volume is changed from outside the xine frontend, e.g. gnome sound preferences. xine-lib generates a XINE_EVENT_AUDIO_LEVEL event that fontends (like xine-ui) can use to update the volume level.
2010-08-05Silence "progressive:" output.Darren Salt
2010-07-29Spelling fixes.Darren Salt
Source: informational messages generated by lintian.
2010-07-28Re-add tests for __FreeBSD_kernel__ (should fix Debian GNU/kFreeBSD builds).Darren Salt
2010-07-21Remove duplicate codeLorenzo Desole
2010-07-210 → NULL for consistency.Darren Salt
2010-07-21vdpau: update XINE_STREAM_INFO_FRAME_DURATIONDennis Bendlin
--HG-- extra : rebase_source : 986f546343c08d288d44c3a9ea3a6d4309ace204
2010-07-29Fix NULL pointer access when starting decoding anywhere in the stream.Reinhard Nißl
The referenced last_vcl_nal exists only when decoding starts at an IDR frame. Starting anywhere else may lead to a NULL pointer access.
2010-07-29Merge from 1.1.Darren Salt
2010-07-25Merge from 1.1; resync translation files.Darren Salt
--HG-- rename : po/libxine1.pot => po/libxine2.pot rename : src/libmad/xine_mad_decoder.c => src/audio_dec/xine_mad_decoder.c rename : src/libspucmml/xine_cmml_decoder.c => src/spu_dec/cmml_decoder.c
2010-07-21Add NetBSD support to the VCD input pluginMatthias Drochner
--HG-- extra : rebase_source : cfee1d5353fa3cacf4df8712fde15cd94e2ee3d4
2010-07-18Fix input_vdr to use the best match when choosing zoom factorsReinhard Nißl
The current implementation chooses 4:3 when aspect is within +/- 0.0075 % of 4:3. Otherwise 16:9 is chosen. But there are some H.264 channels with almost 4:3 aspect and choosing 16:9 for them is worse. So the new implementation chooses the best match.
2010-07-19Merge from 1.1.Darren Salt
2010-07-18Fix playback of the first file handled by the modplug demuxer.Darren Salt
2010-07-18Recognise ScreamTracker files. ST3 is untested.Darren Salt
2010-07-18Add audio/ac3.Darren Salt
2010-07-18Fix metronome not getting audio PTSGünter Merz
The xine libmad adaptor seemed not to forward the pts to the metronome: It buffers the MPEG audio packets until a threshold is reached (MAD_MIN_SIZE: 2889 bytes) and then has libmad decode the packets which is send to audio out. The pts of the last audio packet is forwarded on to metronome which can then sync video with audio. For the channel4 channels MPEG audio packets have a size of 576 bytes which means it takes five packets to fill the buffer enough for processing. In the stream every fifth audio packet contains a pts. The result of this is: If after a seek, the last audio packet is the one with the pts, video and audio are in sync. If the pts is in any of the four previous ones no pts will reach metronome and video and audio will never be synced before a new seek and even then there's a one in five chance that video and audio are not synced. Other channels did not show this behaviour because e.g. BBC One has an audio packet size of about 750 bytes and send a pts every fifth packet as well. This means that not every pts from the stream gets through to metronome but some do. This also means that syncing after a seek is probably not as quick as it could be but it will sync. My workaround to this problem is to start decoding not only when a the buffer has reached a threshold but also when a pts != 0 arrives. This does mean however that the buffer isn't always filled to the theshold and decoding might not perform as well as it could. --HG-- extra : transplant_source : %EC%90%EB%AA%8A%C7%BD%A4%B7%EE%F5%E9%E8SY%89S%9D0s