summaryrefslogtreecommitdiff
path: root/src/xine-engine
AgeCommit message (Collapse)Author
2007-10-28Add another identifier (0x10 0x00 0x00 0x02) for MPEG video.Darren Salt
Seen in an AVI in the wild; apparently generated by mencoder.
2007-09-19Add controls for setting the opacity of DVB subtitles.Darren Salt
2007-08-21Merge from 1.1.Darren Salt
2007-08-17xine_stream audio_track_map order fixChristophe Thommeret
Actually, audio_decoder_loop stores audio streams in ascending buffer type order. So, for example a stream with buffer type BUF_AUDIO_A52|channel_num will always be stored in audio_track_map array before any mpegaudio stream. This breaks the stream order known by TS demuxer and so a user can get a52 french audio when selecting "deu" ! Bad again. This patch fixes that.
2007-08-17Fix C++ breakage introduced in cset 290f0d28f8fc.Darren Salt
2007-08-16Merge open()/glibc (debug #define) workaround from 1.1; fix up for 1.2 changes.Darren Salt
This does not touch code in contrib.
2007-08-16Merge all but the open()/glibc workaround from 1.1.Darren Salt
2007-08-15Workaround for recent glibc & -D_FORTIFY_SOURCE=2 (defines open() as a macro).Darren Salt
According to bug 1773769, this breaks foo->open(). The fix (as used in Ville Skyttä's patch, which doesn't cover all cases) is to replace this with (foo->open)(). This patch was generated using sed -i -re 's/(([[:alnum:]_]+(->|\.))+open) ?\(/(\1) (/' `grep '[>.]open \?(' include -rIl` One change (in a comment) is not committed.
2007-08-15Fix an audio resampling problem which was causing regular clicking.Darren Salt
The cause was that the resampling code was using only the samples in the buffer but not really handling the transition between two buffers (which it would handle completely independently). The new code remembers the last sample from the previous buffer and uses it in the resampling. We therefore end up one sample behind and without the clicks.
2007-07-27make use of the new callback function in _x_post_intercept_video_frame()Reinhard Nißl
--HG-- extra : transplant_source : %E9%9C%09%7EQ%19%B6%D8%BCJ587%C5i%AF%D5R%F4%DE
2007-07-27provide an additional callback function for controlling frame interceptionReinhard Nißl
Some postplugins override a frame's draw function just to get/manipulate frame related information -- and not for drawing on the frame. The current implementation disables any preprocessing function even if the plugin is not going to draw on the frame. By introducing a further callback function route_preprocessing_procs() a plugin is now able to tell that it is not going to draw on the frame, i. e. it is ok to route the preprocessing functions to the intercepted frame, too. --HG-- extra : transplant_source : %170%82%B8%8F%BA%3D%25%9B%D7%EF%E5%B3%3B%EEg%A0%D1be
2007-07-26provide a direct link to accelerated frame for postprocessingReinhard Nißl
Accelerated frames share data between decoder and video out driver. When frames get intercepted for postprocessing the decoder will pass intercepted frames to the video out driver, but the driver needs to access it's native frame for accelerated decoding. Putting a pointer to the native frame into acceleration data is an easy way to achieve this. Some additional macros simplify accessing the native frame. --HG-- extra : transplant_source : 0%FB%1B4A%D9%27%92z%A5E%C1%1F%81nB%00y%17%9E
2007-08-02Merge from 1.1.Darren Salt
2007-07-27Fixed race, reordered broadcaster shutdown sequence to avoid multiple access ↵Kirill Belokurov
to connections list
2007-07-26copy stream in _x_post_frame_copy_up() and add refcountingReinhard Nißl
Without copying stream up, _x_post_restore_video_frame() will reset the native frame's stream to the value at _x_post_intercept_video_frame(), which is typically NULL. This behaviour differs from normal frame processing, i. e. without postprocessing. Copying the stream up reveals that stream refcounting was missing in several postprocessing functions, which is hereby added. --HG-- extra : transplant_source : I%F1%0B%86%B5%5E%5D%10_6%BC%B6%BCPZ%11%04y%83/
2007-07-19Use asprintf when generating the decoder priority description.Darren Salt
2007-07-12Remove realloc from osd.c to prevent memory leak due to fragmentationSimon Farnsworth
show() in osd.c uses realloc in an effort to minimise the amount of memory actually used for rle objects. In practice, this caused xine to fragment memory, and gradually use more and more RAM (measured over a period of 24 to 72 hours). Change osd.c to allocate the maximum amount of memory it could need; because it touches this memory in a linear fashion, lazy page allocation will ensure that most of the memory used is needed. Further, because this makes the per-drawing allocations the same size, it avoids virtual address space fragmentation.
2007-07-12Fix memory leak in video_overlay.cSimon Farnsworth
When running DVB subtitles for a long period of time (over 24 hours), we noticed a slow leak of memory. This patch removes one cause of leakage for us.
2007-07-13Prevent ticket system deadlock when using DVB subtitlesSimon Farnsworth
When using DVB subtitles on an SMP machine, we see occasional lockups, which appear to be caused by one thread acquiring the same ticket twice. Fix this, by preventing acquire() and release() from blocking if the current thread has already acquired the ticket. Code sequences like the following can still block in all acquires and releases: ticket->acquire(...) /* Do something */ ticket->release(...) However, code sequences like the following, which used to deadlock if ticket was revoked at just the wrong moment, now succeed: ticket->acquire(...) /* Do something */ ticket->acquire(...) /* This acquire cannot block */ /* Do something */ ticket->release(...) /* This release cannot block */ /* Do something */ ticket->release(...) Without this patch, the inner acquire() and release() calls could block if ticket was revoked at the wrong time. revoke() would not unblock the blocking acquire until there have been as many release()s as acquire()s, which cannot happen.
2007-07-13Merge from 1.1.Darren Salt
2007-07-08Merge from 1.1.Darren Salt
2007-07-08Rename mrl_unescape and export it for use by plugins.Darren Salt
2007-07-02Merge with 1.1.Diego 'Flameeyes' Pettenò
2007-07-02Fix demuxing of wavpack files, and avoid crashing with the tags at the end ↵Diego 'Flameeyes' Pettenò
of the file.
2007-06-16Rename the BE/LE/ME macros with a _X_ prefix, so they don't clash with ↵Diego 'Flameeyes' Pettenò
Solaris definitions (1.2 branch commit).
2007-06-16Rename the BE/LE/ME macros with a _X_ prefix, so they don't clash with ↵Diego 'Flameeyes' Pettenò
Solaris definitions.
2007-06-15Change the prototype of xine_list_post_plugins_typed(), to avoid a warning.Diego 'Flameeyes' Pettenò
2007-06-14Merge from 1.1 branch.Diego 'Flameeyes' Pettenò
2007-06-13Make explanation a constant string (gettext() strings are never freed).Albert Lee
2007-06-13Fix parameter type.Albert Lee
2007-06-12A nice simple merge from 1.1.Darren Salt
Hopefully, I've applied all of the $(LTLIBINTL) changes correctly...
2007-08-12Extend config key translation to allow front ends to provide an additional list.Darren Salt
Intent is to allow front ends to rename their old, badly-named, config items.
2007-06-09Use $(LTLIBICONV) instead of $(LIBICONV) when linking libxine.so.Darren Salt
2007-06-09Remove unused variable.Diego 'Flameeyes' Pettenò
2007-06-09Convert all input plugins to use void * as type for the buf parameter of ↵Diego 'Flameeyes' Pettenò
read() function, and declare a new buf variable in the function as needed.
2007-06-06Don't return integer, the function is expected to return a pointer.Diego 'Flameeyes' Pettenò
2007-06-04fallback to none output when the device is unpluggedMatthias Kretz
2007-06-04handle unplugged devices in audio_alsa_out (return -1) and in audio_out ↵Matthias Kretz
close the driver on a return value <0
2007-06-04fallback to none output when the device is unpluggedMatthias Kretz
2007-06-04handle unplugged devices in audio_alsa_out (return -1) and in audio_out ↵Matthias Kretz
close the driver on a return value <0
2007-05-18Merge from 1.2 main branch, except for summary info related to the vdr plugins.Darren Salt
2007-05-11Another pass at cleaning up Makefile.am files. More to come.Matt Messier
2007-05-08More configure.ac cleanupsMatt Messier
-- Revisit NLS stuff. Not much changed, remove the REVISIT tag -- Change XDG_BASEDIR_CFLAGS to XDG_BASEDIR_CPPFLAGS, because it only includes a -I, which is a CPPFLAGS option, not CFLAGS -- Move XDG stuff up to library checks -- Cleanup and move zlib checks -- Move X11 checks up to checks for system services -- Break audio out plugin stuff into m4/audio_out.m4 -- Break video out plugin stuff into m4/video_out.m4 -- Move libdir name stuff into m4/libFLAC.m4 since that's the only thing that uses it.
2007-05-08Merge changes from main 1.2 repositoryMatt Messier
2007-05-08Merge VDR support.Darren Salt
2007-05-08Merge Reinhard Nissl's engine changes.Darren Salt
2007-05-08Merge from 1.1.Darren Salt
2007-05-08RIP: AC_OPTIMIZATIONSMatt Messier
-- Removed m4/optimizations.m4, and along with it, AC_OPTIMIZATIONS. -- Stripped down, cleaned up, and merged the former together with other compiler characteristic checks. -- Do not set any optimization flags into CFLAGS. Update all Makefile.am's with proper AM_CFLAGS, AM_CPPFLAGS, AM_LDFLAGS, etc. to set up optimization flags, usually from DEFAULT_OCFLAGS. -- Start cleaning up CFLAGS/CPPFLAGS stuff in Makefile.am's all over the place. -- Correct a number of places where CFLAGS itself was being mangled in Makefile to on-the-fly adjust optimizations to work around compiler bugs. This stuff is now done correctly. -- The run of automake from autogen.sh is now clean of warnings. -- Cleaned out some (now) dead macros from m4/_xine.m4 -- Mac OS X intel builds out-of-the-box now -- dropped optimization on post/deinterlace/plugins/kdetv-greedyh to O1_CFLAGS. -- OBJCFLAGS is now getting set correctly everywhere that it needs to be -- Various other miscellaneous cleanups all over
2007-05-06Merge Reinhard Nissl's xxmc fixes and related changes.Darren Salt
2007-05-05- Fix _x_io_select exiting when the select has been interrupted (EINTR errno)hadess@cookie.hadess.net
when we want to run until the timeout has occurred, partially fixes Totem's browser plugin playing back browser streams with the xine-lib backend See http://bugzilla.gnome.org/show_bug.cgi?id=375866 for details