分离wmv格式视频源的视频流和音频流~~大哥大姐些进来~
dwing吧
全部回复
仅看楼主
level 7
各位大哥大姐呀~用avconv分离wmv格式的音频指令我只知道是-i xxx.wmv -vn xxxx.wav
那么分离视频的指令是什么啊?分出来保存为什么格式?别外我分享音频的时候出来的wav总是要比源视频多一秒或是少一秒~这是何故?~还有每次分离的时候总会有黄色的字体出现~我只知道第二行黄体字在提立体声~具体它要给我表达啥~我不清楚~~希望大哥大姐些不要吝啬你们的智慧~世界和谐~~图片献上一枚~~先谢过大家~
2014年01月09日 12点01分 1
level 9
ffmpeg.exe -i input.wmv -vn -async 1 output.wav
2014年01月09日 13点01分 3
额 ~~大哥终于等到你了~请问avconv的指令也是这个??~
2014年01月09日 13点01分
输出如果是wav会被解码成PCM,如果你是要copy请看下面那楼
2014年01月09日 14点01分
avconv ffmpeg 指令大同小异
2014年01月09日 14点01分
level 9
原始WMV original.wmv
新Video video.mkv
重封装
ffmpeg.exe -i video.mkv -i original.wmv -map 0:v -map 1:a -c:v copy -c:a copy output.mkv
2014年01月09日 14点01分 4
额~你这是说的啥??~如何分离原始人wmv?~
2014年01月09日 14点01分
意思就是把 video.mkv 内的 video track 以及 original.wmv 内的 audio tracks copy 到 output.mkv, 好处是不经抽取,直接 Remux
2014年01月09日 14点01分
回复 ksfalken :哦~~那有好处就有坏处~坏处是啥?~下面那位朋友没说完
2014年01月09日 15点01分
直接 copy 就是和原始一样没有变,就只是容器变了
2014年01月09日 15点01分
level 9
我记得wma音频的remux是有问题的,不知道现在修复了没有
2014年01月09日 14点01分 5
大哥~~remux啥意思??~~
2014年01月09日 14点01分
回复 nicholas_wujun :就是把视频和音频从一个容器里抽出来放到另一个容器里,不做任何重编码。
2014年01月09日 15点01分
回复 roo_zhou :哦~~你指的有问题~是啥问题~我刚才试了一下~直接copy音频流~还是少一秒~~
2014年01月10日 03点01分
level 7
2014年01月09日 14点01分 6
level 9
-map 0:a:0 指的是 第一个 file 中的 第一个 audio track
-map 1:s:2 指的是 第二个 file 中的 第三个 subtitle track
-map 3:s 指的是 第四个 file 中的 全部 subtitle tracks
例:
video.mkv
H.264
original.wmv
VC1
WMA
ffmpeg -i video.mkv -i original.wmv -map 0:v -map 1:a -c:v copy -c:a copy output.mkv
Stream
#0:0 -> #
0:0 (copy)
Stream
#1:1 -> #
0:1 (copy)
output.mkv
H.264
WMA
2014年01月09日 15点01分 7
恩~感谢~~刚才试了一下~直接copy音频流~结果就是体积小很多~但最终还是比原视频少一秒
2014年01月10日 03点01分
因为源音频就短1秒,Copy后当然也短1秒,但用这方法Remux 会保留源音频的延迟1秒,时间轴是对的。不需要管音频长度
2014年01月10日 03点01分
为什么不用 FFmpeg 重编码视频 -c:v "编码器"
2014年01月10日 03点01分
ffmpeg -i input.wmv -c:v libx264 -c:a copy output.mkv
2014年01月10日 03点01分
level 12
分离视频……wmv视频本身就放在wmv里,就算要分离出来,也还是装在wmv里。转封到mkv会不定期出现坏帧坏块。之前我也说过了,如果你纯粹要压制的话,直接送进x264压就行了。
当然还有一点就是我推荐你不要用10年前的CPU来压。出问题不奇怪。
2014年01月09日 21点01分 8
楼上的指令是将已重编码的H.264和WMV中的音频,封装MKV。和WMV视频无关
2014年01月10日 02点01分
wmv进mkv出坏块是muxer的问题,mkv是无辜的。
2014年01月10日 02点01分
回复 roo_zhou :额~你说muxer~意思是说封装是出问题吗?~
2014年01月10日 03点01分
回复 ksfalken :好的~~
2014年01月10日 03点01分
level 9
nicholas_wujun: 主要是我直接用X264压制~用2pass导致速度超慢
如果不是要输出10bit直接用FFmpeg 即可
控制编码速度从 -preset 下手
ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow, placebo.
ffmpeg -i blu_ray.m2ts -an -pass 1 -passlogfile text.log -c:v libx264 -profile:v high -preset veryslow -b:v 1000k -x264opts ref=4:bframes=5 -y -f null -
ffmpeg -i blu_ray.m2ts -pass 2 -passlogfile text.log -c:v libx264 -profile:v high -preset veryslow -b:v 1000k -x264opts ref=4:bframes=5 -c:a copy -y output.mkv
2014年01月10日 05点01分 10
但 2pass太费时,crf 即可
2014年01月10日 05点01分
关于x264的2pass我还在做实验~x264 --level 3.1 --pass 1 --bitrate 3000 --stats "D:\Nicholas\Download\陈妍希 - 孩子气.stats" --bframes 5 --b-bias 16 --vbv-bufsize 17500 --vbv-maxrate 17500 --partitions all --sar 1:1 --output NUL "D:\Nicholas\桌面\陈妍希 - 孩子气.avs"
2014年01月10日 05点01分
回复 nicholas_wujun :这个参数我是从gui里log复制出来的~用在x264运行超慢~而且系统很卡~但在gui里一切正常~我试着直接用 --stats xx.stats --ouptut nul xxxx.mp4~这样还是一样的效果~然后用gui里的参数 不加pass输出stats文件结果速度正常好像我感觉只要加上pass 1输出stats文件~就要出问题~慢
2014年01月10日 05点01分
N-Pass是为了bitrate分配更合理,但浪费时间。而CRF的bitrate分配非常好,但CRF是以某个输出质量为目标,无法控制输出size。所以没必要则不须用2pass,,CRF即可
2014年01月10日 05点01分
level 9
CRF:
ffmpeg -i blu_ray.m2ts -c:v libx264 -profile:v high -preset veryslow -crf 20 -x264opts ref=4:bframes=5 -c:a copy -y output.mkv
2014年01月10日 05点01分 11
额 ~~你这句参数含义是??怎么还在加copy?~能还解释一下?
2014年01月10日 05点01分
-c:v 视频 -c:a 音频, -c:v libx264 = 用 x264 编码视频, -c:a copy = Copy音频
2014年01月10日 06点01分
回复 ksfalken :你这个用的是ffmpeg里的X264吧~不过我在做实验~想把x264里运行GUI里的同样参数慢的原因找到~
2014年01月10日 06点01分
大神~我想把源视频直接丢进x264里压~想直接压视频~不压音频~需要加什么参数??~还是不行?
2014年01月14日 06点01分
level 9
nicholas_wujun: "D:\Nicholas\桌面\陈妍希 - 孩子气.avs"
AviSynth 缺点很多
没特殊需求建议使用ffmpeg即可
ffmpeg里有多种filter已经够用了
http://www.ffmpeg.org/ffmpeg-all.html
例...
Resize
ex1. 1280x720
-vf "scale='w=1280:h=720'"
ex2. 1280xH (mod 16)
-vf "scale='w=1280:h=trunc((1280*/dar)/16+0.5)*16'"
ex3. W<=1280 & H<=720 (mod 16), PAR 1:1
-vf "scale='w=min(1280,trunc((720*dar)/16+0.5)*16):h=min(720,trunc((1280/dar)/16+0.5)*16)',setsar='sar=1/1'"
ex4. Letterbox, 720x480, PAR 40:33
-vf "scale='w=min(720,trunc((480*33/40*dar)/16+0.5)*16):h=min(480,trunc((720*40/33/dar)/16+0.5)*16)',pad='w=720:h=480:x=(ow-iw)/2:y=(oh-ih)/2',setsar='sar=40/33'"
libass
先把 input.ass 放在 %cd%
ex.
ffmpeg -i input.mkv -vf "subtitles='input.ass'" -c:v libx264 -c:a copy -y output.mkv
2014年01月10日 06点01分 12
恩~感谢~我在做做实验~~
2014年01月10日 07点01分
另外请教个问题~我用eac3to分离出m2ts里的音频和视频~再把分离出来的视频XX.h264用mp4box封装成mp4~贞率总是以25fps输出的~用什么封装可以保持原贞率?~?
2014年01月10日 07点01分
mp4box -add input.264 -fps %fps% -new output.mp4
2014年01月10日 07点01分
VFR Input 的话可以用 FFmpeg -c:v copy output.mp4
2014年01月10日 07点01分
1