summaryrefslogtreecommitdiffstats
path: root/libmpdemux
Commit message (Collapse)AuthorAgeFilesLines
* Merge svn changes up to r30104Uoti Urpala2009-12-301-0/+1
|\ | | | | | | Ignore the broken correct-pts change in r30100.
| * create CDGR fourcc in mp_taglist and add ffcdgraphics to codecs.confcompn2009-12-241-0/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30104 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Do not use correct-pts by default for demuxer lavf, it breaks all PAFF files.cehoyos2009-12-221-2/+0
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30100 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Never include ass.h and ass_types.h directly, use ass_mp.h instead.reimar2009-12-191-1/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30067 b3059339-0415-0410-9bf9-f77b7e298cf2
* | demux_mkv.c, ebml.c: Reformat to K&R styleUoti Urpala2009-12-292-2441/+2228
| |
* | Merge svn changes up to r30055Uoti Urpala2009-12-181-5/+5
|\|
| * Do not modify priv->idx_pos when regenerating the index, use a localreimar2009-12-171-5/+5
| | | | | | | | | | | | | | | | | | variable instead. should fix seeking after starting playback with -force-idx broken by r29914. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30052 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Avoid miscompilation issues with the grow_array function more permanentlyreimar2009-12-111-1/+1
| | | | | | | | | | | | | | by marking it noinline. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29992 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Fix printf format strings with invalid '%lf' conversionUoti Urpala2009-12-152-17/+17
| | | | | | | | | | | | | | Some code used an invalid '%lf' conversion specification for double arguments. Maybe they were written that way due to confusion with scanf where doubles are indicated by '%lf'; however it is not a valid printf format specifier. Change those cases to use '%f'.
* | Support for multiple editions in MatroskaDaniel Dawson2009-12-042-27/+66
| | | | | | | | | | | | | | | | Add code to intelligently choose an appropriate Matroska edition when there are several. Will choose, in descending order of preference: the edition chosen by the user through the option "-edition <edition id>" if it exists, the first edition with EditionFlagDefault set to 1 if there is one, or the first edition.
* | demux_mkv: Detect and warn about virtual timeline nestingDaniel Dawson2009-12-042-0/+18
| | | | | | | | | | | | | | | | | | Detect use of ChapterSegmentEditionUID element in a Matroska chapter definition, indicating inclusion of an external virtual timeline, which is not yet supported. Leave the chapter is the chapter list but set segment_uid to zero. This way timeline parsing will skip the chapter and avoid nonsensical output but will still print information about missing content.
* | options: Move ass_enabled to options structUoti Urpala2009-12-021-1/+1
| |
* | demux_mkv.c: Make time arithmetic more precise in one more caseUoti Urpala2009-12-021-1/+1
| | | | | | | | | | Use rounding instead of truncation in another case of double division used with integer variables.
* | Merge svn changes up to r29962Uoti Urpala2009-11-239-37/+33
|\|
| * Finally rename the STREAM_SEEK define to MP_STREAM_SEEK, there are just too manyreimar2009-11-224-6/+6
| | | | | | | | | | | | | | name clashes, in particular with Windows headers (which define STREAM_SEEK as an enum type). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29962 b3059339-0415-0410-9bf9-f77b7e298cf2
| * av_alloc_format_context -> avformat_alloc_contextreimar2009-11-221-1/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29959 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Reuse buffer in priv context instead of allocating the 32kB probe bufferreimar2009-11-221-4/+3
| | | | | | | | | | | | | | on the stack. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29953 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Move 128kB buffer from stack to demuxer context.reimar2009-11-201-1/+2
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29940 b3059339-0415-0410-9bf9-f77b7e298cf2
| * calloc instead of malloc+memset.reimar2009-11-201-2/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29939 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Silence two gcc warnings: suggest parentheses around && within ||cehoyos2009-11-181-2/+2
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29934 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Set display size in sh_video when decoding H264.cehoyos2009-11-161-0/+2
| | | | | | | | | | | | | | This fixes H264 VDPAU decoding with some native demuxers. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29920 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Use calloc instead of initializing each struct member individually to 0.reimar2009-11-161-22/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29914 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Try to detect broken files with unaligned chunks.reimar2009-11-162-0/+16
| | | | | | | | | | | | | | | | | | This patch hopefully makes them playable as long as they have and index without breaking any other files. Fixes http://samples.mplayerhq.hu/avi/invalid_unaligned.avi with native demuxer. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29913 b3059339-0415-0410-9bf9-f77b7e298cf2
* | core: Add support for decoder reordering of pts valuesUoti Urpala2009-11-211-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a mode where libavcodec's reordered_opaque feature is used to associate container packet timestamps with decoded frames. This should improve behavior at least for MPEG files with interlaced h264; the previous code does not cope well with the libavformat demuxer producing two field packets with separate timestamps but the libavcodec h264 decoder only producing a single output frame for those two packets (so half the timestamps have no associated output frame). The current libavformat mpeg demuxer seems to finally work with interlaced h264 files and produce valid timestamps which are useful with a mode like this. By default MPlayer now selects between this new mode and the old one automatically based on the number of timestamp problems they cause; by default the new mode is used if both seem to work. The new option -pts-association-mode can be used to force a particular mode. If correct-pts mode is disabled this has no effect on timing. Also remove the "EXPERIMENTAL" marker from the manpage description of -correct-pts.
* | Merge svn changes up to r29912Uoti Urpala2009-11-169-71/+70
|\|
| * Fix declarations in mp_taglists.h and include it in mp_taglists.c toreimar2009-11-112-3/+4
| | | | | | | | | | | | | | make such mismatches impossible in the future. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29901 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Allow lavf demuxer to also probe and play files < 32 kB (full probe buffer ↵reimar2009-11-101-2/+4
| | | | | | | | | | | | | | | | | | size). Based on patch by On2. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29882 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Calculate length of ASF files with more than 1 second precision.reimar2009-11-102-2/+2
| | | | | | | | | | | | | | Based on patch by On2. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29881 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Fix length calculation for ASF, preroll is in ms, play time in 100 ns.reimar2009-11-101-1/+1
| | | | | | | | | | | | | | Based on patch by On2 git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29880 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Remove useless castreimar2009-11-101-1/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29879 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Free demuxer->teletext when closing the demuxer.reimar2009-11-101-0/+3
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29874 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Allow demuxer lavf to export CODEC_ID_DVB_TELETEXT.cehoyos2009-11-071-0/+2
| | | | | | | | | | | | | | Patch by Francesco Lavra, francescolavra interfree it git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29849 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Separate teletext from tv support.cehoyos2009-11-071-0/+3
| | | | | | | | | | | | | | Path by Francesco Lavra, francescolavra interfree it git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29848 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Remove pointless and broken (e.g. does not set aid and vid) -tsprog handlingreimar2009-11-071-22/+3
| | | | | | | | | | | | | | | | from lavf demuxer, mplayer.c makes sure IDENTIFY_PROGRAM is called with the right arguments, and that code actually works in contrast to the one in demux_open_lavf. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29847 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Remove an empty program if the one requested by IDENTIFY_PROGRAM does not existreimar2009-11-071-4/+4
| | | | | | | | | | | | | | instead of incorrectly claiming that the demuxer does not support programs. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29845 b3059339-0415-0410-9bf9-f77b7e298cf2
| * cosmetics: alphabetizecompn2009-11-031-1/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29820 b3059339-0415-0410-9bf9-f77b7e298cf2
| * 10l for breaking compilation. change eatgv to tgvcompn2009-11-031-1/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29819 b3059339-0415-0410-9bf9-f77b7e298cf2
| * add ffmpeg eatgv codeccompn2009-11-031-0/+1
| | | | | | | | | | | | | | patch by Jan Engelhardt jengelh ta medozas.de git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29816 b3059339-0415-0410-9bf9-f77b7e298cf2
| * demuxer.c: Add initialization missing from previous commituau2009-11-021-21/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | Reimar's previous commit ("Unbreak the demuxer-specific code in video.c with e.g.") added the new field "non_interleaved" in demux_stream structs, but this field was not initialized anywhere. Under suitable circumstances this could cause a "Too many video/audio packets in the buffer" error and failing playback. Fix the problem by cleaning up the code that creates new instances of the struct. Now fields will be initialized to 0 by default. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29812 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Unbreak the demuxer-specific code in video.c with e.g.reimar2009-11-012-0/+8
| | | | | | | | | | | | | | | | | | | | -audiofile by moving the code to manually interleave subtitles to mp_common.c. video.c should still be changed to not be demuxer-specific anymore, it is bad practice but fully fixing it is non-trivial. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29810 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Find and take into account stream start time for ogg files.reimar2009-10-161-19/+34
| | | | | | | | | | | | | | | | | | | | | | This also makes the demuxing function set the keyframe flag for vorbis packets that aren't header packets and have a time stamp, even if we do not have vorbis_info struct yet. The reason for this is that header packets always have 0 as time stamp. Fixes bug #1585 git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29776 b3059339-0415-0410-9bf9-f77b7e298cf2
* | demux_mkv: Stop moving FLAC extradata into stream packetsUoti Urpala2009-10-171-8/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Matroska demuxer didn't place FLAC codec extradata in the normal extradata field but instead constructed a fake data packet and inserted that at the start of the demuxer stream. Current FFmpeg FLAC decoder can read the data from the proper extradata field too, so use that mechanism instead. This fixes a problem with files that use ordered chapters to load external segments from other files that have FLAC audio. In that case there can be a seek before the audio decoder is first initialized, and the seek will flush all stream packets so the decoder would never see the inserted extra packet. That particular issue could be fixed by initializing the decoder before any seeks instead (and there could still be other similar problem cases where doing that would be more robust), but this change is still generally right. I think the previous code would also cause problems in case there are multiple audio streams; there's only a single demuxer stream used for data packets, meaning that a packet inserted for the sake of a secondary audio stream could be read by the codec of the default stream (possibly not FLAC at all) and the packet would not be available when switching to the secondary audio stream later.
* | Merge svn changes up to r29752Uoti Urpala2009-10-064-28/+13
|\| | | | | | | | | | | | | | | | | As part of merging subtitle-in-terminal changes make update_subtitles() only clear existing subtitles if called with the reset argument, and not try to set new ones. Later calls should set the needed new subtitles, and this change avoids some problems with trying to set subtitles when mp_property_sub() in command.c gets called from initialization code before full initialization.
| * Play TrueHD in BluRay with demuxer lavf.cehoyos2009-10-051-1/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29751 b3059339-0415-0410-9bf9-f77b7e298cf2
| * lavf: if seeking in the desired direction failed, also try in the opposite one,reimar2009-09-301-1/+4
| | | | | | | | | | | | | | | | otherwise we might end up at some random position (where lavf last ended up while trying to build the index). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29741 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Avoid void * arithmetic.reimar2009-09-301-1/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29740 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Simplify aac_get_sample_rate_indexreimar2009-09-301-24/+4
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29739 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Check for grow_array allocation failure.reimar2009-09-301-0/+8
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29738 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Avoid a possible crash if num_cluster_pos is 0.reimar2009-09-301-1/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29737 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Check for integer overflow in grow_array.reimar2009-09-301-1/+4
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29736 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Rearrange code of grow_array to make it easier to extend.reimar2009-09-301-2/+3
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29735 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Avoid a memleak if realloc fails in grow_array.reimar2009-09-301-0/+3
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29734 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Change grow_array argument from void ** to void *, this avoids a aliasingreimar2009-09-301-4/+5
| | | | | | | | | | | | | | | | violation (thus making gcc 4.4.x compile the code correctly) and allows to get rid of some casts at the expense of making the code less clear. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29733 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Add 0x85 ad ID for DTS audio.diego2009-09-231-0/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29703 b3059339-0415-0410-9bf9-f77b7e298cf2
| *