summaryrefslogtreecommitdiff
path: root/src/demuxers
AgeCommit message (Collapse)Author
2007-11-10Delete most of the CVS $Id$/$Log$ lines.Darren Salt
--HG-- extra : transplant_source : %E0%D0%C5%8B%BEU%DD%24%5D7%1F%ADV%AD%EB%23%CBU%80%EB
2007-11-09Update FSF address on non-contributed code and COPYING files.Diego 'Flameeyes' Pettenò
For contributed code, leave whatever the version we last synced for is using to make simpler future syncs.
2007-10-31Improve PTS wrap detection for large A/V offsets.Reinhard Nißl
The last fix to PTS wrap detection could not handle streams with A/V offsets larger than 3 seconds. The improved version can deal with them now. --HG-- extra : transplant_source : %89%1F%7E%12%D5r%A8%CE%95N%BAG%96%02%60%0C%10%9Aar
2007-10-18fix issue with non-seekable stream in demux_flvClaudio Ciccani
2007-10-10Stop a really irritating fprintf() that really should not be.Matt Messier
(transplanted from 2b2f2adc8a1e0a05d89354ff259f7b2a331aa071) --HG-- extra : transplant_source : %2B/%2A%DC%8A%1E%0A%05%D8%93T%FF%25%9F%7B%2A3%1A%A0q
2007-10-01Fix incorrect H.264 detection on successive MPEG1/2 B frames.Reinhard Nißl
Successive MPEG1/2 B frames (each with a slice #9) could incorrectly lead to the assumption of a H.264 stream, as sequence or group start codes were not seen for these frames. So the detection logic interpreted the slice #9 start codes as H.264 access unit delimiters and therefore incorrectly switched to H.264 buffer type instead of MPEG1/2. Extending the detection logic to consider MPEG1/2 picture start codes as well (which do not appear in H.264 streams), prevents false positives.
2007-09-09fix spudvb decoder updateChristophe Thommeret
2007-09-09Fix switching DVB subtitles channels.Christophe Thommeret
2007-08-17mpeg_ts multiple audio streams fix + spu lang fixChristophe Thommeret
With current code, ts demuxer stores audio tracks in the order it finds it in PMT, but doesn't correctly set the buffer type so stream's audio_track_map may (and often) have a different order and so a user can get german audio when selecting "ita" ! Bad. This patch fixes that. It also fixes get_optional_data to return correct spu lang instead of none.
2007-07-08Patch: mpeg_ts + ffmpegChristophe Thommeret
Attached is a little patch that allows using ffmpegvideo w/o direct rendering to play mpeg2 ts. It works for both mpeg2 and h264.
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.
2007-06-13Fix compiler warning (pointer arithmetic).Albert Lee
2007-06-09Add $(LTLIBICONV) wherever objdump -R shows a dependency on iconv functions.Darren Salt
Some plugins may have been missed due to them not being built here.
2007-06-09Add $(LTLIBINTL) wherever objdump -R shows a dependency on gettext functions.Darren Salt
Some plugins may have been missed due to them not being built here.
2007-06-08Add two missing alloca.h includes and clean up one other.Darren Salt
2007-06-03[patch] Fix video pid misdetectionAndrew de Quincey
Hi, the next bug that has been annoying me is as follows. I have some streams recorded from BBC4 on UK DVB-T. BBC4 only actually starts transmitting at about 7pm; prior to that there is a static picture saying it is not playing just now. With these streams and xine, I would get audio, but no picture. Looking at the PMT table during the static picture, all the streams have type 0x0b. However there IS a video stream in there, but there are also several streams of binary data. Xine's current video PID auto-detection code was locking on to one of these streams of binary data because it contained the magic sequence 00 00 01 e0 at one of the PUS. *HOWEVER* it is NOT a PES stream; this sequence is just an accident. The other problem is that xine can only handle one video stream; so once it was misdetected once, it was stuck at that PID. The attached patch changes the corrupted_pes flag into a counter. If a video stream has more than CORRUPT_PES_THRESHOLD corrupt PES packets in a row, then it is deselected as the video stream, and auto-detection is kicked off again. Auto-detection will now also ignore any streams seen previously which have a nonzero corrupted_pes count. This works very well; I can now see the video fine. One possible issue might be that if you get a lot of corrupt PES in a stream which really IS the video stream, it will be deselected. However, this is not actually a problem: once the corruption goes away, the corrupted_pes counter will be reset to 0, and the stream will once again be autodetected as the video stream (and playback will continue from there).
2007-06-01Prioritise the musepack demuxer over mpgaudio, as sometimes the latter can ↵Bram Verweij
misfire and report a good file as unplayable.
2007-05-31Patch: fix parsing qt/mov embedded referncesClaudio Ciccani
The attached patch fixes a problem with embedded references in recent versions of quicktime's movie formats. Apparently there is an additional atom (RMRA) before the RMDA atom: it works like a container for all subsequent atoms, so it can be safely skipped. You can test yourself what I'm saying by watching some trailers at apple.com (http://www.apple.com/trailers). -- Regards, Claudio Ciccani klan@users.sf.net http://directfb.org http://sf.net/projects/php-directfb
2007-05-29Actually id3v2_tagsize was used by demux_mpgaudio and demux_aac; but as it ↵Diego 'Flameeyes' Pettenò
makes little sense, move BE_*_synchsafe functions from id3.c to id3.h and declare them inline, then BE_32_synchsafe can be replaced to id3v2_tagsize as drop in.
2007-05-29Fix typo reporting ID3v2.4 tags as ID3v2.3.Diego 'Flameeyes' Pettenò
2007-05-29Print the invalid header flags when found.Diego 'Flameeyes' Pettenò
2007-05-29Add a comment about id3v2_istag function and remove id3v2_tagsize function ↵Diego 'Flameeyes' Pettenò
(was used by demux_flac only).
2007-05-29Correctly parse ID3 tags, and avoid skipping over them manually. This ↵Diego 'Flameeyes' Pettenò
reduces again the amount of troublesome FLAC files.
2007-05-02[PATCH] Remove packet count from demux_ts, to remove a long delaySimon Farnsworth
The attached patch applies after my logging patches (I can regenerate if needed). demux_ts attempted to read packets from the input 200 times before giving up. When playing a local file, this is harmless, as it will hit EOF 200 times; however, input_dvb waits 5 seconds for packets on each call to read, resulting in a 1000 second delay if tuning fails. Remove the counting of input packets, and add a comment to read() in input_plugin.h, to indicate that we expect inputs to try and return some data when read() is called. This fixes the delay, and makes it clear to future maintainers that they shouldn't expect to loop like this. -- Simon Farnsworth
2007-05-02[PATCH] Enhance logging in demux_ts, input_dvb and video_out_xvSimon Farnsworth
The three attached patches (against 1.1.6) each increase the amount of debug logging in their respective components. We've found the extra logging useful when trying to track down faults. I've split this into three patches to make it easier to apply only some of our changes. -- Comments welcome, Simon Farnsworth
2007-05-06Merge Reinhard Nissl's demuxer fixes.Darren Salt
2007-04-21Add support for MDHD version 1 atom in demux_qt. [bug #1679398]Diego 'Flameeyes' Pettenò
2007-04-17Fix DVD playback (was hanging when either the AC3 or DTS demuxers were probed).Darren Salt
This may have side-effects wrt other streams; CDDA is fine, though.
2007-04-15Avoid sending BUF_FLAG_FRAME_END before the first frame.Reinhard Nißl
When BUF_FLAG_FRAME_END is sent before the first frame, decoding fails as there is no data and a "bad" frame of size 0x0 will be allocated, which is really bad as such as frame is simply invalid.
2007-04-13Use the stream's audio_fifo as it hasn't been reported on the demuxer's ↵Diego 'Flameeyes' Pettenò
instance yet.
2007-04-10Replace the duplicated meFOURCC macro with ME_FOURCC that is declared in ↵Diego 'Flameeyes' Pettenò
bswap.h already. (transplanted from a7820d16324dbc6fd6b35481a78ff532f59ebe71) --HG-- extra : transplant_source : %A7%82%0D%162M%BCo%D6%B3T%81%A7%8F%F52%F5%9E%BEq
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-07Use CC_ATTRIBUTE_FORMAT; replace __attribute((format(printf, ...))) accordingly.Darren Salt
2007-04-03Rationalise use of .hgignore, removes a bunch of files that only ignored ↵Diego 'Flameeyes' Pettenò
automake-related files.
2007-04-02Migrate all .cvsignore files to .hgignore.Diego 'Flameeyes' Pettenò
--HG-- rename : .cvsignore => .hgignore rename : doc/.cvsignore => doc/.hgignore rename : doc/faq/.cvsignore => doc/faq/.hgignore rename : doc/hackersguide/.cvsignore => doc/hackersguide/.hgignore rename : doc/man/.cvsignore => doc/man/.hgignore rename : doc/man/en/.cvsignore => doc/man/en/.hgignore rename : include/.cvsignore => include/.hgignore rename : intl/.cvsignore => intl/.hgignore rename : lib/.cvsignore => lib/.hgignore rename : m4/.cvsignore => m4/.hgignore rename : misc/.cvsignore => misc/.hgignore rename : misc/fonts/.cvsignore => misc/fonts/.hgignore rename : po/.cvsignore => po/.hgignore rename : src/.cvsignore => src/.hgignore rename : src/audio_out/.cvsignore => src/audio_out/.hgignore rename : src/combined/.cvsignore => src/combined/.hgignore rename : src/demuxers/.cvsignore => src/demuxers/.hgignore rename : src/dxr3/.cvsignore => src/dxr3/.hgignore rename : src/input/.cvsignore => src/input/.hgignore rename : src/input/dvb/.cvsignore => src/input/dvb/.hgignore rename : src/input/libdvdnav/.cvsignore => src/input/libdvdnav/.hgignore rename : src/input/libreal/.cvsignore => src/input/libreal/.hgignore rename : src/input/librtsp/.cvsignore => src/input/librtsp/.hgignore rename : src/input/vcd/.cvsignore => src/input/vcd/.hgignore rename : src/input/vcd/libcdio/.cvsignore => src/input/vcd/libcdio/.hgignore rename : src/input/vcd/libcdio/MSWindows/.cvsignore => src/input/vcd/libcdio/MSWindows/.hgignore rename : src/input/vcd/libcdio/cdio/.cvsignore => src/input/vcd/libcdio/cdio/.hgignore rename : src/input/vcd/libcdio/image/.cvsignore => src/input/vcd/libcdio/image/.hgignore rename : src/input/vcd/libvcd/.cvsignore => src/input/vcd/libvcd/.hgignore rename : src/input/vcd/libvcd/libvcd/.cvsignore => src/input/vcd/libvcd/libvcd/.hgignore rename : src/liba52/.cvsignore => src/liba52/.hgignore rename : src/libdts/.cvsignore => src/libdts/.hgignore rename : src/libfaad/.cvsignore => src/libfaad/.hgignore rename : src/libfaad/codebook/.cvsignore => src/libfaad/codebook/.hgignore rename : src/libffmpeg/.cvsignore => src/libffmpeg/.hgignore rename : src/libffmpeg/libavcodec/.cvsignore => src/libffmpeg/libavcodec/.hgignore rename : src/libffmpeg/libavcodec/alpha/.cvsignore => src/libffmpeg/libavcodec/alpha/.hgignore rename : src/libffmpeg/libavcodec/armv4l/.cvsignore => src/libffmpeg/libavcodec/armv4l/.hgignore rename : src/libffmpeg/libavcodec/i386/.cvsignore => src/libffmpeg/libavcodec/i386/.hgignore rename : src/libffmpeg/libavcodec/libpostproc/.cvsignore => src/libffmpeg/libavcodec/libpostproc/.hgignore rename : src/libffmpeg/libavcodec/mlib/.cvsignore => src/libffmpeg/libavcodec/mlib/.hgignore rename : src/libffmpeg/libavcodec/ppc/.cvsignore => src/libffmpeg/libavcodec/ppc/.hgignore rename : src/libffmpeg/libavcodec/sparc/.cvsignore => src/libffmpeg/libavcodec/sparc/.hgignore rename : src/libffmpeg/libavutil/.cvsignore => src/libffmpeg/libavutil/.hgignore rename : src/libflac/.cvsignore => src/libflac/.hgignore rename : src/liblpcm/.cvsignore => src/liblpcm/.hgignore rename : src/libmad/.cvsignore => src/libmad/.hgignore rename : src/libmpeg2/.cvsignore => src/libmpeg2/.hgignore rename : src/libmpeg2new/.cvsignore => src/libmpeg2new/.hgignore rename : src/libmpeg2new/include/.cvsignore => src/libmpeg2new/include/.hgignore rename : src/libmpeg2new/libmpeg2/.cvsignore => src/libmpeg2new/libmpeg2/.hgignore rename : src/libmusepack/.cvsignore => src/libmusepack/.hgignore rename : src/libmusepack/musepack/.cvsignore => src/libmusepack/musepack/.hgignore rename : src/libreal/.cvsignore => src/libreal/.hgignore rename : src/libspeex/.cvsignore => src/libspeex/.hgignore rename : src/libspucc/.cvsignore => src/libspucc/.hgignore rename : src/libspucmml/.cvsignore => src/libspucmml/.hgignore rename : src/libspudec/.cvsignore => src/libspudec/.hgignore rename : src/libspudvb/.cvsignore => src/libspudvb/.hgignore rename : src/libsputext/.cvsignore => src/libsputext/.hgignore rename : src/libtheora/.cvsignore => src/libtheora/.hgignore rename : src/libvorbis/.cvsignore => src/libvorbis/.hgignore rename : src/libw32dll/.cvsignore => src/libw32dll/.hgignore rename : src/libw32dll/DirectShow/.cvsignore => src/libw32dll/DirectShow/.hgignore rename : src/libw32dll/dmo/.cvsignore => src/libw32dll/dmo/.hgignore rename : src/libw32dll/qtx/.cvsignore => src/libw32dll/qtx/.hgignore rename : src/libw32dll/qtx/qtxsdk/.cvsignore => src/libw32dll/qtx/qtxsdk/.hgignore rename : src/libw32dll/wine/.cvsignore => src/libw32dll/wine/.hgignore rename : src/libxineadec/.cvsignore => src/libxineadec/.hgignore rename : src/libxineadec/gsm610/.cvsignore => src/libxineadec/gsm610/.hgignore rename : src/libxineadec/nosefart/.cvsignore => src/libxineadec/nosefart/.hgignore rename : src/libxinevdec/.cvsignore => src/libxinevdec/.hgignore rename : src/post/.cvsignore => src/post/.hgignore rename : src/post/audio/.cvsignore => src/post/audio/.hgignore rename : src/post/deinterlace/.cvsignore => src/post/deinterlace/.hgignore rename : src/post/deinterlace/plugins/.cvsignore => src/post/deinterlace/plugins/.hgignore rename : src/post/goom/.cvsignore => src/post/goom/.hgignore rename : src/post/mosaico/.cvsignore => src/post/mosaico/.hgignore rename : src/post/planar/.cvsignore => src/post/planar/.hgignore rename : src/post/visualizations/.cvsignore => src/post/visualizations/.hgignore rename : src/video_out/.cvsignore => src/video_out/.hgignore rename : src/video_out/libdha/.cvsignore => src/video_out/libdha/.hgignore rename : src/video_out/libdha/bin/.cvsignore => src/video_out/libdha/bin/.hgignore rename : src/video_out/libdha/kernelhelper/.cvsignore => src/video_out/libdha/kernelhelper/.hgignore rename : src/video_out/libdha/oth/.cvsignore => src/video_out/libdha/oth/.hgignore rename : src/video_out/libdha/sysdep/.cvsignore => src/video_out/libdha/sysdep/.hgignore rename : src/video_out/macosx/.cvsignore => src/video_out/macosx/.hgignore rename : src/video_out/vidix/.cvsignore => src/video_out/vidix/.hgignore rename : src/video_out/vidix/drivers/.cvsignore => src/video_out/vidix/drivers/.hgignore rename : src/xine-engine/.cvsignore => src/xine-engine/.hgignore rename : src/xine-utils/.cvsignore => src/xine-utils/.hgignore rename : win32/.cvsignore => win32/.hgignore rename : win32/include/.cvsignore => win32/include/.hgignore
2007-04-02Assume that the audio stream is AC3 on PMTs with ID 0x6a, rather than doing ↵Diego 'Flameeyes' Pettenò
extra checks. If there are cases where the stream is not AC3, it would be nicer to blacklist them, rather than whitelist the cases where it's correct. Patch by Julian Scheel. CVS patchset: 8788 CVS date: 2007/04/02 10:46:08
2007-04-02Rename no_spu_tracks to spu_tracks_count and MAX_NO_SPU_TRACKS to ↵Diego 'Flameeyes' Pettenò
MAX_SPU_TRACKS. Beside the fact that a MAX value is, well, always for the max number of tracks, the abbrevation "number" -> "no" is ambiguous as one could read it as "there are no spu tracks". CVS patchset: 8787 CVS date: 2007/04/02 10:13:02
2007-04-02Remove extraneous debug printf().Diego 'Flameeyes' Pettenò
CVS patchset: 8786 CVS date: 2007/04/02 09:51:53
2007-04-01Support multiple audio PID in MPEG TS. Patch by Julian Scheel (slightly ↵Diego 'Flameeyes' Pettenò
modified). CVS patchset: 8784 CVS date: 2007/04/01 22:49:07
2007-03-29More reordering to reduce padding.Diego 'Flameeyes' Pettenò
CVS patchset: 8773 CVS date: 2007/03/29 19:38:51
2007-03-29Reorder fields and make use of a bitmask for boolean flags.Diego 'Flameeyes' Pettenò
CVS patchset: 8772 CVS date: 2007/03/29 19:24:18
2007-03-29Reorder a few fields to, well, fill some holes.Diego 'Flameeyes' Pettenò
CVS patchset: 8771 CVS date: 2007/03/29 19:07:00
2007-03-29A little more reodering, and convert a few more fields to 1-bit flags.Diego 'Flameeyes' Pettenò
CVS patchset: 8762 CVS date: 2007/03/29 17:11:36
2007-03-29Reorder fields to remove a 4+4 bytes holes.Diego 'Flameeyes' Pettenò
CVS patchset: 8761 CVS date: 2007/03/29 17:03:06
2007-03-29Remove unused bytes_per_sec attribute on demux_ra_t. Move block_align and ↵Diego 'Flameeyes' Pettenò
make seek_flag a 1-bit field. This reduces as much as possible the padding. Note that block_align should remain on the same cacheline as the fifo pointers, as it's used at every chunk, while the rest of the fields are used only when seeking. CVS patchset: 8760 CVS date: 2007/03/29 17:00:32
2007-03-29Move streaminfo at the end of the structure to avoid padding.Diego 'Flameeyes' Pettenò
CVS patchset: 8759 CVS date: 2007/03/29 16:52:23
2007-03-29Reorder demux_tta_t structure so that all the important pointers and ↵Diego 'Flameeyes' Pettenò
variables fall into the same cacheline, while the header can simply remain on a different one, as it's needed only at the begin of the encoding. CVS patchset: 8758 CVS date: 2007/03/29 16:46:23
2007-03-29Disable logging that I've left enabled by mistake.Diego 'Flameeyes' Pettenò
CVS patchset: 8757 CVS date: 2007/03/29 16:32:12
2007-03-29Bitrate has to be 32-bit, or it overruns.Diego 'Flameeyes' Pettenò
CVS patchset: 8756 CVS date: 2007/03/29 16:21:48