summaryrefslogtreecommitdiff
path: root/src/xine-engine
AgeCommit message (Collapse)Author
2009-03-15Fix thread starvation for xine_get_param() on multi-core systems.Reinhard Nißl
ao_loop() called sched_yield() to give other threads a chance to acquire driver->lock. But on multi-core systems, it takes too long to wake up the acquiring thread so that ao_loop() takes driver->lock again before the other threads had a chance to acquire it. Therefore a cond var is introduced which ao_loop() can wait for. The cond var will be signalled when one of the other threads has acquired driver->lock. This prevents starvation.
2009-02-24Make _x_compute_interval static (never exported).Diego E. 'Flameeyes' Pettenò
2009-02-16Protect audio loop so it cannot write to a paused device (fixMiguel Freitas
pause/resume freeze with pulseaudio).
2009-02-09demux_unstick_ao_loop() reports that xine might be stuck != is stuckLorenzo Desole
Don't give up immediately if demux_unstick_ao_loop() reports that xine might be stuck, because it's not necessarily so. According to my tests, this fixes http://bugs.kde.org/show_bug.cgi?id=180339#c42 and http://bugs.debian.org/514114. This has been tested with Amarok and kde 4.1.x (with phonon) and kaffeine.
2009-02-09Fix race conditions in gapless_switch (ref. kde bug #180339)Miguel Freitas
2009-02-08Remove a break which causes some front ends to hang. (cset ce60f8b5995a)Darren Salt
(If this causes xine-lib to hang on certain broken streams, we have a problem.)
2009-01-18Remove '#include "config.h"' from all public header files.Darren Salt
This requires that many other files include config.h themselves. Also convert <config.h> to "config.h".
2009-01-14Avoid printing "plugin foo found" if the filename is null.Darren Salt
(Bug 182)
2008-11-03Free up resources when we finish with a Freetype font.Maximilian Schwerin
2008-05-21Free up resources when we finish with Freetype.Darren Salt
2009-01-02Prevent another possible hang on stream stop (demuxer waiting for audio out).Darren Salt
The test stream sometimes causes the ASF demuxer to report "unknown GUID" several times then act as if the headers have been received, with the audio output thread waiting forever for data to be passed to it by the decoder, in this case the ffmpeg audio decoder. This particular hang occurs if playback is stopped before the demuxer has decided that headers have been received (later, and we'd have the problem which the parent cset of this cset fixes); having the demuxer control insert empty audio buffers where it would otherwise wait forever for the audio output thread to receive some data. Test stream: mmsh://213.92.19.8:80/radiodeejay?MSWMExt=.asf
2008-11-20Some warning fixes: XINE_FORMAT_SCANF, statics in headers, consts, ...František Dvořák
Add warning flags to the DEBUG_CFLAGS too.
2008-11-20Fix using of the pointers, leak fixes in configfile.František Dvořák
2008-11-07Fixed segfault on start when using XINE_PLUGIN_PATH.František Dvořák
2008-11-07Recognise H.264 codec with "XiWave" fourcc too.valtri@funny.zcu.cz
2008-08-18Fix another compilation failure when using C++.Darren Salt
2008-08-17Fix a compilation failure when using C++.Darren Salt
2008-08-06Really fix the metadata bug...Darren Salt
2008-07-16Add support for the Snow video codec.Darren Salt
2008-07-16Add a buffer types entry for TTA.Darren Salt
2008-07-16Add FourCC code for Wavpack.Darren Salt
2008-07-15Recognise AMR audio (normally found in 3GP files).Darren Salt
2008-07-12xine_get_stream_info() not returning values for skipped/discarded framesJason Tackaberry
When passing XINE_STREAM_INFO_SKIPPED_FRAMES or XINE_STREAM_INFO_DISCARDED_FRAMES to xine_get_stream_info(), the return value is always 0, even if there are skipped or discarded frames.
2008-07-09Don't try to load static libraries on mingw32Matthias Ringwald
dlopen of a static library causes a Windows error dialog otherwise. just ignore *.dll.a in plugins folder
2008-07-08Fix compilation for pthread support provided by PTHREAD_{CFLAGS+LIBS}Matthias Ringwald
<xine-internals.h> includes <xine-utils/refcounter.h> which includes <pthread.h>. As all xine sources include <xine-internal.h>, the PTHREAD_CFLAGS are always needed. This patch removed it from two Makefile.am and adds them to CPPFLAGS
2008-07-06Merge.Darren Salt
2008-07-06Fix a stupid bug in post-plugin initialisation.Darren Salt
2008-07-04Add a _x_is_fourcc() inline function to wrap around memcmp().Diego 'Flameeyes' Pettenò
This should be simpler and faster for the compiler to optimise rather than a _X_[BLM]E_32 macro and a comparison. --HG-- extra : transplant_source : %C7%1C%16%17N%3Bh%9B%EB%AA%00%A9%F1%15%C8%CB%8A%99%EE%7D
2008-07-04Use calloc to allocate the area for the OSD.Diego 'Flameeyes' Pettenò
--HG-- extra : transplant_source : %99%9B%D5%B3Ro%87%BFV%E9%2BY%AA%83QE/%CD%5D%ED
2008-07-04Use calloc to allocate the lists of audio and video ports.Diego 'Flameeyes' Pettenò
--HG-- extra : transplant_source : T6%E7%60%7F%D4%60%C8l4%9AX%97%86hrR%AD%13%C0
2008-07-02provide PTHREAD_CFLAGS when neededMatthias Ringwald
2008-06-20Ask the input plugin which demuxer to use.Darren Salt
This overrides the normal content/extension detection, but can be overridden by the user. This is an input plugin API extension; ABI is unchanged. The version is not bumped (we can't bump it due to 1.2).
2008-06-20Read the MIME type from the plugin & use it for demuxer selection (if by extn).Darren Salt
text/plain is specifically filtered out because it could cause lots of false positives, at least with http; web servers tend to default to text/plain for unknown types.
2008-06-11Provide a useful implementation of xine_register_log_cb().Darren Salt
2008-06-09Avoid false positives when looking up demuxer by MIME type.Darren Salt
These occur where the MIME type used as the key is a substring of a type in some plugin's MIME type list but is not an exact match.
2008-05-23Remove MIN/MAX macro definitions on unit.Diego 'Flameeyes' Pettenò
Now that the macro are either imported from the system or defined by configure. don't define them in every source file.
2008-05-23Mark initialisation functions with malloc attribute.Diego 'Flameeyes' Pettenò
All the initialisation functions returning a new object instance that was allocated through malloc() or calloc() can get the malloc attribute so that the compiler can optimise their call.
2008-05-22Merge fix for 3466031414a7.Diego 'Flameeyes' Pettenò
2008-05-22Copy all of the supported types not just 1/4 of it (4 being the size of ↵Diego 'Flameeyes' Pettenò
uint32_t).
2008-05-22Merge.Darren Salt
2008-05-21Fix typo that lead to crash.Diego 'Flameeyes' Pettenò
2008-05-12Provide xine_get_current_frame_data which passes more data via a structure.Reinhard Nißl
The new structure xine_current_frame_data_t additionally contains cropping and interlacing information, which both are required for proper conversion of the image. The existing functions have been adopted to use the code of the new function. The changeset should be ABI compatible.
2008-05-09Use size_t to keep the value returned by strlen().Diego 'Flameeyes' Pettenò
When using a variable to store the result of strlen(), make sure its type is size_t just like the function returns, rather than using a smaller type like int. --HG-- extra : transplant_source : %B0%D5%3B%D7%1Dy%0A%7E%7D%7C%023%08%B2%CE%D3t%0B3%D7
2008-05-09Rewrite and optimise xine_get_{file_extensions,mime_types}()Diego 'Flameeyes' Pettenò
Rewrite xine_get_file_extensions() and xine_get_mime_types() so that they share the joining code, and do one less loop over the list of plugins. Create a new _x_concatenate_with_string() function to convert an array of strings into a single string, which is called by both functions. --HG-- extra : transplant_source : %BC7%3D%C7%A5%AA%A6%BB%11%9A%94%F0%E9%F1V%B7%29%C68h
2008-05-09Use asprintf() rather than sn?printf() + strn?dup().Diego 'Flameeyes' Pettenò
Instead of duplicating a buffer after using sn?printf() on it, use asprintf() directly on the final variable.
2008-05-09Use size_t rather than int to store the return value of strlen().Diego 'Flameeyes' Pettenò
2008-05-09Avoid loop for common memory operations (zeroing, copying, moving).Diego 'Flameeyes' Pettenò
Use the proper function for common memory operations (memset() for zeroing, memcpy() for copying, memmove() for moving), instead of looping through arrays. By extension, remove loops to reset arrays when they were allocated with calloc() and thus already zeroed.
2008-05-09Remove a new bunch of xine_malloc() calls.Diego 'Flameeyes' Pettenò
Also don't reset memory after it's allocated if we do that with calloc.
2008-05-09Cleanup handling of packed attribute.Diego 'Flameeyes' Pettenò
- Add a configure test for the attribute, during xine build process. - Define the attribute as supported when using GCC 2.95 or later outside xine build process. - Use the new XINE_PACKED define instead of the attribute directly. - Check for SUPPORT_ATTRIBUTE_PACKED rather than doing strange subdefines.
2008-05-07Remove strlen() call after strftime, the returned value is what is needed.Diego 'Flameeyes' Pettenò