Linux系统中提取DVD音频的方法介绍

http://tech.ddvip.com   2007年02月22日    社区交流

本文详细介绍Linux系统中提取DVD音频的方法介绍

  PHP代码:

  rm subtitles.idx subtitles.sub //这里是为了防止原先存在的字幕的干扰。
  mencoder dvd://1 -vobsubout subtitles -vobsuboutindex
  0 -sid 2 -o frameno.avi -ovc frameno
  mencoder dvd://1 -oac copy -ovc divx4 -pass 1
  mencoder dvd://1 -oac copy -ovc divx4 -pass 2
   -vobsubout subtitles -vobsuboutindex 1 -sid 5

  2:视频编码

  视频编码的参数设置 Fortraner已经说的很详细了。我对参数的设置就不知其所以然了。问题是如何用参数才能使编码质量达到比较高的水平。这里是有很多东西可以研究的。但我拼命看man,文档,实验了好多方法,感觉也和上面给出的简单的例子的编码质量差不多。-_- ! 大家试试Fortraner兄的参数。看看有没有大的改观。

  3:还是讲讲怎么从dvd copy吧

  a:上面的例子是用来 dvd://? 的参数。这表示直接用dvd光驱。?表示的是我们从那个轨道开始编码。一般dvd有好几个轨道。第一个往往是片头和什么节目预告之类的。所以我一般直接从2开始。3也是。一般没什么用了。具体你可以看看光盘里的info文件。有几个。

  b:那么像Fortraner兄说的没有光驱或已经把vod文件拷贝出来的怎么办?

  其实我们可以一次性的搞定:

  先建立一个目录比如:DVD。然后把那些dvd光盘里的文件都扔到这个目录。注意,不要忘了把那些info文件也扔进去。那时dvd的轨道信息。有用。然后我们就把这个DVD目录当成dvd光驱。PHP代码:

  mencode dvd://2 -dvd-device DVD/ (这里指定你的DVD的路径)

  c:那么我要是不用上面的办法呢?就是说我就选几个vod文件。我能一次性给搞定呢?行。

  请看例子,PHP代码:

  cat 1.vod 2.vod | mencoder -noidx -ovc copy -oac copy -o output.avi -

  注意不要忘了加“-”。在linux系统好像直接可以用mencode *.vob.我想不行的话你就用cat吧。cat好强啊。最后我们可以用一个脚本来自动完成所有的步骤:

  我的730M的3pass编码的脚本,PHP代码:

#!/bin/sh
rm -rf frameno.avi
mencoder dvd:// -vobsubout subtitles 
-vobsuboutindex 0 -sid 0 -ovc frameno -o 
frameno.avi -oac mp3lame -lameopts vbr=3:abr=80
mencoder dvd:// -ovc lavc -lavcopts 
vcodec=mpeg4:vqh:vpass=1 -oac copy -o aa.avi
mencoder dvd:// -ovc lavc -lavcopts
vcodec=mpeg4:vqh:vpass=2 -oac copy -o aa.avi
 

  不知道哪里还没有明白。大家主要还是看doc文档和man吧。很详细的。

责编:豆豆技术应用

正在加载评论...