1
mirror of https://github.com/mpv-player/mpv synced 2025-01-13 00:06:25 +01:00
Commit Graph

3424 Commits

Author SHA1 Message Date
Uoti Urpala
ff2df2ac54 Merge svn changes up to r30322 2010-01-25 15:17:50 +02:00
Uoti Urpala
69fe2522f8 Merge svn changes up to r30301 2010-01-25 15:07:30 +02:00
Uoti Urpala
47a04d40f3 Merge svn changes up to r30250 2010-01-25 14:34:56 +02:00
reimar
1c6c7706ec -demuxer rawaudio data will often need parsing (e.g. when it is used for raw
AC3 instead of libavformat), so set needs_parsing.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30312 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-15 19:01:03 +00:00
reimar
e38bcd7d05 Use double-precision constants instead of single precision that gets cast to double.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30299 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-13 17:49:48 +00:00
cehoyos
2b3a5105ff Use double instead of float for pts.
Patch by Dan Oscarsson, Dan D Oscarsson A tieto D com 


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30298 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-12 23:03:03 +00:00
cehoyos
a91c19964d Fix MP1 with demuxer lavf in MPEG (PS) files.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30250 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-09 11:33:06 +00:00
Uoti Urpala
efe742e3fa Merge svn r30174 2010-01-08 01:22:33 +02:00
reimar
2e557e3b28 Add support for JPEG2000 via FFmpeg/OpenJPEG
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30174 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-03 00:58:56 +00:00
Uoti Urpala
52126e574c demux_mkv: improve seeking with generated index
When using generated index (-idx / -forceidx) the Matroska seeking
code first guessed a file position using bitrate-based heuristics,
then located the cluster nearest to that file position. Change it to
store cluster timestamps in addition to file positions and seek to the
cluster with the closest timestamp. This makes seeking with -idx a lot
more accurate.

This change also fixes a crash when trying to seek with generated
index before playing any data from the beginning of the file (could be
triggered by -idx together with ordered chapters or -ss for example).

