Page 1 of 1

DVD streaming does not work for some DVD but watching does

Posted: 17 Jan 2006 21:31
by patchouli
Hello,

I really enjoy using VLC. It is incredibly flexible and has many ways to be used, although simple in its use !
My 4 kids have a bad habit scratching DVDs (in fact letting them under chairs..), therefore I purchased a big-size HD and backed up DVDs on it, letting them watching movies on TV from the HD.

My TV is connected to a Freebox (ADSL modem from the French ISP Free) that is also able to receive a UDP MPEG-2 TS stream from VLC, and let it display on TV. Moreover, a HTTP browser on Freebox allows me to use the HTTP interface on VLC.

I have no problem for a lot of DVDs that are nicely streamed over the network, but I am stuck on one. The strange thing is that I am able to watch the movie without problem on my PC screen with VLC, but I am not able to stream it ! When inserting the original DVD, I have the same problem : I am able to watch the movie on PC screen using VLC, but I am not able to stream it over the network.
This DVD (Madagascar) is known to be protected by RipGuard, a recent Macrovision protection scheme.

Could someone help me deciphering the VLC error messages below so that I understand what options to add to VLC commande line or the kind of trimming I need to perform on the DVD files ?

Thanks very much in advance for any help.

Some data :
I am using vlc-0.8.4-svn on Windows XP SP2 Professional Edition, on a PC with a 1 GHz processor and 512 Mbytes RAM.

vlc command line executed for streaming is the following :
..\vlc\vlc.exe --extraintf http:rc --rc-quiet --rc-host :8082 --http-host :8081 --http-src=./http_vlc --sout="#std" --sout-standard-access=udp --sout-standard-mux=ts --sout-standard-url=212.27.38.253:1234 --sout-ts-pid-video=68 --sout-ts-pid-audio=69 --sout-ts-pcr=80 --sout-ts-dts-delay=400 --sout-ffmpeg-strict-rc --open=""

This is what I get when trying to stream the movie :
-----------------------------------------------------------
main debug: adding playlist item `C:\Films\Madagascar' ( C:\Films\Madagascar )
main debug: control type=0
main debug: control: stopping input
main debug: closing input
main debug: thread times: real 0m47,999019s, kernel 0m0,000000s, user 0m0,000000s
main debug: thread 4480 joined (../../../vlc/modules/access/dvdnav.c:352)
main debug: unlocking module "packetizer_mpegvideo"
main debug: killing decoder fourcc `mpgv', 0 PES in FIFO
main debug: unlocking module "spudec"
main debug: killing decoder fourcc `spu ', 0 PES in FIFO
main debug: removing an input
mux_ts debug: removing input pid=71
main warning: no more input stream for this mux
main debug: Program doesn't contain anymore ES
main debug: unlocking module "dvdnav"
main debug: destroying sout
main debug: destroying chain... (name=std)
mux_ts debug: Close
main debug: unlocking module "mux_ts"
access_output_udp debug: packet has been sent too late (43051205948)
main debug: thread times: real 0m48,079134s, kernel 0m0,000000s, user 0m0,000000s
main debug: thread 4408 joined (../../../vlc/modules/access_output/udp.c:331)
access_output_udp debug: udp access output closed
main debug: unlocking module "access_output_udp"
main debug: unlocking module "stream_out_standard"
main debug: destroying chain done
main debug: thread times: real 0m48,139220s, kernel 0m0,060086s, user 0m0,080115s
main debug: thread 4268 joined (../vlc/src/input/input.c:386)
main debug: creating new input thread
main debug: waiting for thread completion
main debug: stream=`std'
main debug: looking for sout stream module: 1 candidate
main debug: thread 4268 (input) created at priority 1 (../vlc/src/input/input.c:230)
stream_out_standard debug: creating `udp/ts://212.27.38.253:1234'
stream_out_standard debug: extention is 253:1234
stream_out_standard debug: extention -> mux=(null)
stream_out_standard debug: using `udp/ts://212.27.38.253:1234'
main debug: looking for sout access module: 1 candidate
main debug: looking for network module: 1 candidate
main debug: using network module "ipv4"
main debug: unlocking module "ipv4"
main debug: thread 4424 (sout write thread) created at priority 15 (../../../vlc/modules/access_output/udp.c:284)
access_output_udp debug: udp access output opened(212.27.38.253:1234)
main debug: using sout access module "access_output_udp"
stream_out_standard debug: access opened
main debug: looking for sout mux module: 1 candidate
mux_ts debug: Open
mux_ts debug: shaping=200000 pcr=80000 dts_delay=400000
main debug: using sout mux module "mux_ts"
main debug: muxer support adding stream at any time
stream_out_standard debug: mux opened
main debug: using sout stream module "stream_out_standard"
main warning: drive letter C: found in source
main debug: `C:\Films\Madagascar' gives access `' demux `' path `C:\Films\Madagascar'
main debug: creating demux: access='' demux='' path='C:\Films\Madagascar'
main debug: looking for access_demux module: 1 candidate
dvdnav debug: trying to go to dvd menu
main debug: thread 4528 (dvdnav event thread handler) created at priority 0 (../../../vlc/modules/access/dvdnav.c:336)
main debug: using access_demux module "dvdnav"
main debug: looking for a subtitle file in C:\Films\
main debug: starting in synch mode
main debug: `C:\Films\Madagascar' successfully opened
dvdnav debug: DVDNAV_HOP_CHANNEL
dvdnav debug: DVDNAV_VTS_CHANGE
dvdnav debug: - vtsN=2
dvdnav debug: - domain=8
dvdnav debug: DVDNAV_CELL_CHANGE
dvdnav debug: - cellN=1
dvdnav debug: - pgN=1
dvdnav debug: - cell_length=43200
dvdnav debug: - pg_length=43200
dvdnav debug: - pgc_length=43200
dvdnav debug: - cell_start=0
dvdnav debug: - pg_start=0
dvdnav debug: DVDNAV_SPU_CLUT_CHANGE
dvdnav debug: DVDNAV_SPU_STREAM_CHANGE
dvdnav debug: - physical_wide=0
dvdnav debug: - physical_letterbox=0
dvdnav debug: - physical_pan_scan=1
dvdnav debug: buttonUpdate 1
main debug: selecting program id=0
main debug: looking for packetizer module: 17 candidates
main debug: using packetizer module "spudec"
main debug: stream out mode -> no decoder thread
dvdnav debug: DVDNAV_AUDIO_STREAM_CHANGE
dvdnav debug: - physical=0
dvdnav debug: buttonUpdate 1
main debug: looking for packetizer module: 17 candidates
main debug: using packetizer module "packetizer_mpegvideo"
main debug: stream out mode -> no decoder thread
dvdnav debug: buttonUpdate 1
packetizer_mpegvideo debug: Size 720x576 fps=25,000
spudec debug: SPU packets size=1824 should be 1824
main debug: adding a new input
main debug: adding a new input
mux_ts debug: adding input codec=spu pid=70
mux_ts debug: waiting for PCR streams
main debug: idx1=-1(??) idx2=-1(??)
dvdnav debug: DVDNAV_NOP
dvdnav debug: DVDNAV_WAIT
dvdnav debug: DVDNAV_STILL_FRAME
dvdnav debug: - length=0xff

