Discussion:
[MPlayer-users] Some DVDs have no video with cache enabled
Josh
2016-02-10 06:26:55 UTC
Permalink
This is a really old bug (there are a lot of recent commits so to
clarify they weren't the problem). Some DVDs (usually ripped) don't
display video when caching. I usually stream them over the network which
is really slow (with my particular internet service there is no choice
but to use their router which is only capable of 130Mbps wirelessly) so
it is necessary to use the cache. It can't be the ripping software
because doesn't happen to all of them (the vast majority work fine with
caching but often one won't work when using cache). There are no
problems playing the VOB files directly as files with caching.

I uploaded a truncated DVD to /incoming as 'dvd_novideo_with_cache'

MPlayer Redxii-SVN-r37653-4.9.3 (x86_64) (C) 2000-2016 MPlayer Team
FFmpeg version: N-78358-g674cc26
Build date: 2016-02-10 00:30:56 EST
CPU vendor name: GenuineIntel max cpuid level: 13
CPU: Intel(R) Core(TM) i5-2410M CPU @ 2.30GHz (Family: 6, Model: 42,
Stepping: 7)
extended cpuid-level: 8
extended cache-info: 16801856
Detected cache-line size is 64 bytes
CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNowExt: 0 SSE: 1 SSE2: 1 SSE3: 1
SSSE3: 1 SSE4: 1 SSE4.2: 1 AVX: 1
Compiled with runtime CPU detection.
get_path('codecs.conf') ->
'D:/Programs/SMPlayer/mplayer/mplayer/codecs.conf'
Reading optional codecs config file
D:/Programs/SMPlayer/mplayer/mplayer/codecs.conf: No such file or directory
Using built-in default codecs.conf.
init_freetype
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
get_path('fonts') -> 'D:/Programs/SMPlayer/mplayer/mplayer/fonts'
Configuration: --enable-static --enable-runtime-cpudetection
--enable-menu --disable-inet6 --disable-liba52
--disable-libmpeg2-internal --disable-tv --disable-v
idix --disable-faac-lavc --extra-cflags=-I/sources/live555-x64
--disable-mencoder
CommandLine: 'dvd://1' '-dvd-device'
'C:\Users\Joshua\Desktop\dvd_novideo_with_cache' '-cache' '1024' '-v'
Using Windows native timing
get_path('input.conf') -> 'D:/Programs/SMPlayer/mplayer/mplayer/input.conf'
Parsing input config file D:/Programs/SMPlayer/mplayer/mplayer/input.conf
Input config file D:/Programs/SMPlayer/mplayer/mplayer/input.conf
parsed: 92 binds
get_path('1.conf') -> 'D:/Programs/SMPlayer/mplayer/mplayer/1.conf'

Playing dvd://1.
get_path('sub/') -> 'D:/Programs/SMPlayer/mplayer/mplayer/sub/'
WINSOCK2 init: 0
URL: dvd://1
libdvdcss debug: opening target
`C:\Users\Joshua\Desktop\dvd_novideo_with_cache'
libdvdcss debug: using libc API for access
libdvdcss error: failed to open device
C:\Users\Joshua\Desktop\dvd_novideo_with_cache (Permission denied)
libdvdread: Could not open
C:\Users\Joshua\Desktop\dvd_novideo_with_cache with libdvdcss.
libdvdread: Can't open C:\Users\Joshua\Desktop\dvd_novideo_with_cache
for reading
libdvdread: Device C:\Users\Joshua\Desktop\dvd_novideo_with_cache
inaccessible, CSS authentication not available.
Reading disc structure, please wait...
libdvdcss debug: opening target
`C:\Users\Joshua\Desktop\dvd_novideo_with_cache/VIDEO_TS/VIDEO_TS.IFO'
libdvdcss debug: using libc API for access
There are 1 titles on this DVD.
There are 1 angles in this DVD title.
libdvdcss debug: opening target
`C:\Users\Joshua\Desktop\dvd_novideo_with_cache/VIDEO_TS/VTS_01_0.IFO'
libdvdcss debug: using libc API for access
libdvdcss debug: opening target
`C:\Users\Joshua\Desktop\dvd_novideo_with_cache/VIDEO_TS/VTS_01_1.VOB'
libdvdcss debug: using libc API for access
libdvdcss debug: cracking title key at block 0
libdvdcss debug: end of title reached
libdvdcss debug: successful attempts 0/0, scrambled blocks 0/2000
libdvdcss debug: no scrambled sectors found
libdvdcss debug: title key is 00:00:00:00:00
libdvdcss debug: unencrypted title

DVD successfully opened.
audio stream: 0 format: ac3 (5.1) language: en aid: 128.
number of audio channels on disk: 1.
subtitle ( sid ): 0 language: en
number of subtitles on disk: 1

DVD start cell: 0 pack: 0x7-0x32FE8
DVD start=7 end=6
STREAM: [null] dvd://1
STREAM: Description: DVD stream
STREAM: Author:
STREAM: Comment:
CACHE_PRE_INIT: 0 [0] 0 pre:209715 eof:0


system stream synced at 0x380D (14349)!
==> Found audio stream: 128
MPEG-PS file format detected.
Load subtitles in dvd://
get_path('sub/') -> 'D:/Programs/SMPlayer/mplayer/mplayer/sub/'
Load subtitles in D:/Programs/SMPlayer/mplayer/mplayer/sub/
==========================================================================
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
dec_audio: Allocating 1536000 + 131072 = 1667072 bytes for output buffer.
FFmpeg's libavcodec audio codec
libavcodec version 57.24.101 (internal)
Configuration: --enable-gpl --enable-postproc
INFO: libavcodec "ac3" init OK!
AUDIO: 48000 Hz, 2 ch, floatle, 448.0 kbit/14.58% (ratio: 56000->384000)
Selected audio codec: [ffac3] afm: ffmpeg (FFmpeg AC-3)
==========================================================================
Building audio filter chain for 48000Hz/2ch/floatle -> 0Hz/0ch/??...
[libaf] Adding filter dummy
[dummy] Was reinitialized: 48000Hz/2ch/floatle
[dummy] Was reinitialized: 48000Hz/2ch/floatle
Trying every known audio driver...
ao_dsound: Output Devices:
0 Primary Sound Driver <--
1 Speakers / HP (IDT High Definition Audio CODEC)
ao_dsound: DirectSound initialized
ao_dsound: format floatle not supported defaulting to Signed 16-bit
Little-Endian
ao_dsound: Samplerate:48000Hz Channels:2 Format:s16le
ao_dsound: Buffersize:192000 bytes (1000 msec)
ao_dsound: primary buffer created
ao_dsound: secondary (stream)buffer created
AO: [dsound] 48000Hz 2ch s16le (2 bytes per sample)
AO: Description: Windows DirectSound audio output
AO: Author: Gabor Szecsi <***@miki.hu>
Building audio filter chain for 48000Hz/2ch/floatle -> 48000Hz/2ch/s16le...
[dummy] Was reinitialized: 48000Hz/2ch/floatle
[libaf] Adding filter format
[format] Changing sample format from little-endian 32-bit float to
little-endian 16-bit signed int
[format] Accelerated little-endian 32-bit float to little-endian 16-bit
signed int conversion
[dummy] Was reinitialized: 48000Hz/2ch/floatle
[format] Changing sample format from little-endian 32-bit float to
little-endian 16-bit signed int
[format] Accelerated little-endian 32-bit float to little-endian 16-bit
signed int conversion
Video: no video
Freeing 0 unused video chunks.
Starting playback...
[ac3 @ 0000000001808480]exponent 25 is out-of-range
[ac3 @ 0000000001808480]error decoding the audio block
[ac3 @ 0000000001808480]frame sync error
lavc_audio: error
==> Found video stream: 0
[libaf] Reallocating memory in module format, old len = 0, new len = 65545
Increasing filtered audio buffer size from 0 to 65536
Increasing filtered audio buffer size from 65536 to 131072
A: 4.8 (04.8) of 6174.4 ( 1:42:54.4) 0.6% 48%
Uninit audio filters...
[libaf] Removing filter dummy
[libaf] Removing filter format
Uninit audio: ffmpeg
WINSOCK2 uninit
ao_dsound: DirectSound uninitialized

Exiting... (Quit)
Reimar Döffinger
2016-02-10 20:24:59 UTC
Permalink
This is a really old bug (there are a lot of recent commits so to clarify
they weren't the problem). Some DVDs (usually ripped) don't display video
when caching. I usually stream them over the network which is really slow
(with my particular internet service there is no choice but to use their
router which is only capable of 130Mbps wirelessly) so it is necessary to
use the cache. It can't be the ripping software because doesn't happen to
all of them (the vast majority work fine with caching but often one won't
work when using cache). There are no problems playing the VOB files directly
as files with caching.
Things tend to break when the DVD layer has to go through the cache as
some information gets lost (e.g. you can't ask the DVD for the position,
because that's the position that is being cached, not the one played).
I haven't tracked down the exact cause, but in case you haven't noticed
-demuxer lavf plays it.
Reimar Döffinger
2016-02-10 21:26:46 UTC
Permalink
Post by Reimar Döffinger
This is a really old bug (there are a lot of recent commits so to clarify
they weren't the problem). Some DVDs (usually ripped) don't display video
when caching. I usually stream them over the network which is really slow
(with my particular internet service there is no choice but to use their
router which is only capable of 130Mbps wirelessly) so it is necessary to
use the cache. It can't be the ripping software because doesn't happen to
all of them (the vast majority work fine with caching but often one won't
work when using cache). There are no problems playing the VOB files directly
as files with caching.
Things tend to break when the DVD layer has to go through the cache as
some information gets lost (e.g. you can't ask the DVD for the position,
because that's the position that is being cached, not the one played).
I haven't tracked down the exact cause, but in case you haven't noticed
-demuxer lavf plays it.
I have not found out why the cache breaks things exactly
(though I have an idea) but r37657 happens to avoid the issue.
The problem is basically that the video stream starts
late in the file and thus was not detected initially.
MPlayer will now just start playing video streams as
soon as they appear.
This will probably avoid issues in a few other cases as well.

Loading...