summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2007-04-12Speed up start code scanning.Reinhard Nißl
The current code implements hardware (a shift register) in software just to find the byte pattern 00 00 01 xx, which causes remarkable CPU load on less powerful machines. The new approach uses memchr() to find the 01 in the buffer, which most often hits a start code. memchr() seems to be even faster then implementing a real pattern search (i. e. by just looking at every third byte to find 01). The new implementation causes significantly fewer CPU load on less powerful machines.
2007-04-11Special handling of sequence end code to improve still frames.Reinhard Nißl
The current code emits a frame when a non slice start code is seen. For still frames, this is typically a sequence end code. But the current code doesn't call parse_chunk() immediately because it waits for a further start code to determine the chunk of data to pass to parse_chunk(). But there isn't such a further start code for still frames after the sequence end code and thus, the still frame will not be emitted. As sequence end code is the only start code which has no data according to the MPEG specification, let's use this information to call parse_chunk() immediately.
2007-04-11Detect absence of AFD and report only changes.Reinhard Nißl
The current code cannot detect the absence of AFD once it has been seen in the stream. As AFD can appear in user data after sequence, group or picture start codes, the idea is to reset the stored AFD value when processing the sequence start code. In the case where AFD is seen in user data, it is stored internally, to have it ready when the first slice is processed. At least at that time, AFD data has been seen and can be analyzed for changes. At any change, the AFD value will then be stored into a stream property. Doing this only for changes avoids locks while writing the same value over and over to the stream's property.
2007-04-11Improve MPEG2 detection to have it ready for correct aspect ratioReinhard Nißl
determination. The current code detects MPEG2 when parsing the sequence extention which appears only in MPEG2 streams. But this is to late for correct aspect ratio determination which happens earlier and therefore assumes MPEG1. The result is a totally wrong aspect ratio. To fix this issue, the next start code (which is already available at that time) is passed to parse_chunk() too, which can then be used to detect a MPEG2 extension start code early enough before the aspect ratio is determined.
2007-04-11Merge from -build-fixes branch.Darren Salt
2007-04-11Merge Matt Messier video output for Mac OS X.Diego 'Flameeyes' Pettenò
2007-04-10Merge Reinhard Nissl's changes.Darren Salt
2007-04-10Allow xine-lib to be built with CFLAGS='-O0 -g3' by changing optimizationReinhard Nißl
as needed for some files where gcc runs out of registers otherwise.
2007-04-10Split the DirectFB plugin into X11 and non-X versions.Darren Salt
This fixes linkage problems for people who want this but don't want X.
2007-04-08Beside the name, constants can't be marked const or gcc miscompiles the ↵Diego 'Flameeyes' Pettenò
Altivec code.
2007-04-08Mark various private arrays, structs & fn parameters as static and/or const.Darren Salt
Two of the modified files are headers, but each contains definitions as well as declarations and is only ever used once.
2007-04-07video_overlay_s uses C's inheritance-like definition, so the first field has ↵Diego 'Flameeyes' Pettenò
to be video_overlay.
2007-04-07Use CC_ATTRIBUTE_FORMAT; replace __attribute((format(printf, ...))) accordingly.Darren Salt
2007-04-07Revert changeset 8383: variable-sized structures and arrays don't seem to ↵Diego 'Flameeyes' Pettenò
get along that well.
2007-04-06Remove executable status from all files which shouldn't have it.Darren Salt
2007-04-06Remove a redundant comment.Diego 'Flameeyes' Pettenò
2007-04-06Similarly, add a vidix_LTLIBRARIES class to install the vidix drivers in the ↵Diego 'Flameeyes' Pettenò
correct location.
2007-04-06Define a xinepostdir directory to point to the post-plugins path.Diego 'Flameeyes' Pettenò
Together with this, define a xinepost_LTLIBRARIES class that is used to install the post-plugins in the correct directory. Also add the rule to remove them.
2007-04-06Use xineplug_LTLIBRARIES wherever possible.Diego 'Flameeyes' Pettenò
2007-04-05Fixed current audio sync, delay was always 0.Thibaut Mattern
Checked snd_pcm_delay return code, and don't trust negative values.
2007-04-04Fix xine_encoder.c presence in EXTRA_DIST.Diego 'Flameeyes' Pettenò
2007-04-04Rename xine_decoder.c to xine_sputext_decoder.c.Diego 'Flameeyes' Pettenò
Use xineplug_LTLIBRARIES. --HG-- rename : src/libsputext/xine_decoder.c => src/libsputext/xine_sputext_decoder.c
2007-04-04Rename xine_decoder.c to xine_spudvb_decoder.c.Diego 'Flameeyes' Pettenò
Use xineplug_LTLIBRARIES. --HG-- rename : src/libspudvb/xine_decoder.c => src/libspudvb/xine_spudvb_decoder.c
2007-04-04Rename xine_decoder.c to xine_spu_decoder.c.Diego 'Flameeyes' Pettenò
Use xineplug_LTLIBRARIES. --HG-- rename : src/libspudec/xine_decoder.c => src/libspudec/xine_spu_decoder.c
2007-04-04Rename xine_decoder.c to xine_cmml_decoder.c.Diego 'Flameeyes' Pettenò
Use xineplug_LTLIBRARIES. --HG-- rename : src/libspucmml/xine_decoder.c => src/libspucmml/xine_cmml_decoder.c
2007-04-04Rename xine_decoder.c to xine_cc_decoder.c.Diego 'Flameeyes' Pettenò
Use xineplug_LTLIBRARIES. --HG-- rename : src/libspucc/xine_decoder.c => src/libspucc/xine_cc_decoder.c
2007-04-04Rename xine_decoder.c to xine_musepack_decoder.c.Diego 'Flameeyes' Pettenò
Use xineplug_LTLIBRARIES. --HG-- rename : src/libmusepack/xine_decoder.c => src/libmusepack/xine_musepack_decoder.c
2007-04-04Rename xine_decoder.c to xine_mpeg2new_decoder.c.Diego 'Flameeyes' Pettenò
Use xineplug_LTLIBRARIES. --HG-- rename : src/libmpeg2new/xine_decoder.c => src/libmpeg2new/xine_mpeg2new_decoder.c
2007-04-04Rename xine_decoder.c to xine_mpeg2_decoder.c.Diego 'Flameeyes' Pettenò
Use xineplug_LTLIBRARIES. --HG-- rename : src/libmpeg2/xine_decoder.c => src/libmpeg2/xine_mpeg2_decoder.c
2007-04-04Rename audio_decoder.c and xine_decoder.cDiego 'Flameeyes' Pettenò
--HG-- rename : src/libreal/audio_decoder.c => src/libreal/xine_real_audio_decoder.c rename : src/libreal/xine_decoder.c => src/libreal/xine_real_video_decoder.c
2007-04-04Move the Speex decoder from libspeex to libxineadec, as it's a single file.Diego 'Flameeyes' Pettenò
--HG-- rename : src/libspeex/xine_decoder.c => src/libxineadec/xine_speex_decoder.c
2007-04-04Move the Theora decoder from libtheora to libxinevdec, as it's a single file.Diego 'Flameeyes' Pettenò
--HG-- rename : src/libtheora/xine_decoder.c => src/libxinevdec/xine_theora_decoder.c
2007-04-04Move the Vorbis decoder from libvorbis to libxineadec, as it's a single file.Diego 'Flameeyes' Pettenò
--HG-- rename : src/libvorbis/xine_decoder.c => src/libxineadec/xine_vorbis_decoder.c
2007-04-04Rename xine_decoder.c to xine_mad_decoder.c.Diego 'Flameeyes' Pettenò
Use xineplug_LTLIBRARIES. --HG-- rename : src/libmad/xine_decoder.c => src/libmad/xine_mad_decoder.c
2007-04-04Move the linear pcm decoder from liblpcm to libxineadec, as it's a single file.Diego 'Flameeyes' Pettenò
--HG-- rename : src/liblpcm/xine_decoder.c => src/libxineadec/xine_lpcm_decoder.c
2007-04-04Convert to xineplug_LTLIBRARIES.Diego 'Flameeyes' Pettenò
2007-04-04Rename xine_decoder.c to xine_faad_decoder.c.Diego 'Flameeyes' Pettenò
Use xineplug_LTLIBRARIES. --HG-- rename : src/libfaad/xine_decoder.c => src/libfaad/xine_faad_decoder.c
2007-04-04Rename xine_decoder.c to xine_dts_decoder.c.Diego 'Flameeyes' Pettenò
Use xineplug_LTLIBRARIES. --HG-- rename : src/libdts/xine_decoder.c => src/libdts/xine_dts_decoder.c
2007-04-04Rename xine_decoder.c to xine_a52_decoder.c.Diego 'Flameeyes' Pettenò
Use xineplug_LTLIBRARIES. --HG-- rename : src/liba52/xine_decoder.c => src/liba52/xine_a52_decoder.c
2007-04-04Rename FFmpeg plugins' sources so that there are no conflicts with other ↵Diego 'Flameeyes' Pettenò
source files. This way when you get a backtrace, video_decoder.c is never the FFmpeg one. --HG-- rename : src/libffmpeg/audio_decoder.c => src/libffmpeg/ff_audio_decoder.c rename : src/libffmpeg/dvaudio_decoder.c => src/libffmpeg/ff_dvaudio_decoder.c rename : src/libffmpeg/mpeg_parser.c => src/libffmpeg/ff_mpeg_parser.c rename : src/libffmpeg/mpeg_parser.h => src/libffmpeg/ff_mpeg_parser.h rename : src/libffmpeg/video_decoder.c => src/libffmpeg/ff_video_decoder.c rename : src/libffmpeg/xine_decoder.c => src/libffmpeg/ffmpeg_decoder.c rename : src/libffmpeg/xine_decoder.h => src/libffmpeg/ffmpeg_decoder.h rename : src/libffmpeg/xine_encoder.c => src/libffmpeg/ffmpeg_encoder.c
2007-04-04Move the flac plugins sources into the combined directory, like wavpack.Diego 'Flameeyes' Pettenò
--HG-- rename : src/libflac/decoder_flac.c => src/combined/decoder_flac.c rename : src/libflac/demux_flac.c => src/combined/demux_flac.c rename : src/libflac/demux_flac.h => src/combined/demux_flac.h
2007-04-04Reorder and pack the structures that are defined inside compilation units ↵nopadding_no_abi_changeDiego 'Flameeyes' Pettenò
instead of headers (and thus are not part of public ABI).
2007-04-04Use a variable-sized array for the name of the buffer type.Diego 'Flameeyes' Pettenò
2007-04-04Make sure that early_finish_event and gapless_switch are either 0 or 1.Diego 'Flameeyes' Pettenò
2007-04-04Check for previous swap32 definition before writing a new swap32 function.Pascal S. de Kloe
2007-04-04Cleanup check for WIN32, use #elif rather than #else/#ifdef.Pascal S. de Kloe
2007-04-04Check for sys/dvdio.h, and use that if found, rather than having a check for ↵Diego 'Flameeyes' Pettenò
the BSDs. Thanks to Pascal S. de Kloe for pointing at this.
2007-04-04When EOVERFLOW is not defined, use EINVAL instead.Pascal S. de Kloe
2007-04-04Use size_t for samples and seconds data in Sun audio plugin.Pascal S. de Kloe
2007-04-04Check for audio_info_t.output_muted member, rather than assuming it's not ↵Diego 'Flameeyes' Pettenò
available on NetBSD only. With this, it's not needed to check for OpenBSD too. Thanks to Pascal S. de Kloe for pointing at it.