From: <li...@yo...> - 2008-01-23 00:58:44
|
# HG changeset patch # User Darren Salt <li...@yo...> # Date 1201049530 0 # Node ID df0f97a4bf34d75284aacd902a323a1d81f28d49 # Parent 115f056ed57a7a06ccc4a62042dd3fbac9455034 # Parent e9be6befee2d8b6b9d0aeec8ec398c30bc25d95a Merge from 1.1. diff -r df0f97a4bf34d75284aacd902a323a1d81f28d49 -r 115f056ed57a7a06ccc4a62042dd3fbac9455034 ChangeLog --- a/ChangeLog Wed Jan 23 00:52:10 2008 +0000 +++ b/ChangeLog Tue Jan 22 18:47:15 2008 +0100 @@ -64,8 +64,10 @@ xine-lib (1.1.10) (unreleased) * Unescape the filename in "#save:". This allows filenames to contain ';' etc. without ambiguity, e.g. "#save:foo%3B1.ts" -> "foo;1.ts", but front end authors should be careful with xine-lib older than 1.1.10. - -xine-lib (1.1.9.1) + * Backported xine-config & libxine.pc from 1.2. + Consequently, xine-config now requires pkg-config. + +xine-lib (1.1.9.1) 2008-01-11 * Security fixes: - Buffer overflow which allows a remote attacker to execute arbitrary code via a crafted SDP Abstract attribute. (CVE-2008-0225) @@ -74,7 +76,7 @@ xine-lib (1.1.9.1) (Only affects systems without strtok_r.) [Bug #19] * Fix a bug which causes video playback display errors on PPC/Darwin. -xine-lib (1.1.9) +xine-lib (1.1.9) 2008-01-06 * Fix dvd://.../title[.chapter] handling (somewhat broken in 1.1.8). * Fix switching DVB subtitles channels. * DVB sub: switch to dyn mem alloc and allow multiple CLUTs per page. @@ -122,7 +124,7 @@ xine-lib (1.1.9) * Workaround for subtitle rendering when using variable-length character encodings other than UTF-8. (There is probably still some breakage here.) -xine-lib (1.1.8) +xine-lib (1.1.8) 2007-08-27 * Send a channel-changed event to the frontend when receiving the SYNC string from last.fm streaming server. * Disable mediaLib support by default (the licenses probably disallow the @@ -148,7 +150,7 @@ xine-lib (1.1.8) * Various small video frame-handling bug fixes. * Add options to control bob deinterlacing in the XxMC video output plugin. -xine-lib (1.1.7) +xine-lib (1.1.7) 2007-06-07 * Support libdca (new name for libdts) by shuffling around the dts.h file. * Add support for MDHD version 1 atom in demux_qt. [Bug SF 1679398] * Handle single-quoted attribute values in XML. @@ -179,7 +181,7 @@ xine-lib (1.1.7) in 1.2 series. * Fix a colour format conversion crash in the fb video output driver. -xine-lib (1.1.6) +xine-lib (1.1.6) 2007-04-17 * Split the DirectFB plugin into X11 and non-X versions. * Improve the Mac OS X video output plugin. Thanks to Matt Messier. * Fixed the XcbXv plugin - an empty plugin would be built if "old" Xv @@ -191,7 +193,7 @@ xine-lib (1.1.6) * Fixed a CDDA-related crash and a DVD-related hang, both caused by the same change in 1.1.5. -xine-lib (1.1.5) +xine-lib (1.1.5) 2007-04-10 * Security fixes: - Fix heap overflow in DMO loader. (CVE-2007-1246) [Bug SF 1676925] Thanks to Kees Cook for reporting. @@ -245,7 +247,7 @@ xine-lib (1.1.5) * Support multiple audio PID in MPEG TS. Patch by Julian Scheel. * Improvement in portability to OpenBSD, thanks to Pascal S. de Kloe. -xine-lib (1.1.4) +xine-lib (1.1.4) 2007-01-28 * Mark string-type configuration items according to whether they're plain strings or names of files, device nodes or directories. This information is available to front ends (via .num_value) so that they can present @@ -311,7 +313,7 @@ xine-lib (1.1.4) * Fix audio/video sync problem with NTSC DVDs (introduced in 1.1.2). [Bugs SF 1544349, SF 1589644] -xine-lib (1.1.3) +xine-lib (1.1.3) 2006-12-03 * Security fixes: - Heap overflow in libmms (related to CVE-2006-2200) - Buffer overrun in Real Media input plugin. [Bug SF 1603458] @@ -356,7 +358,7 @@ xine-lib (1.1.3) * Fix some crashes caused by MP3 files (and possibly others) being misdetected as AAC. -xine-lib (1.1.2) +xine-lib (1.1.2) 2006-07-09 * Security fixes: - CVE-2005-4048: possible buffer overflow in libavcodec (crafted PNGs). - CVE-2006-2802: possible buffer overflow in the HTTP plugin. @@ -392,7 +394,7 @@ xine-lib (1.1.2) * Fixed some win32 codec freezes when configured w32-path doesn't exist * Add support for RealPlayer 10 codecs (from SUSE) -xine-lib (1.1.1) +xine-lib (1.1.1) 2005-11-15 * Improve sound quality when using alsa 1.0.9 or above. When playing a 44.1khz stream on a 48khz only capable sound card. It bypasses alsa-lib resampler and uses xine's @@ -417,7 +419,7 @@ xine-lib (1.1.1) * cddb improvements/fixes (DTITLE/DYEAR parsing, timeout increase and multiline entries support) [Bug SF 1205274] -xine-lib (1.1.0) +xine-lib (1.1.0) 2005-07-26 * new quality deinterlacer from dscaler: GreedyH (Greedy High Motion) * new quality deinterlacer from dscaler: TomsMoComp (Tom's Motion Compensated) * added help for most deinterlace methods @@ -517,7 +519,7 @@ xine-lib (1.0.1) flexible plugin linking * support for Windows Media Audio Lossless -xine-lib (1.0) +xine-lib (1.0) 2004-12-25 * unbreak DXR3 plugin * fix crash in the AIFF demuxer on oversized chunks * fix crash in the sputext decoder when subtitles have too many lines @@ -532,7 +534,7 @@ xine-lib (1.0) * fixed crash related to relative HTTP redirect URLs (implemented canonicalisation) * linking libXv dynamically, fixes breakage of Xv plugin -xine-lib (1-rc8) +xine-lib (1-rc8) 2004-12-15 * Multiple security vulnerabilities fixed on PNM and Real RTSP clients * Rewrote OpenGL output plugin. * Fixed segfault when seeking with the "xvmc" and "xxmc" plugins playing @@ -566,7 +568,7 @@ xine-lib (1-rc8) * meta info (title, artist, etc) returned by the xine-lib is now UTF8 * new XINE_META_INFO_TRACK_NUMBER meta info [... 422 lines omitted ...] -xine (0.3.5) unstable; urgency=low +xine (0.3.5) 2001-01-10 * (hopefully) fixed autoconf for Athlon processors * fixed aspect ratio calculation (=> SVCD support) @@ -1597,7 +1599,7 @@ xine (0.3.5) unstable; urgency=low -- Siggi Langauf <si...@us...> Wed, 10 Jan 2001 11:10:57 +0100 -xine (0.3.4) unstable; urgency=low +xine (0.3.4) 2001-01-08 * re-debianized package using debhelper (much cleaner debian packages) @@ -1608,8 +1610,7 @@ xine (0.3.4) unstable; urgency=low -- Siggi Langauf <si...@us...> Mon, 8 Jan 2001 04:03:11 +0100 - -xine (0.3.3) unstable; urgency=low +xine (0.3.3) 2001-01-04 * playlist, autoplay function * seamless branching @@ -1620,8 +1621,7 @@ xine (0.3.3) unstable; urgency=low -- Siggi Langauf <si...@us...> Thu, 04 Jan 2001 01:37:42 +0100 - -xine (0.3.2) unstable; urgency=low +xine (0.3.2) 2000-12-13 * audio rate up/downsampling * new yuv2rgb routines @@ -1635,16 +1635,14 @@ xine (0.3.2) unstable; urgency=low -- Siggi Langauf <si...@us...> Wed, 13 Dec 2000 02:44:18 +0100 - -xine (0.3.1p1) unstable; urgency=high +xine (0.3.1p1) 2000-11-21 * Bugfix for Debian package: 0.3.1 always segfaulted. This release should work... -- Siggi Langauf <si...@us...> Tue, 21 Nov 2000 21:43:18 +0100 - -xine (0.3.1) unstable; urgency=low +xine (0.3.1) 2000-11-20 * Initial release of Debian package. @@ -1656,38 +1654,42 @@ xine (0.3.1) unstable; urgency=low -- Siggi Langauf <si...@us...> Sun, 19 Nov 2000 15:33:28 +0100 -xine (0.3.0+older) unstable; urgency=low - - 0.3.0 - - NULL audio driver (ability to run without sound card) - - ALSA audio driver - - pause function - - simple playlist function - - massive performance improvements for xshm - through subslice output - - gui/skin improvements - - improved build process - - improved internal architecture - - many minor updates/bugfixes - - 0.2.4 - this is a maintenance/bugfix - release, just wanted to release all the small little changes - before we go for the next big architecture update that will - be in the 0.3.x series - - - 0.2.3 - - included patches by Alan Cox: - net_plugin, bug fixes (i.e. VCD ...) - - xshm video output module fixed for bpp>16 - (but don't use that for speed reasons!) - - new iDCT_mmx code from walken - => picture quality massively improved :)) - - FAQ update - - speed improvements due to new compiler switches - - minor Makefile fixes for FreeBSD ports +xine (0.3.0) 2000-11-18 + + - NULL audio driver (ability to run without sound card) + - ALSA audio driver + - pause function + - simple playlist function + - massive performance improvements for xshm through subslice output + - gui/skin improvements + - improved build process + - improved internal architecture + - many minor updates/bugfixes + +xine (0.2.4) 2000-10-30 + + - this is a maintenance/bugfix release, just wanted to release all the + small little changes before we go for the next big architecture update + that will be in the 0.3.x series + +xine (0.2.3) 2000-10-15 + + - included patches by Alan Cox: + net_plugin, bug fixes (i.e. VCD ...) + - xshm video output module fixed for bpp>16 + (but don't use that for speed reasons!) + - new iDCT_mmx code from walken + => picture quality massively improved :)) + - FAQ update + - speed improvements due to new compiler switches + - minor Makefile fixes for FreeBSD ports -- Siggi Langauf <si...@us...> Sun, 7 Jan 2001 23:59:12 +0100 - +xine (0.2.2) 2000-10-10 + +xine (0.2.1) 2000-10-10 + +xine (0.2.0) 2000-09-28 + +xine (0.1.3) 2000-08-17 diff -r df0f97a4bf34d75284aacd902a323a1d81f28d49 -r 115f056ed57a7a06ccc4a62042dd3fbac9455034 debian/control --- a/debian/control Wed Jan 23 00:52:10 2008 +0000 +++ b/debian/control Tue Jan 22 18:47:15 2008 +0100 @@ -29,7 +29,7 @@ Package: libxine-dev Package: libxine-dev Architecture: any Section: libdevel -Depends: libxine2 (= ${Source-Version}), libc6-dev, zlib1g-dev | libz-dev, libslang2-dev | slang1-dev, libfreetype6-dev +Depends: libxine2 (= ${Source-Version}), libc6-dev, zlib1g-dev | libz-dev, libslang2-dev | slang1-dev, libfreetype6-dev, pkg-config Conflicts: xine-ui (<< 0.9.10), libxine-dev Description: the xine video player library, development packages This contains development files (headers, documentation and the like) diff -r df0f97a4bf34d75284aacd902a323a1d81f28d49 -r 115f056ed57a7a06ccc4a62042dd3fbac9455034 misc/libxine.pc.in --- a/misc/libxine.pc.in Wed Jan 23 00:52:10 2008 +0000 +++ b/misc/libxine.pc.in Tue Jan 22 18:47:15 2008 +0100 @@ -17,7 +17,7 @@ objcflags=@OBJCFLAGS@ Name: libxine Description: The xine engine library -Version: @XINE_MAJOR@.@XINE_MINOR@.@XINE_SUB@ +Version: @XINE_MAJOR@.@XINE_MINOR@.@XINE_SUB@@XINE_PATCH@ Requires: Libs: -L${libdir} -lxine Libs.private: @ZLIB_LIBS@ @NET_LIBS@ @PTHREAD_LIBS@ @LIBICONV@ @RT_LIBS@ diff -r df0f97a4bf34d75284aacd902a323a1d81f28d49 -r 115f056ed57a7a06ccc4a62042dd3fbac9455034 misc/xine-config --- a/misc/xine-config Wed Jan 23 00:52:10 2008 +0000 +++ b/misc/xine-config Tue Jan 22 18:47:15 2008 +0100 @@ -43,11 +43,11 @@ while test $# -gt 0; do if [ "$exec_prefix" = '' ]; then exec_prefix="$optarg" fi + args="$args${args+ }--variable=prefix" ;; --exec-prefix=*) exec_prefix="$optarg" - ;; - --prefix|--exec-prefix) + args="$args${args+ }--variable=exec_prefix" ;; --version) args="$args${args+ }--modversion" @@ -55,8 +55,11 @@ while test $# -gt 0; do --cflags|--libs) args="$args${args+ }$1" ;; - --acflags|--plugindir|--datadir|--scriptdir|--localedir|--objcflags) + --prefix|--acflags|--plugindir|--datadir|--scriptdir|--localedir|--objcflags) args="$args${args+ }--variable=${1#--}" + ;; + --exec-prefix) + args="$args${args+ }--variable=exec_prefix" ;; *) usage 1 1>&2 @@ -68,5 +71,5 @@ echo 'xine-config is DEPRECATED. Use pkg echo 'xine-config is DEPRECATED. Use pkg-config instead.' >&2 exec pkg-config "${prefix+--define-variable=prefix=}$prefix" \ - "${exec_prefix+--define-variable=exc_prefix=}$exec_prefix" \ + "${exec_prefix+--define-variable=exec_prefix=}$exec_prefix" \ $args libxine diff -r df0f97a4bf34d75284aacd902a323a1d81f28d49 -r 115f056ed57a7a06ccc4a62042dd3fbac9455034 src/audio_dec/xine_mad_decoder.c --- a/src/audio_dec/xine_mad_decoder.c Wed Jan 23 00:52:10 2008 +0000 +++ b/src/audio_dec/xine_mad_decoder.c Tue Jan 22 18:47:15 2008 +0100 @@ -149,6 +149,7 @@ static void mad_decode_data (audio_decod static void mad_decode_data (audio_decoder_t *this_gen, buf_element_t *buf) { mad_decoder_t *this = (mad_decoder_t *) this_gen; + int bytes_in_buffer_at_pts; lprintf ("decode data, size: %d, decoder_flags: %d\n", buf->size, buf->decoder_flags); @@ -169,6 +170,8 @@ static void mad_decode_data (audio_decod } else { this->preview_mode = 1; } + + bytes_in_buffer_at_pts = this->bytes_in_buffer; xine_fast_memcpy (&this->buffer[this->bytes_in_buffer], buf->content, buf->size); @@ -271,6 +274,8 @@ static void mad_decode_data (audio_decod struct mad_pcm *pcm = &this->synth.pcm; audio_buffer_t *audio_buffer; uint16_t *output; + int bitrate; + int pts_offset; audio_buffer = this->xstream->audio_out->get_buffer (this->xstream->audio_out); output = audio_buffer->mem; @@ -291,7 +296,22 @@ static void mad_decode_data (audio_decod } audio_buffer->num_frames = pcm->length; - audio_buffer->vpts = buf->pts; + + /* pts computing */ + if (this->frame.header.bitrate > 0) { + bitrate = this->frame.header.bitrate; + } else { + bitrate = _x_stream_info_get(this->xstream, XINE_STREAM_INFO_AUDIO_BITRATE); + lprintf("offset %d bps\n", bitrate); + } + audio_buffer->vpts = buf->pts; + if (audio_buffer->vpts && (bitrate > 0)) { + pts_offset = (bytes_in_buffer_at_pts * 8 * 90) / (bitrate / 1000); + lprintf("pts: %"PRId64", offset: %d pts, %d bytes\n", buf->pts, pts_offset, bytes_in_buffer_at_pts); + if (audio_buffer->vpts < pts_offset) + pts_offset = audio_buffer->vpts; + audio_buffer->vpts -= pts_offset; + } this->xstream->audio_out->put_buffer (this->xstream->audio_out, audio_buffer, this->xstream); |