I removed the code handling MATROSKA_ID_CUES in the middle of parsing
clusters. Such cue entries were not consistently handled if
encountered during playback instead of index creation and the seek
code was also buggy when they were encountered and parsed; i didn't
consider it worth the effort to fix it.
2010-01-01 19:17:51 +02:00
Uoti Urpala
3ad06dd7d2 demux_mkv: remove useless code
Remove leftover code that no longer did anything useful after earlier
changes.
2009-12-31 08:09:51 +02:00
Uoti Urpala
edcc0c9674 demux_mkv: respect -forceidx
Don't use the index included in the file if the -forceidx option was
specified.
2009-12-31 07:07:38 +02:00
Uoti Urpala
d46b86bc7c Merge svn changes up to r30136
Ignore another broken correct-pts change in 30134.
2009-12-30 00:56:10 +02:00
Uoti Urpala
dc7f183022 Merge svn changes up to r30104
Ignore the broken correct-pts change in r30100.
2009-12-30 00:14:20 +02:00
Uoti Urpala
9fe4f64782 demux_mkv.c, ebml.c: Reformat to K&R style 2009-12-29 21:58:30 +02:00
cehoyos
ed4dbd3cbd Do not use correct-pts for mpeg-ts and matroska: It breaks PAFF samples.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30134 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-28 13:49:08 +00:00
cehoyos
d79daa2736 Revert r30100: It breaks some mov and asf samples.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30133 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-28 13:39:26 +00:00
reimar
ca2af2d0e7 Add support for parsing audio streams (though should be easy to extend to video)
via libavcodec.
Parsing can be done at the demuxer stage (currently disabled) or at the decoder
(ad_ffmpeg, enabled).
Should allow using the libavcodec AAC, DTS, ... decoders independent of container
format.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30130 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-27 15:28:01 +00:00
reimar
bcda7b2f99 Remove currently unneeded members accidentally added in the last revision.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30129 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-27 14:42:37 +00:00
reimar
52dab179cb Introduce a sh_common struct that contains the parts in common by the audio, video
and sub "stream headers".
One reason for this is to help avoid/make more obvious things like members with
the same function but different name (extradata vs. codecdata etc.), or members
with the same name but different semantics (pts for audio vs. pts for video).


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30128 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-27 14:40:56 +00:00
reimar
4fbcbaacbc Remove one more incorrect direct ass.h include.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30127 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-27 14:35:09 +00:00
reimar
e0423842de Fix grammar/missing verb in description.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30112 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-25 09:03:02 +00:00
reimar
57963ac45d Remove unnecessary entries from extension_table, these formats are already
in the lavf preferred_list, and thus will be handled by lavf immediately.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30111 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-25 08:55:36 +00:00
reimar
d7549acc01 Add a (unfortunately rather long) explanation on how and when to use it
to the file extension -> demuxer mapping list.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30110 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-25 08:48:57 +00:00
compn
c0aeb1c1c7 force cdg to lavf demuxer in extensions.c, misdetected as mpeg otherwise
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30109 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-24 18:20:03 +00:00
compn
a0601ed256 create CDGR fourcc in mp_taglist and add ffcdgraphics to codecs.conf
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30104 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-24 04:36:04 +00:00
cehoyos
468d5f2e0a Do not use correct-pts by default for demuxer lavf, it breaks all PAFF files.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30100 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-22 20:56:59 +00:00
reimar
4ab63df7af Never include ass.h and ass_types.h directly, use ass_mp.h instead.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30067 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-19 15:32:17 +00:00
Uoti Urpala
efcc9ad712 Merge svn changes up to r30055 2009-12-18 18:54:42 +02:00
reimar
baaee832fd Do not modify priv->idx_pos when regenerating the index, use a local
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
2009-12-17 18:31:59 +00:00
Uoti Urpala
1598302be6 Fix printf format strings with invalid '%lf' conversion
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'.
2009-12-15 15:27:30 +02:00
reimar
a5ceff924f Avoid miscompilation issues with the grow_array function more permanently
by marking it noinline.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29992 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-11 22:27:42 +00:00
Daniel Dawson
c3c0309eec Support for multiple editions in Matroska
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.
2009-12-04 19:43:17 +02:00
Daniel Dawson
9b81b7827c demux_mkv: Detect and warn about virtual timeline nesting
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.
2009-12-04 07:15:22 +02:00
Uoti Urpala
9afcdab694 options: Move ass_enabled to options struct 2009-12-02 17:37:39 +02:00
Uoti Urpala
74fd43cf70 demux_mkv.c: Make time arithmetic more precise in one more case
Use rounding instead of truncation in another case of double division
used with integer variables.
2009-12-02 03:55:50 +02:00
Uoti Urpala
5995bc175a Merge svn changes up to r29962 2009-11-23 01:56:21 +02:00
reimar
af2988cbce Finally rename the STREAM_SEEK define to MP_STREAM_SEEK, there are just too many
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
2009-11-22 15:18:21 +00:00
reimar
897f210bf4 av_alloc_format_context -> avformat_alloc_context
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29959 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-22 14:15:41 +00:00
reimar
054d1889ef Reuse buffer in priv context instead of allocating the 32kB probe buffer
on the stack.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29953 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-22 13:06:44 +00:00
Uoti Urpala
74b7dcc5f4 core: Add support for decoder reordering of pts values
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.
2009-11-21 20:53:10 +02:00
reimar
d1a2c82198 Move 128kB buffer from stack to demuxer context.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29940 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-20 23:48:16 +00:00
reimar
66c41d41c5 calloc instead of malloc+memset.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29939 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-20 23:41:06 +00:00
cehoyos
c038d74c9b Silence two gcc warnings: suggest parentheses around && within ||
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29934 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-18 18:24:05 +00:00
cehoyos
69e86099e2 Set display size in sh_video when decoding H264.
This fixes H264 VDPAU decoding with some native demuxers.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29920 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-16 21:38:32 +00:00
reimar
9a2be82856 Use calloc instead of initializing each struct member individually to 0.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29914 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-16 10:44:00 +00:00
reimar
4eac890e07 Try to detect broken files with unaligned chunks.
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
2009-11-16 10:41:06 +00:00
Uoti Urpala
287b62163e Merge svn changes up to r29912 2009-11-16 07:01:46 +02:00
reimar
30ffc2dea4 Fix declarations in mp_taglists.h and include it in mp_taglists.c to
make such mismatches impossible in the future.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29901 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-11 11:52:36 +00:00
reimar
085f35f4b4 Allow lavf demuxer to also probe and play files < 32 kB (full probe buffer size).
Based on patch by On2.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29882 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-10 16:49:00 +00:00