annotate DOCS/DVD @ 1331:b4457de47804

ds->type removed - using id-based audio format detection in mplayer.c
author arpi
date Mon, 16 Jul 2001 15:36:20 +0000
parents 7e86f5809d33
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
506
8f741175eb43 DVD docs
lgb
parents:
diff changeset
1 DVD support in MPlayer!
8f741175eb43 DVD docs
lgb
parents:
diff changeset
2 ~~~~~~~~~~~~~~~~~~~~~~~
8f741175eb43 DVD docs
lgb
parents:
diff changeset
3
8f741175eb43 DVD docs
lgb
parents:
diff changeset
4 Read file 'DVD-FAQ' as well (and try to avoid recursion by the redirector
8f741175eb43 DVD docs
lgb
parents:
diff changeset
5 message there :).
8f741175eb43 DVD docs
lgb
parents:
diff changeset
6
8f741175eb43 DVD docs
lgb
parents:
diff changeset
7 IMPORTANT NOTE: please _DO_NOT_ require further features for DVD playback. This
8f741175eb43 DVD docs
lgb
parents:
diff changeset
8 is extremly experimental hack. Maybe it won't work for you. If you're
8f741175eb43 DVD docs
lgb
parents:
diff changeset
9 capable of helping us do it now! First we would like to fix existing problems.
8f741175eb43 DVD docs
lgb
parents:
diff changeset
10 Then we can start implementing advanced DVD playback functions of course.
8f741175eb43 DVD docs
lgb
parents:
diff changeset
11
8f741175eb43 DVD docs
lgb
parents:
diff changeset
12 This means current DVD functions are mainly for developers and not for users!
8f741175eb43 DVD docs
lgb
parents:
diff changeset
13
8f741175eb43 DVD docs
lgb
parents:
diff changeset
14 Building MPlayer with libcss support
8f741175eb43 DVD docs
lgb
parents:
diff changeset
15 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
8f741175eb43 DVD docs
lgb
parents:
diff changeset
16 First, you must compile and install libcss on your system.
836
3f2f84f55156 libcss typos corrected (ehh, LGB:)
gabucino
parents: 753
diff changeset
17 Second, you have to recompile MPlayer with libcss support. There is
3f2f84f55156 libcss typos corrected (ehh, LGB:)
gabucino
parents: 753
diff changeset
18 autodetection of libcss, but if it fails, see below :
506
8f741175eb43 DVD docs
lgb
parents:
diff changeset
19
836
3f2f84f55156 libcss typos corrected (ehh, LGB:)
gabucino
parents: 753
diff changeset
20 Call ./configure script of MPlayer with these options:
3f2f84f55156 libcss typos corrected (ehh, LGB:)
gabucino
parents: 753
diff changeset
21
1117
7e86f5809d33 *** empty log message ***
gabucino
parents: 1022
diff changeset
22 ./configure --enable-css --with-csslibdir=/usr/local/lib --with-cssincdir=/usr/local/include
506
8f741175eb43 DVD docs
lgb
parents:
diff changeset
23
8f741175eb43 DVD docs
lgb
parents:
diff changeset
24 (of course you can append your favourite options as well)
8f741175eb43 DVD docs
lgb
parents:
diff changeset
25
836
3f2f84f55156 libcss typos corrected (ehh, LGB:)
gabucino
parents: 753
diff changeset
26 --with-csslibdir=/usr/local/lib
506
8f741175eb43 DVD docs
lgb
parents:
diff changeset
27 Directory contains libcss.so shared library. This directory should
8f741175eb43 DVD docs
lgb
parents:
diff changeset
28 be in your /etc/ld.so.conf as well.
8f741175eb43 DVD docs
lgb
parents:
diff changeset
29
836
3f2f84f55156 libcss typos corrected (ehh, LGB:)
gabucino
parents: 753
diff changeset
30 --with-cssincdir=/usr/local/include
506
8f741175eb43 DVD docs
lgb
parents:
diff changeset
31 Directory contains header file 'css.h' of libcss.
8f741175eb43 DVD docs
lgb
parents:
diff changeset
32
8f741175eb43 DVD docs
lgb
parents:
diff changeset
33 Viewing VOB files directly from DVD
8f741175eb43 DVD docs
lgb
parents:
diff changeset
34 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1022
655441d69aaa doc about the minor change on DVD scene
lgb
parents: 836
diff changeset
35 mplayer -dvdauth /dev/dvd /mnt/cdrom/video_ts/vts_01_1.vob
506
8f741175eb43 DVD docs
lgb
parents:
diff changeset
36
8f741175eb43 DVD docs
lgb
parents:
diff changeset
37 where,
8f741175eb43 DVD docs
lgb
parents:
diff changeset
38
1022
655441d69aaa doc about the minor change on DVD scene
lgb
parents: 836
diff changeset
39 '-dvdauth /dev/dvd' tells MPlayer the device name of your DVD drive.
506
8f741175eb43 DVD docs
lgb
parents:
diff changeset
40 it's used in disc authentication process
8f741175eb43 DVD docs
lgb
parents:
diff changeset
41
8f741175eb43 DVD docs
lgb
parents:
diff changeset
42 the filename is simply a VOB file path on the disc
8f741175eb43 DVD docs
lgb
parents:
diff changeset
43
522
b63c485a530d reviewed for release
gabucino
parents: 506
diff changeset
44 Note that according to my experiences, disc authentication requires root
b63c485a530d reviewed for release
gabucino
parents: 506
diff changeset
45 privileges so you must run MPlayer as root! (see section 'Problems').
506
8f741175eb43 DVD docs
lgb
parents:
diff changeset
46
8f741175eb43 DVD docs
lgb
parents:
diff changeset
47 NOTE about the sound:
522
b63c485a530d reviewed for release
gabucino
parents: 506
diff changeset
48 It seems that MPlayer sometimes fails to find the first audio stream.
b63c485a530d reviewed for release
gabucino
parents: 506
diff changeset
49 You can specify it with the '-aid 128' option, for example.
506
8f741175eb43 DVD docs
lgb
parents:
diff changeset
50 Please experience with 128,129 and similar values. See section
8f741175eb43 DVD docs
lgb
parents:
diff changeset
51 'Problems'.
8f741175eb43 DVD docs
lgb
parents:
diff changeset
52
8f741175eb43 DVD docs
lgb
parents:
diff changeset
53
8f741175eb43 DVD docs
lgb
parents:
diff changeset
54 New source files
8f741175eb43 DVD docs
lgb
parents:
diff changeset
55 ~~~~~~~~~~~~~~~~
8f741175eb43 DVD docs
lgb
parents:
diff changeset
56 dvdauth.c
522
b63c485a530d reviewed for release
gabucino
parents: 506
diff changeset
57 Issues DVD disc and title authentication and fills key_disc and
b63c485a530d reviewed for release
gabucino
parents: 506
diff changeset
58 key_title arraies.
506
8f741175eb43 DVD docs
lgb
parents:
diff changeset
59
8f741175eb43 DVD docs
lgb
parents:
diff changeset
60 dvdauth.h
8f741175eb43 DVD docs
lgb
parents:
diff changeset
61 header file
8f741175eb43 DVD docs
lgb
parents:
diff changeset
62
522
b63c485a530d reviewed for release
gabucino
parents: 506
diff changeset
63 These files are embedded inside an '#ifdef ... #endif' block, so if libcss
506
8f741175eb43 DVD docs
lgb
parents:
diff changeset
64 support was not requested, they do not produce any code and of course
522
b63c485a530d reviewed for release
gabucino
parents: 506
diff changeset
65 libcss is not linked against MPlayer either.
506
8f741175eb43 DVD docs
lgb
parents:
diff changeset
66
8f741175eb43 DVD docs
lgb
parents:
diff changeset
67
8f741175eb43 DVD docs
lgb
parents:
diff changeset
68 Modifications in the source
8f741175eb43 DVD docs
lgb
parents:
diff changeset
69 ~~~~~~~~~~~~~~~~~~~~~~~~~~~
8f741175eb43 DVD docs
lgb
parents:
diff changeset
70 * (stream.c) STREAM_BUFFER_SIZE is set to 2048
8f741175eb43 DVD docs
lgb
parents:
diff changeset
71 * (demux_mpg.c) the old message of 'encrypted VOB file is not supported'
8f741175eb43 DVD docs
lgb
parents:
diff changeset
72 was changed to set a flag to 1. After parsing the header, if this
8f741175eb43 DVD docs
lgb
parents:
diff changeset
73 flag is set, we call descramble function of libcss for decrypt.
8f741175eb43 DVD docs
lgb
parents:
diff changeset
74 * (stream.c) on several points where the old 4096 length STREAM_BUFFER_SIZE was
8f741175eb43 DVD docs
lgb
parents:
diff changeset
75 hardcoded into the source, it was replaced with 'STREAM_BUFFER_SIZE'
8f741175eb43 DVD docs
lgb
parents:
diff changeset
76 * (mplayer.c) calling dvd disc and title authentication and seek to sector
8f741175eb43 DVD docs
lgb
parents:
diff changeset
77 boundaries on seeking for mpegs
8f741175eb43 DVD docs
lgb
parents:
diff changeset
78
8f741175eb43 DVD docs
lgb
parents:
diff changeset
79
8f741175eb43 DVD docs
lgb
parents:
diff changeset
80 Performance
8f741175eb43 DVD docs
lgb
parents:
diff changeset
81 ~~~~~~~~~~~
8f741175eb43 DVD docs
lgb
parents:
diff changeset
82 On my AMD K6-2 with using hw scaling and colorspace conversion
8f741175eb43 DVD docs
lgb
parents:
diff changeset
83 capability of my G400 it's possible to watch DVD with about 70%
8f741175eb43 DVD docs
lgb
parents:
diff changeset
84 CPU usage with '-nosound'. Unfortunately with sound my machine is
8f741175eb43 DVD docs
lgb
parents:
diff changeset
85 not enough :( Maybe it can be improved somewhat ...
522
b63c485a530d reviewed for release
gabucino
parents: 506
diff changeset
86 Guess, it's not so bad ... According to reports from my friends
b63c485a530d reviewed for release
gabucino
parents: 506
diff changeset
87 xine uses 80-90% CPU to play DVD on much more powerful machines
506
8f741175eb43 DVD docs
lgb
parents:
diff changeset
88 like 1GHz Athlon systems (as far as I know, it's said that about
8f741175eb43 DVD docs
lgb
parents:
diff changeset
89 300MHz celeron is the minimum to watch DVDs ... using windows
8f741175eb43 DVD docs
lgb
parents:
diff changeset
90 DVD viewers).
8f741175eb43 DVD docs
lgb
parents:
diff changeset
91
753
34c1a9fb631b oh, this much? :p
gabucino
parents: 522
diff changeset
92 Hint: I commented out downmix functions from libac3 (of course in this way I
506
8f741175eb43 DVD docs
lgb
parents:
diff changeset
93 can't get sound) and audio decoding CPU usage became 11% instead of 24 on
8f741175eb43 DVD docs
lgb
parents:
diff changeset
94 my machine. This clearly indicates that we should optimize downmix functions
8f741175eb43 DVD docs
lgb
parents:
diff changeset
95 (KNI code is no use for my k6-2).
8f741175eb43 DVD docs
lgb
parents:
diff changeset
96
1022
655441d69aaa doc about the minor change on DVD scene
lgb
parents: 836
diff changeset
97 HOT NEWZ:
655441d69aaa doc about the minor change on DVD scene
lgb
parents: 836
diff changeset
98 We have got 3Dnow optimized libac3. Wow ;-)
655441d69aaa doc about the minor change on DVD scene
lgb
parents: 836
diff changeset
99
506
8f741175eb43 DVD docs
lgb
parents:
diff changeset
100
8f741175eb43 DVD docs
lgb
parents:
diff changeset
101 Problems (TODO)
8f741175eb43 DVD docs
lgb
parents:
diff changeset
102 ~~~~~~~~~~~~~~~
8f741175eb43 DVD docs
lgb
parents:
diff changeset
103 * disc authentication (the FIBMAP ioctl) requires root privilegies.
8f741175eb43 DVD docs
lgb
parents:
diff changeset
104 this is strange since OMS can do it as user too.
522
b63c485a530d reviewed for release
gabucino
parents: 506
diff changeset
105 * sound. I'm using my only DVD disc (The Matrix) to test MPlayer.
b63c485a530d reviewed for release
gabucino
parents: 506
diff changeset
106 some VOB file have English sound, some have Spanish and some have
506
8f741175eb43 DVD docs
lgb
parents:
diff changeset
107 no sound at all.
8f741175eb43 DVD docs
lgb
parents:
diff changeset
108 IT SEEMS that if I give '-aid 128' everything works with English sound ...
522
b63c485a530d reviewed for release
gabucino
parents: 506
diff changeset
109 * strange effects but only with SOME vob files (it looks like some interlacing
b63c485a530d reviewed for release
gabucino
parents: 506
diff changeset
110 effect, eg: every 2nd line on the screen is from the last frame).
506
8f741175eb43 DVD docs
lgb
parents:
diff changeset
111
8f741175eb43 DVD docs
lgb
parents:
diff changeset
112
8f741175eb43 DVD docs
lgb
parents:
diff changeset
113 feature TODO
8f741175eb43 DVD docs
lgb
parents:
diff changeset
114 ~~~~~~~~~~~~
8f741175eb43 DVD docs
lgb
parents:
diff changeset
115 * chapter scanner
8f741175eb43 DVD docs
lgb
parents:
diff changeset
116 * audio stream scanner and allow to select one on runtime as well
8f741175eb43 DVD docs
lgb
parents:
diff changeset
117 (in stage#1 it would be enough to select one on the startup, see
8f741175eb43 DVD docs
lgb
parents:
diff changeset
118 'Problems' above)
8f741175eb43 DVD docs
lgb
parents:
diff changeset
119 * DVD menu
8f741175eb43 DVD docs
lgb
parents:
diff changeset
120 I found (at least on disc 'The Matrix') the menu VOB but I don't
8f741175eb43 DVD docs
lgb
parents:
diff changeset
121 know how can it be used.
8f741175eb43 DVD docs
lgb
parents:
diff changeset
122 (after some eyeballing on the source of OMS, it seems we would have to
8f741175eb43 DVD docs
lgb
parents:
diff changeset
123 parse *.ifo files)
8f741175eb43 DVD docs
lgb
parents:
diff changeset
124 * subtitle support
8f741175eb43 DVD docs
lgb
parents:
diff changeset
125 * OSD/GUI (?) support for select chapter, subtitle and audio stream
8f741175eb43 DVD docs
lgb
parents:
diff changeset
126 * getting some documentation on DVD format, eg: which is the 'root' VOB
8f741175eb43 DVD docs
lgb
parents:
diff changeset
127 file on the disc in video_ts directory, which is the menu and so on.
8f741175eb43 DVD docs
lgb
parents:
diff changeset
128 * improve performance (see 'Performance' above)
8f741175eb43 DVD docs
lgb
parents:
diff changeset
129
8f741175eb43 DVD docs
lgb
parents:
diff changeset
130
8f741175eb43 DVD docs
lgb
parents:
diff changeset
131 No sound problem (from Matrix DVD, the menu VOB)
8f741175eb43 DVD docs
lgb
parents:
diff changeset
132 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
8f741175eb43 DVD docs
lgb
parents:
diff changeset
133 End of packet while searching for PCM header
8f741175eb43 DVD docs
lgb
parents:
diff changeset
134
8f741175eb43 DVD docs
lgb
parents:
diff changeset
135 DEMUXER: Too many (2048 in 4131540 bytes) video packets in the buffer!
8f741175eb43 DVD docs
lgb
parents:
diff changeset
136 (maybe you play a non-interleaved stream/file or video codec failed)
8f741175eb43 DVD docs
lgb
parents:
diff changeset
137 MPEG: No Audio stream found... ->nosound
8f741175eb43 DVD docs
lgb
parents:
diff changeset
138
8f741175eb43 DVD docs
lgb
parents:
diff changeset
139 However this does not occur if you specify '-aid 128'.