summaryrefslogtreecommitdiff
path: root/src/xine-engine
AgeCommit message (Collapse)Author
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ò
2008-05-07Use strn?dup instead of alloc + strn?cpy.Diego 'Flameeyes' Pettenò
Whenever an allocated memory area is immediately filled in with a string through strcpy() or strncpy(), replace the calls with the appropriate strn?dup().
2008-05-07Use proper string functions in place of sn?printf.Diego 'Flameeyes' Pettenò
Instead of calling sprintf or snprintf with a "%s" format string, use the proper strcpy, strncpy, strdup or strndup function.
2008-05-07Use asprintf() rather than malloc() + sprintf().Diego 'Flameeyes' Pettenò
Using asprintf() instead of malloc() + sprintf() reduces the lines of code in xine-lib (moving the allocation to the C library or asprintf replacement), makes it safer to access the string and can also improve performance whenever the value returned by a function was used as parameter, as before it had to run the function twice in almost every case (once for strlen(), once for sprintf()).
2008-05-07Merge file removal.Diego 'Flameeyes' Pettenò
2008-05-07xine_xmalloc() deprecation: replace its use with static and non-zero size.Diego 'Flameeyes' Pettenò
The xine_xmalloc() function is going to be deprecated, as its behaviour is rarely needed as such, and it's thus misused. With this, almost all uses of xine_xmalloc() with static size (for instance the value returned by sizeof()) or with a size that is guaranteed not to be zero (like strlen()+1) are replaced with calls to either calloc(1, ...) or malloc(). malloc() is used whenever the allocated memory is going to be immediately overwritten, while calloc() is used in every other case, as it sets the whole memory area to zero. --HG-- extra : transplant_source : %8F%98%EC%02%1E%83%F0s%06X%83C%205Y%80%B12%CC%E1
2008-05-07Mark internal functions and data structures static.Diego 'Flameeyes' Pettenò
Functions and data structures that are not exported and are only ever used in the same unit they are defined should be marked static to improve compiler's ability to optimise them. This applies to xine_dispose_internal() function for xine-lib, the extended_to_int() function in the AIFF demuxer, the bandwidths array in QuickTime demuxer, the wc_pal_lookup table in the WC3 movie demuxer, and the rm_header and pnm_data_header arrays in pnm input plugin.
2008-05-05Make xine_probe_fast_memcpy internal.Diego 'Flameeyes' Pettenò
2008-05-05Check for and use internal visibility.Diego 'Flameeyes' Pettenò
Internal visibility can improve optimisation on some architectures, but functions need not to be taken the pointer of when using internal visibility. For this reason only a subset of xine-lib's functions should be marked as such.
2008-05-05Make open_internal static again.Darren Salt
2008-05-05Add missing xine_private.h includeDiego 'Flameeyes' Pettenò
2008-05-05Replace load_plugins.h with a more generic xine_private.h, move the ↵Diego 'Flameeyes' Pettenò
functions that are now hidden from xine_internal.h to xine_private.h.
2008-05-03Remove unused variables, as reported by GCC 4.3.Diego 'Flameeyes' Pettenò
2008-05-03Stop exporting a few internal functions, remove the unued parameter to ↵Diego 'Flameeyes' Pettenò
_x_cahce_plugin_get_instance.
2008-05-03Remove xine_register_log_cb and xine_trick_mode, which are both not implemented.Diego 'Flameeyes' Pettenò
2008-05-03Get rid of xine_get_video_frame as it was nevere implemented.Diego 'Flameeyes' Pettenò
2008-04-21Merge from 1.1.Darren Salt
--HG-- rename : src/demuxers/demux_nsf.c => src/combined/nsf_demuxer.c rename : src/libxinevdec/bitplane.c => src/video_dec/bitplane.c
2008-04-19Replace xine_xcalloc usage with calloc, for the revisions transplanted from ↵Diego 'Flameeyes' Pettenò
1.2 series.
2008-04-11Merge from 1.1.Darren Salt
--HG-- rename : include/xine.h.in => include/xine.h
2008-04-11Add a function for listing video output plugins of the given type(s).Darren Salt
2008-04-09Compilation fixes, mostly ffmpeg-related, and linkage fixes.Darren Salt
Tests done on amd64 with ffmpeg 0.svn20080206 from Debian experimental. libavcodec 51.50.0, libavutil 49.6.0, libpostproc 51.1.0
2008-04-09Merge from 1.2 main.Darren Salt
2008-04-08Merge from 1.1.Darren Salt
--HG-- rename : src/xine-engine/buffer.h => include/xine/buffer.h rename : src/libmad/xine_mad_decoder.c => src/audio_dec/xine_mad_decoder.c rename : src/combined/combined_wavpack.c => src/combined/wavpack_combined.c
2008-04-07Implement support for "MPEG-3 adu".Jinghua Luo
2008-03-18Merge from 1.1.Darren Salt
2008-03-12Merge from 1.1.Darren Salt
--HG-- rename : doc/faq/faq.sgml => doc/faq/faq.docbook rename : src/xine-engine/xine_internal.h => include/xine/xine_internal.h rename : src/libffmpeg/Makefile.am => src/combined/ffmpeg/Makefile.am rename : src/demuxers/demux_ogg.c => src/combined/xine_ogg_demuxer.c
2008-03-11Fix buffer size calculation by using more appropriate calloc().Reinhard Nißl
2008-03-11Fix accessing plugin node after disposing plugin in plugin free functions.Reinhard Nißl
2008-03-10Fixed long delay when closing stream on dual core systems [Bug #33]Miguel Freitas
2008-03-10Support # stream parameter separator in raw filenames as well as in full MRLs.Miguel Freitas
Changeset 8ffe18290ba5 fixed bug 1784272 (opening raw filenames with # character, like "show #1.mpg") but at the cost of killing # separator in raw filenames completely. Although this might be a valid requirement in a new devel branch, imho, such change in stable branch should be considered a regression. The original idea of passing partial MRL for the input plugins to try doesn't work because plugin will generate error messages for every failed attempt to open the file (like "show " above), even thought the complete MRL is valid and will be played. So, since raw filenames are an exception for the MRL scheme anyway, we try stat'ing the partial filenames to determine what user means with the #.
2008-03-06Merge from 1.1.Darren Salt
--HG-- rename : src/libffmpeg/Makefile.am => src/combined/ffmpeg/Makefile.am
2008-03-06Fix compilation for installed libintl.h in include pathsMatthias Ringwald
Compilation of xine-lib-1.2 hg failed for me as libintl.h does this: #define textdomain libintl_textdomain This causes trouble accessing fields in structures which are accidentally named "textdomain". The patch renames textdomain to text_domain in xine headers and xine- engine/xine.c and xine/load_plugins.c
2008-03-06Fix _x_get_current_frame_impl() to not abort when used legally.Reinhard Nißl
Retrieving frame size and format is a legal operation even for otherwise not supported frame formats like XXMC.
2008-03-14xine_init(): mutex objs not initializedCarlo Bramini
The problem comes from the fact that into xine_probe_fast_memcpy() there is a call to xprintf, which excutes some actions to this->log_lock. But the "log_lock" field is still uninitialized. Under Windows, the xine_init() always crashes because that type is implemented as a structure, so the lock receives a NULL pointer and the execution is halted. The attached patch proposes to move the mutex objects to the top of xine_init() function. --HG-- extra : transplant_source : %07%1D%7F%F0%97%7D%06%3E%9F%2Ar%03%1DQ%14%F3%D1%EF%1D%93
2008-03-14Unportable pthread_t compare in xine.cCarlo Bramini
With Pthreads for Win32/Win64 I cannot compare two pthread_t items because they are implemented as structures. This patch fixes the comparison by using pthread_equal() function. --HG-- extra : transplant_source : %9D%98%CE%83%5E%BD%A9u%11%C7%3BmP%28%EBH%D0%B6I%DF
2008-03-04Merge from 1.1.Darren Salt
--HG-- rename : include/xine.h.in => include/xine.h rename : src/libdts/xine_dts_decoder.c => src/audio_dec/xine_dts_decoder.c rename : src/libmpeg2/decode.c => src/video_dec/libmpeg2/decode.c
2008-03-02Provide safe and convenient implementations of xine_get_current_frame().Reinhard Nißl
xine_get_current_frame() relies on the caller to provide a sufficiently sized buffer. To calculate the required size of the buffer, one has to call xine_get_current_frame() to retrieve the necessary parameters. But as the image can change between two successive calls one has to pause the stream for consistency. To improve the situation, xine_get_current_frame_s() has been introduced which requires to specify the buffer size when an image is going to be retrieved. Furthermore, it will return the required/used buffer size. In that way, it can prevent copying data into a too small buffer and therefore can be considered safe. For convenience, xine_get_current_frame_alloc() is provided which takes care to allocate a sufficiently sized buffer. This function avoids pausing the stream as the image will be returned in a single call.
2008-03-01Update to the new FFmpeg's include directory.Diego 'Flameeyes' Pettenò
This also allows to remove the comment stating the includes come from libavutil, as it's now explicit.
2008-03-01Use libavutil's base64 functions, and get rid again of internal copy of base64.Diego 'Flameeyes' Pettenò
2008-03-01Merge from 1.2 tip.Diego 'Flameeyes' Pettenò
--HG-- rename : src/combined/ffmpeg/ff_dvaudio_decoder.c => src/audio_dec/ff_dvaudio_decoder.c
2008-02-08Merge from 1.1.Darren Salt
2008-02-07Reverse the order in which the plugin dirs are scanned; remove a stray printf.Darren Salt
2008-02-06Change from release numbering to ABI numbering for the plugin directory.Darren Salt
This is to avoid having to rebuild external plugins for each new release. --HG-- extra : transplant_source : %C2%3EF%0B%EF%16%40K%FD.%EB9%E07%CB%97GhU%98
2008-02-04Report the identifiers of unrecognised video & audio codecs.Darren Salt
2008-01-27Revert part of commit applied by mistake.Diego 'Flameeyes' Pettenò
2008-01-27Rename base64 functions to _x_ as they should not be part of the public API.Diego 'Flameeyes' Pettenò
Note that these will be removed as soon as -libavutil branch is merged, in favour of libavutil's base64 implementation.
2008-01-27Move base64 header to xine-utils as we don't want it installed.Diego 'Flameeyes' Pettenò
--HG-- rename : include/xine/base64.h => src/xine-utils/base64.h