-   Linux - Software (
-   -   Reading Multiple vob files in mplayer (

finnigan001 10-28-2003 09:30 PM

Reading Multiple vob files in mplayer
I've just switched to linux RH9 and it's great. Worked out how to create vcds from vob's after a painstaken length of time. Anyways, i had ripped a number of dvd's to hard drive using smart ripper on a computer with a dvd player, then copied them to my linux box. I use mplayer to output a stream that mjegtools can use to create the vcd. My problem is when i try to encode them it only gets the first vob file and encodes that. I was looking at mplayer docs to try and find out how to make it read properly off my hard drive and i found this:


5.2. DVD playback

For the complete list of available options, please read the man page. The Syntax for a standard Digital Versatile Disc (DVD) is as follows:

mplayer dvd://<track> [-dvd-device <device>]


mplayer dvd://1 -dvd-device /dev/hdc

The default DVD device is /dev/dvd. If your setup differs, make a symlink or specify the correct device on the command line with the -dvd-device option.
but in trying to symlink /dev/dvd to my /dvdfiles/ im having no luck. The command i use to symlink is : ln -s /dvdfiles/ /dev/dvd/

i have no dvd drive in this computer, thats why im trying to make it read of the hard drive.

below is the commands i use in my script:
( mplayer -alang en -noframedrop -vo yuv4mpeg -ao pcm -waveheader -v -osdlevel 0 $dvdFile) &

( cat - < stream.yuv | yuvscaler $yuvoptions | mpeg2enc $mpegoptions) &

$yuvoptions $mpegoptions are just extra command line arguments for each of the tools.

Any help would be greatly appreciated.

yapp 10-29-2003 03:30 AM

you could encode files with mencoder, which is installed with mplayer. There are some nice frontends too.

VOB files can simply be merged:

cat *.VOB > large.vob
cat VTS_..[1-5].VOB | mplayer ... -

The cat command has been invented to catenate files ;)

ps. sorry for asking, but why would you want to do this:

cat - < stream.yuv | yuvscaler ...
This would be a little better, but it's still getting the "useless use of cat award":

cat stream.yup | yuvscaler ...
I'd recommend this. It uses the input streams without running another program to supply it.

yuvscaler ... < stream.yuv

finnigan001 10-29-2003 03:59 AM

Thanks for the reply.

I never thought of putting them into one big vob file. :D

the reason i use cat - is because stream.yuv is a named pipe file which takes the video output from mplayer and puts it back out so that cat can grab it. But i could probably do it your way too.

Thanks heaps.

All times are GMT -5. The time now is 12:22 AM.