黑客风云——风云网络
设为首页 加入收藏 我要投稿 网站地图
您现在的位置: 黑客风云 >> 黑客文章 >> 操作系统 >> LINIX UNIX >> 文章正文
[推荐]Linux系统中提取DVD音频的方法介绍
        ★★★
Linux系统中提取DVD音频的方法介绍
文章整理发布:黑客风云 文章来源:www.05112.com 更新时间:2006-12-25
 

  几个解释补充:

  1:音频加字幕:

  PHP代码:

  mencoder dvd://1 -vobsubout subtitles -vobsuboutindex  
    0 -sid 2 -o frameno.avi -ovc frameno

  注意 :这里的frameno.avi就是你得到的音频。我这里没有进行编码,就是说直接把dvd的音频流给剥离出来(其实就是ac3编码)。如果如果你想用lame编码成mp3那么参考Fortraner的介绍。

  -vobsuboutindex 0 -sid 2 这个参数就是为了从dvd文件里把字幕给剥离出来。前面的0就是说我们选的字幕(就是sid 2)做为我们最后得得到字幕文件的index 编号为0的字幕。(字幕包括以.idx和.sub结尾的一对文件。)

  sid 2 表示我们选的dvd字幕中的sid编号(language id)为2字幕。为什么选2呢?因为你用mplayer -vobsubid 2播放dvd时正好出来的是中文。如果你用-vobsubid 1得到的是中文那么你就用1。关于字幕提取。详见mplayer的官方文档(有中文的)。

  举个一次性在进行3-pass编码的同时从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吧。很详细的。

上一页  [1] [2] 

文章录入:sygbox    责任编辑:sygbox 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    VIP 专 区
    抽根憋闷烟的心声
    学习网页制作的理由
    加入终身会员的理由!!!
    学习黑客编程的5大理由
    学习免杀的6大理由
    学习软件破解的理由
    会员账号开通查询
    常见问题解答
    汇款向导
    学员报名咨询
    最 新 热 门
    基于Linux操作系统实现的传真系统12-09
    Linux操作系统上最好的10款开源游11-20
    Linux 系统中的超级权限的控制11-09
    Linux操作系统下的常见系统资源共11-07
    Linux下的中文显示和支持常见问题10-23
    嵌入式Linux系统的动态电源管理技10-13
    从硬盘安装Linux操作系统的方法步10-12
    深入浅出分析Linux设备驱动程序中10-10
    使用kgdb调试linux内核及内核模块10-04
    使用Linux 文本工具简化数据的提10-04
    如何在Linux操作系统下检测内存泄09-27
    Linux内核编译菜单中相关选项的意09-20
    相 关 文 章
  • 网游防沉迷系统全面实施 4月9日宣布

  • 40个Windows XP和Vista系统应用技巧

  • Linux操作系统中超级权限控制的应用

  • 40个Windows XP和Vista系统应用技巧

  • 网游防沉迷系统全面实施 4月9日宣布

  • 1000人使用Windows Vista之后的体验

  • 22个最实用的Vista应用技巧和常见问题

  • 将Vista系统分级评分提升至9.9的满分

  • Vista解惑100点之用Defender的10项知识

  • 谁在保证数据安全 深挖Vista安全特性

  • webshell+serv-u获取系统最高权限

  • 注射DB_ONER权限并且主机与数据库不一起

  • Copyright @2006 黑客风云 ●业务联系:QQ 联系怪人 联系奇人 Email:给怪人发邮件 给奇人发邮件
    ICP备案:冀06009886