1
0
mirror of https://github.com/mpv-player/mpv synced 2025-01-14 11:01:35 +00:00
mpv/loader
sesse 45fd2e0457 Use the high-level QuickTime decoding APIs (DecompressSequenceFrameS and
friends) instead of the unsupported, internal ones (ImageCodecBeginBand
etc.). This is a prerequisite for, among others, Apple ProRes 4:2:2 support,
and simplifies the file by quite a bit.

Tested on Linux with all existing QuickTime codecs I could get to work in the
first place; qt261, qtavui, qtsvq3 have no change. qtcvid appears to not give
bit-exact the same output as before, but it looks just the same in playback
to me. qt3ivx stops crashing on exit (so works better than before). With some
extra patches and a codecs.conf entry, ProRes 4:2:2 also works, including on
Linux.

Since codec initialization is now actually done on decoder init instead of on
first frame, fallback should also work a bit better (although usually, qtvideo
is last in the chain). Also made the decoder complain explicitly if the
demuxer data is not there (ie., the user tried to run without -demuxer mov).

This patch is a cleaned up version of what Andrew Wason (rectalogic A
rectalogic D com) posted to mplayer-dev-eng in June.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30899 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-03-15 12:05:56 +00:00
..
dmo Do not cast the results of malloc/calloc/realloc. 2010-02-26 15:01:37 +00:00
dshow Fix a syntax error in graph.h. 2010-03-09 13:19:25 +00:00
qtx Use the high-level QuickTime decoding APIs (DecompressSequenceFrameS and 2010-03-15 12:05:56 +00:00
wine Add public function VideoForWindowsVersion() to the appropriate header file. 2010-02-21 23:33:03 +00:00
afl.c whitespace cosmetics: Remove all trailing whitespace. 2009-05-13 02:58:57 +00:00
com.h Remove extern "C" declarations from loader code. 2010-02-11 14:33:57 +00:00
debug.h
drv.c Replace separate Win32, XAnim and Real codec directories by one global dir. 2010-03-14 16:13:32 +00:00
drv.h Remove extern "C" declarations from loader code. 2010-02-11 14:33:57 +00:00
elfdll.c Do not cast the results of malloc/calloc/realloc. 2010-02-26 15:01:37 +00:00
ext.c Do not cast the results of malloc/calloc/realloc. 2010-02-26 15:01:37 +00:00
ext.h
ldt_keeper.c Do not cast the results of malloc/calloc/realloc. 2010-02-26 15:01:37 +00:00
ldt_keeper.h Remove extern "C" declarations from loader code. 2010-02-11 14:33:57 +00:00
loader.h Remove extern "C" declarations from loader code. 2010-02-11 14:33:57 +00:00
module.c Do not cast the results of malloc/calloc/realloc. 2010-02-26 15:01:37 +00:00
pe_image.c whitespace cosmetics: Remove all trailing whitespace. 2009-05-13 02:58:57 +00:00
pe_resource.c whitespace cosmetics: Remove all trailing whitespace. 2009-05-13 02:58:57 +00:00
qt_comp.h
qt_fv.h Add missing header #includes to fix 'make checkheaders'. 2010-01-04 19:04:33 +00:00
registry.c Do not cast the results of malloc/calloc/realloc. 2010-02-26 15:01:37 +00:00
registry.h Remove extern "C" declarations from loader code. 2010-02-11 14:33:57 +00:00
resource.c whitespace cosmetics: Remove all trailing whitespace. 2009-05-13 02:58:57 +00:00
vfl.c cosmetics: Remove pointless empty lines at EOF. 2010-02-20 21:02:49 +00:00
win32.c Replace separate Win32, XAnim and Real codec directories by one global dir. 2010-03-14 16:13:32 +00:00
win32.h Remove disabled AVIFILE-specific preprocessor code. 2010-02-08 10:14:42 +00:00
wineacm.h Remove extern "C" declarations from loader code. 2010-02-11 14:33:57 +00:00
wrapper.h cosmetics: Remove pointless empty lines at EOF. 2010-02-20 21:02:49 +00:00
wrapper.S cosmetics: Remove pointless empty lines at EOF. 2010-02-20 21:02:49 +00:00