zoukankan      html  css  js  c++  java
  • mencoder及ffmpeg的基本命令

    前段时间想在ubuntu下对视频进行格式转换,多方查找之后,接触了mencoder与ffmpeg。

    mencoder

    mencoder 是一款命令行方式的视频处理软件,是Mplayer自带的编码工具,所有操作并没有可视化的界面,但是功能极其强大。

    命令格式举例:mencoder input.avi -o output.avi -oac mp3lame -lameopts cbr:br=32 -ovc x264 -x264encopts bitrate=440 -vf scale=448:-3

    其中:input.avi 是指输入的视频,也就是你要转换的视频。
    -o output.avi 中的“-o”是指你要输出视频,输出的视频名为output.avi。
    -oac 设置音频编码器。
    mp3lame 设置音频编码器为mp3lame,也是就mp3。
    -lameopts 设置mp3lamer的相关参数。
    cbr:br=32 设置音频的码率为32。
    -ovc 设置视频编码器。
    x264 设置视频编码器为x264。
    -x264encopts 设置x264的参数。
    bitrate-440 设置x264的视频的码率为440。
     
    以下是一些固定格式(仅供参考):
    RMVB转AVI
    mencoder 1.rmvb -oac mp3lame -lameopts preset=64 -ovc xvid -xvidencopts bitrate=600 -of avi -o rmvb.avi
    RM转AVI
    mencoder 1.rm -oac mp3lame -lameopts preset=64 -ovc xvid -xvidencopts bitrate=600 -of avi -o rm.avi
    MPEG转AVI
    mencoder mp4.mpeg -oac mp3lame -lameopts preset=64 -ovc xvid -xvidencopts bitrate=600 -of avi -o mp4.avi
    MOV转AVI
    mencoder qtime.mov -oac mp3lame -lameopts preset=64 -ovc xvid -xvidencopts bitrate=600 -of avi -o qtime.avi
    WMV转AVI 包括WMV7到WMV9,只实验到WMV9
    mencoder m7.wmv -oac mp3lame -lameopts preset=64 -ovc xvid -xvidencopts bitrate=600 -of avi -o m7.avi
    RV转AVI
    mencoder 1.rv -oac mp3lame -lameopts preset=64 -ovc xvid -xvidencopts bitrate=600 -of avi -o rv.avi
    AVI转FLV
    ffmpeg -i test.avi -ab 56 -ar 22050 -b 500 -r 15 -s 320x240 test.flv 
    抓图JPG。
    ffmpeg -i 2.wmv -y -f image2 -ss 8 -t 0.001 -s 350x240 test.jpg
    3GP转FLV
    mencoder -vf scale=320:240 -ffourcc FLV1 -of lavf -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames -ovc lavc -lavcopts vcodec=flv:vbitrate=200 -srate 22050 -oac lavc -lavcopts acodec=mp3:abitrate=56 ok/1.3gp -o ok/3gp.flv
    MOV转FLV
    mencoder -vf scale=320:240 -ffourcc FLV1 -of lavf -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames -ovc lavc -lavcopts vcodec=flv:vbitrate=200 -srate 22050 -oac lavc -lavcopts acodec=mp3:abitrate=56 ok/qtime.mov -o ok/mov.flv
    RMVB转FLV
    mencoder -vf scale=320:240 -ffourcc FLV1 -of lavf -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames -ovc lavc -lavcopts vcodec=flv:vbitrate=200 -srate 22050 -oac lavc -lavcopts acodec=mp3:abitrate=56 ok/1.rmvb -o ok/rmvb.flv
    WMV转FLV
    mencoder -vf scale=320:240 -ffourcc FLV1 -of lavf -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames -ovc lavc -lavcopts vcodec=flv:vbitrate=200 -srate 22050 -oac lavc -lavcopts acodec=mp3:abitrate=56 ok/m9.wmv -o ok/m9.flv

    ffmpeg

    ffmpeg用起来比mancoder相对简单一点:

    1. 视频转换
    
    比如一个avi文件,想转为mp4,或者一个mp4想转为ts。
    ffmpeg -i input.avi output.mp4
    ffmpeg -i input.mp4 output.ts
    2. 提取音频
    
    ffmpeg -i test.mp4 -acodec copy -vn output.aac
    上面的命令,默认mp4的audio codec是aac,如果不是,可以都转为最常见的aac。
    ffmpeg -i test.mp4 -acodec aac -vn output.aac
    3. 提取视频
    
    ffmpeg -i input.mp4 -vcodec copy -an output.mp4
    4. 视频剪切
    
    下面的命令,可以从时间为00:00:15开始,截取5秒钟的视频。
    ffmpeg -ss 00:00:15 -t 00:00:05 -i input.mp4 -vcodec copy -acodec copy output.mp4
    -ss表示开始切割的时间,-t表示要切多少。上面就是从15秒开始,切5秒钟出来。
  • 相关阅读:
    附021.Traefik-ingress部署及使用
    附020.Nginx-ingress部署及使用
    附019.Rancher搭建及使用
    附018.K3S-ETCD高可用部署
    053.Kubernetes集群管理-Helm部署及使用
    052.Kubernetes集群管理-故障排错指南
    051.Kubernetes集群管理-日志管理
    049.Kubernetes集群管理-集群监控Metrics
    048.Kubernetes集群管理-资源限制实践
    047.Kubernetes集群管理-资源及配额管理
  • 原文地址:https://www.cnblogs.com/Eric-jx/p/10114648.html
Copyright © 2011-2022 走看看