-------------------------------------------------------------

And when having a successful display :

-------------------------------------------------------------
main debug: adding playlist item `C:\Films\Madagascar' ( C:\Films\Madagascar )
main debug: creating new input thread
main debug: waiting for thread completion
main warning: drive letter C: found in source
main debug: `C:\Films\Madagascar' gives access `' demux `' path `C:\Films\Madagascar'
main debug: creating demux: access='' demux='' path='C:\Films\Madagascar'
main debug: looking for access_demux module: 1 candidate
main debug: thread 4088 (input) created at priority 1 (src/input/input.c:230)
dvdnav debug: trying to go to dvd menu
main debug: thread 4132 (dvdnav event thread handler) created at priority 0 (dvdnav.c:336)
main debug: using access_demux module "dvdnav"
main debug: looking for a subtitle file in C:\Films\
main debug: `C:\Films\Madagascar' successfully opened
dvdnav debug: DVDNAV_HOP_CHANNEL
dvdnav debug: DVDNAV_VTS_CHANGE
dvdnav debug: - vtsN=2
dvdnav debug: - domain=8
dvdnav debug: DVDNAV_CELL_CHANGE
dvdnav debug: - cellN=1
dvdnav debug: - pgN=1
dvdnav debug: - cell_length=43200
dvdnav debug: - pg_length=43200
dvdnav debug: - pgc_length=43200
dvdnav debug: - cell_start=0
dvdnav debug: - pg_start=0
dvdnav debug: DVDNAV_SPU_CLUT_CHANGE
dvdnav debug: DVDNAV_SPU_STREAM_CHANGE
dvdnav debug: - physical_wide=0
dvdnav debug: - physical_letterbox=0
dvdnav debug: - physical_pan_scan=1
dvdnav debug: buttonUpdate 1
main debug: selecting program id=0
main debug: looking for decoder module: 26 candidates
main debug: using decoder module "spudec"
main debug: thread 4164 (decoder) created at priority 0 (src/input/decoder.c:159)
dvdnav debug: DVDNAV_AUDIO_STREAM_CHANGE
dvdnav debug: - physical=0
dvdnav debug: buttonUpdate 1
main debug: looking for decoder module: 26 candidates
main debug: using decoder module "libmpeg2"
main debug: thread 4188 (decoder) created at priority 0 (src/input/decoder.c:159)
dvdnav debug: buttonUpdate 1
spudec debug: SPU packets size=1824 should be 1824
main debug: idx1=-1(??) idx2=-1(??)
libmpeg2 debug: 720x576 (display 540,576), aspect 768000, sar 9216:6480, 25.000 fps
main debug: no usable vout present, spawning one
main debug: crop: 48,170,623,61, palette forced: 1
main debug: Registering subpicture channel, ID: 2
main debug: Registering subpicture channel, ID: 3
main debug: Registering subpicture channel, ID: 4
main debug: Registering subpicture channel, ID: 5
dvdnav debug: DVDNAV_NOP
dvdnav debug: DVDNAV_WAIT
dvdnav debug: DVDNAV_STILL_FRAME
dvdnav debug: - length=0xff
main debug: Registering subpicture channel, ID: 6
spudec warning: ignoring blank alpha palette
spudec debug: valid subtitle, size: 720x573, position: 0,2
spudec debug: cropped to: 720x206, position: 0,186
spudec debug: total size: 0x720, RLE offsets: 0x2 0x381
main debug: window size: 1024x576
main debug: looking for video output module: 5 candidates
vout_directx debug: creating DirectXEventThread
main debug: waiting for thread completion
vout_directx debug: DirectXCreateWindow
vout_directx debug: Created video sub-window
main debug: thread 4244 (DirectX Events Thread) created at priority 0 (directx.c:261)
vout_directx debug: DirectXEventThread running
vout_directx debug: DirectXInitDDraw
vout_directx debug: directx-device:
vout_directx debug: DirectXEnumCallback: Pilote d'affichage principal, display
vout_directx debug: screen dimensions (0x0,800x600)
vout_directx debug: DirectDraw Capabilities: overlay=1 yuvoverlay=1 can_deinterlace_overlay=1 colorkey=1 stretch=1 bltfourcc=0
vout_directx debug: End DirectXInitDDraw
vout_directx debug: DirectXCreateDisplay
vout_directx debug: DirectXCreateClipper
main debug: using video output module "vout_directx"
vout_directx debug: NewPictureVec overlay:yes chroma:YV12
vout_directx debug: YUV overlay created successfully
vout_directx debug: End NewPictureVec (succeeded)
main debug: got 1 direct buffer(s)
main debug: picture in 720x576 (0,0,720x576), chroma I420, ar 16:9, sar 64:45
main debug: picture user 720x576 (0,0,720x576), chroma I420, ar 16:9, sar 64:45
main debug: picture out 720x576 (0,0,720x576), chroma I420, ar 16:9, sar 64:45
main debug: direct render, mapping render pictures 0-6 to system pictures 1-7
main debug: waiting for thread completion
main debug: thread 4256 (video output) created at priority 1 (src/video_output/video_output.c:416)
main warning: dts != current_pts (375940)
main debug: looking for video blending module: 1 candidate
blend debug: chroma: YUVP -> I420
main debug: using video blending module "blend"
main debug: looking for text renderer module: 2 candidates
freetype debug: Using fontsize: 36
main debug: using text renderer module "freetype"
------------------------------------------------------------------

Again, thanks a lot for any indication you may have

ReDVD streaming does not work for some DVD but watching does

Posted: 19 Jan 2006 19:30
by patchouli
If someone with VLC knowledge could have a look on the debug logs of my initial post and tell me why vlc did not stream the DVD... I would be very grateful !
Thanks in advance,

Alexis.

Posted: 19 Jan 2006 19:49
by The DJ
Try streaming, without dvdmenu's option enabled in the Open Disc dialog.

Retry

Posted: 21 Jan 2006 17:27
by patchouli
Hello DJ,

Thank you for the advice.
I unchecked DVD Menus button in the Open Disc dialog and checked DVD button instead, but VLC output did not change : I got no streaming for Madagascar.

In fact I use Open Directory dialog box for opening DVDs and streaming works the for all DVDs except Madagascar. But still if I open a VLC media player with streaming disabled, I am able to watch Madagascar on my PC screen.

My guess is that due to DVD protection, there is some desync between video and audio streams that can be overcome when displayed on screen but not when streaming ? But I do not know if the VLC logs (above) really describe this desync or not ? Maybe I am out of scope ?

Posted: 23 Jan 2006 22:55
by mmebane
How are you ripping the DVDs to your hard drive?

Posted: 24 Jan 2006 20:45
by patchouli
I am using DVDDecrypter to rip. I think this is OK (at least in my country) as long as I own the original DVD. My goal in ripping is to protect the DVD from the rough hands of my kids (it is already too late for most of their DVDs that are scratched and cannot be read for some parts).

But the point is that I get exactly the same behaviour when using the original DVD. The original DVD would be played by VLC on PC screen, but not streamed. This is why I think this is somehow related to the RipGuard protection Madagascar is known to be protected by. If someone could explain to me the VLC logs above, it would be great ! If logs with DVD playing instead of HD playing are needed, I can produce them too. They look just the same.
Thanks in advance for help,

Alexis.