FFmpeg工作笔记
0
无    2020-09-02 11:58:51    2    0
myron

ffmpeg

centos系统缺少录屏软件,如果是ubuntu可以用kazam。但GNOME Shell自带录屏功能,可以通过快捷键开启和停止。

开启/停止:

Ctrl + Alt + Shift + R
1
开始后右上角会显示要给小红点,说明正在录制。

默认设置会30秒后自动停止,需要手动设置最长录屏时间。
例如,设置最长时间为600秒

gsettings set org.gnome.settings-daemon.plugins.media-keys max-screencast-length 60



CentOS 6 安装 ffmpeg

_______________________________________________

[linuxtech]
name=LinuxTECH
baseurl=http://pkgrepo.linuxtech.net/el6/release/
enabled=1
gpgcheck=1
gpgkey=http://pkgrepo.linuxtech.net/el6/release/RPM-GPG-KEY-LinuxTECH.NET

_______________________________________________

CentOS7 安装 ffmpeg

1、安装EPEL
yum install -y epel-release
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
yum repolist

2、安装Nux-Dextop源ffmpeg
rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm

3、安装ffmpeg
yum install -y ffmpeg
ffmpeg -version

_______________________________________________

打开多窗口

gnome-terminal -t "title-name" -x bash -c "sh ./run.sh;exec bash;"

________________________________________________

录制rtmp流

ffmpeg -y -i rtmp://202.117.191.165/live/U01 -vcodec copy -acodec copy -f flv a.flv

_________________________________________________

转码 mov -> mp4

ffmpeg -i convert.mp4 -ss 00:03:30 -t 18 -acodec copy -vcodec copy output.mp4

_________________________________________________


视频剪辑

ffmpeg -i output.mp4 -ss 00:00:00 -t 18 -acodec copy -vcodec copy output2.mp4

_________________________________________________

视频添加水印图片

ffmpeg -i output2.mp4 -vf "movie=banner.png,scale=1000:20[watermask];[in][watermask] overlay=920:1050[out]" -y output4.mp4

__________________________________________________

ffmpeg 推流


#!/bin/bash

ffmpeg -re -i $1 -vcodec copy -acodec copy -f flv "rtmp://127.0.0.1:1935/hls/test1"


Linux下用 FFMPEG 采集 usb摄像头视频 和 摄像头内置麦克风音频 到RTMP服务

ffmpeg -r 15 -use_wallclock_as_timestamps 1 -copytb 0 -f v4l2 -vcodec mjpeg -i /dev/video0 -f flv rtmp://127.0.0.1/live/stream

__________________________________________________

Linux VI 命令/etc/yum.repos.d/ffmpeg.repo



[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el\$releasever/en/\$basearch/dag
gpgcheck=0
enabled=1

__________________________________________________


# ffmpeg -i beijingninzao12.mp4 -f flv -scodec xsub -acodec libfaac -ac 6 -ab 64k -ar 48000 -y beijingninzao12.flv

[root@bjkw-dev01 source]# history |grep image2
594 ffmpeg -y -y 19-shang1.VOB -y -f image2 -ss 1 -t 1.002 19-shang1.jpg
595 ffmpeg -y -y ./19-shang1.VOB -y -f image2 -ss 1 -t 1.002 19-shang1.jpg
597 ffmpeg -y -y "./19-shang1.VOB" -y -f image2 -ss 1 -t 1.002 19-shang1.jpg
598 ffmpeg -y -y "./19-shang1.VOB" -y -f image2 -ss 1 -t 1.002 "19-shang1.jpg"
599 ffmpeg -y -y ./19-shang1.VOB -y -f image2 -ss 1 -t 1.002 19-shang1.jpg
600 ffmpeg -y -y ./19-shang1.VOB -y -f image2 -ss 1 -t 1.002 19-shang1.jpg |more
603 ffmpeg -i ./19-shang1.VOB -y -f image2 -ss 1 -t 1.002 19-shang1.jpg
606 ffmpeg -i ./19-shang1.VOB -y -f image2 -ss 1 -t 1.002 19-shang1.jpg
607 ffmpeg -y -i ./19-shang2.VOB -y -f image2 -ss 1 -t 1.002 19-shang1.jpg
609 ffmpeg -y -i ./19-shang1.VOB -y -f image2 -ss 1 -t 1.002 19-shang1.jpg
610 ffmpeg -y -i ./19-shang2.VOB -y -f image2 -ss 1 -t 1.002 19-shang2.jpg
611 ffmpeg -y -i ./19-shang3.VOB -y -f image2 -ss 1 -t 1.002 19-shang3.jpg
618 ffmpeg -y -i xinwenlianbo3.flv -y -f image2 -ss 1 -t 0.012 xinwenlianbo3.jpg
624 ffmpeg -y -i ./kejizichengchanye3.flv -y -f image2 -ss 1 -t 0.012 kejizichengchanye3.jpg
628 ffmpeg -y -i ./shoudujingjibaodo1.flv -y -f image2 -ss 1 -t 0.012 shoudujingjibaodo1.jpg
629 ffmpeg -y -i ./shoudujingjibaodo2.flv -y -f image2 -ss 1 -t 0.012 shoudujingjibaodo2.jpg
631 ffmpeg -y -i ./shoudujingjibaodo7.flv -y -f image2 -ss 1 -t 0.012 shoudujingjibaodo7.jpg
633 ffmpeg -y -i ./tebieguanzhu1.flv -y -f image2 -ss 1 -t 0.012 tebieguanzhu1.jpg
634 ffmpeg -y -i ./tebieguanzhu3.flv -y -f image2 -ss 1 -t 0.012 tebieguanzhu3.jpg
638 ffmpeg -y -i ./shoudujingjibaodo1.flv -y -f image2 -ss 1 -t 1.012 shoudujingjibaodo1.jpg
639 ffmpeg -y -i ./shoudujingjibaodo1.flv -y -f image2 -ss 1 -t 0.012 shoudujingjibaodo1.jpg
640 ffmpeg -y -i ./shoudujingjibaodo1.flv -y -f image2 -ss 1 -t 0.112 shoudujingjibaodo1.jpg
641 ffmpeg -y -i ./shoudujingjibaodo1.flv -y -f image2 -ss 1 -t 0.042 shoudujingjibaodo1.jpg
642 ffmpeg -y -i ./shoudujingjibaodo1.flv -y -f image2 -ss 1 -t 0.022 shoudujingjibaodo1.jpg
643 ffmpeg -y -i ./shoudujingjibaodo1.flv -y -f image2 -ss 1 -t 0.032 shoudujingjibaodo1.jpg
644 ffmpeg -y -i ./shoudujingjibaodo1.flv -y -f image2 -ss 1 -t 1.032 shoudujingjibaodo1.jpg
646 ffmpeg -y -i ./shoudujingjibaodo1.flv -y -f image2 -ss 2 -t 1.032 shoudujingjibaodo1.jpg
647 ffmpeg -y -i ./shoudujingjibaodo1.flv -y -f image2 -ss 2 -t 0.032 shoudujingjibaodo1.jpg
652 ffmpeg -y -i ./beijingninzao11.flv -y -f image2 -ss 2 -t 0.012 beijingninzao11.jpg
654 ffmpeg -y -i ./beijingninzao4.flv -y -f image2 -ss 2 -t 0.012 beijingninzao4.jpg
662 ffmpeg -y -i dianshilanmu4.flv -y -f image2 -ss 1 -t 0.012 dianshilanmu4.jpg


__________________________________________________

0 shijiechengshi1.flv
0 xinwenlianbo2.flv
0 wanjianxinwen3.flv
0 beijingninzao12.flv
0 beijingxinwen17.flv
0 beijingxinwen18.flv
0 beijingxinwen19.flv
0 beijingxinwen20.flv
0 beijingxinwen21.flv
0 beijingxinwen22.flv
0 beijingxinwen23.flv
0 beijingxinwen24.flv
0 beijingxinwen25.flv
0 beijingxinwen26.flv
0 beijingxinwen33.flv
0 beijingxinwen34.flv
0 beijingxinwen41.flv
0 beijingxinwen44.flv
0 beijingxinwen47.flv
0 beijingxinwen48.flv
0 011.flv
0 001.flv


___________________________________________________


20-shang1

20-shang2

20-shang3

+++++++
20-shang4
20-shang5
dianshilanmu4-6
+++++++

19-xia1
19-xia2
19-xia3

dianshilanmu1--dianshilanmu6

kejizichengchanye2

kejizichengchanye1

kejiqudongbeijing1
kejiqudongbeijing2
kejiqudongbeijing3

kejizhilv1
kejizhilv2
kejizhilv3

jingjiaokeji1--jingjiaokeji7

xinnengyuanqiche1

3Ddayin1

shijiechengshi1

beijingxinwen1这个有视频,但没有视频图片



___________________________________________________


1.转换成flv文件:ffmpeg -i infile.* -y (-ss second_offset -ar ar -ab ab -r vr -b vb -s vsize) outfile.flv
其中second_offset是从开始的多好秒钟.可以支持**:**:**格式,至于ar,ab是音频的参数,可以指定 ar=22050,24000,44100(PAL制式),48000(NTSC制式),后两种常见,ab=56(视音频协议的codec而定,如果要听 高品质,则80以上).vr,vb,vsize是视频参数,可以指定 vr=15,25(PAL),29(NTSC),vb=200,500,800,1500(视视频协议的codec而定,可以通过查看专业的codec说 明文档获取,如果你手头有一份详细的各种codec的文档,请提供一份给我,不胜感激.)
还有一些参数-acodec ac -vcodec vc(ac指定音频codec,ar和ab可以省去,vc指定视频codec,vr和vb可以省去,自动采用相应的codec参数)
还有很多高级参数,如-qmin,-qcale等,请查看详细文档.
还有-an和-vn参数,分别从多媒体文件中提取出纯粹视频和音频.
另,如果你是用shell批量处理,请使用-y参数覆盖生成flv.

2.截取图片:ffmpeg -i infile.* -y (-ss second_offset) -t 0.001 -s msize (-f image_fmt) outfile.jpg
其中second_offset同上,msize同vsize,图片大小.image_fmt=image2强制使用jpg,image_fmt=gif,强制使用gif格式.
还可以用-vframes fn指定截取某帧图片,fn=1,2,3,...


____________________________________________________

ffmpeg -i chngshi.mp4 -y -ar 48000 ab=85 -r 29 -b 1500

818 ffmpeg -i VTS_01_1.VOB -target vcd vts_01_1.mpg
822 more ffmpeg_auto.sh
823 ffmpeg -i vts_01_1.mpg -s 320*240 -ar 44100 vts_01_1.flv
838 more ffmpeg_auto.sh
839 ffmpeg -i vts_01_1.mpg -y -f image2 -ss 1 -t 0.001 vts_01_1.jpg

____________________________________________________



centos yum安装ffmpeg


Linux VI 命令/etc/yum.repos.d/ffmpeg.repo



[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el\$releasever/en/\$basearch/dag
gpgcheck=0
enabled=1


yum -y install ffmpeg ffmpeg-devel





____________________________________________________

转码加抽针

ffmpeg -i output.wmv -s 400*300 001.flv && ffmpeg -i output.wmv -y -f image2 -ss 1 -t 0.001 001.jpg


_____________________________________________________


玩转FFmpeg的7个小技巧
5六
2011
# 作者: freetstar / 本文采用CC BY-NC-SA 2.5协议授权,转载请注明本文链接。
FFmpeg堪称音频和视频应用程序的瑞士军刀,提供了丰富的选项和灵活性.很多时候用户为了看视频和听音乐都安装了ffmeg.更多关于ffmeg的详细介绍:here,可以通过ffmpeg -formats查看FFmpeg支持的视音频格式,左侧若是E表明可以编码,D表明可以解码
本文着重介绍命令行下ffmeg的7个技巧:
1 音频转换
ffmpeg -i my_audio.wav my_audio.mp3
-i 后为要转换的音频文件,my_audio.mp3为目的音频文件
2 视频转换
ffmpeg -i my_video.mpeg -s 500×500 my_video.flv
-i 后为源视频文件, -s 表示设置目标视频文件的分辨率 my_video.flv为目的视频文件
3 从视频中截取图片
ffmpeg -i test.mpg image%d.jpg
默认1s截取25张图片,可以通过-r设置每秒截取的图片数量
-r fps 设置帧率,也就是每秒截取图片的数量(默认25)
ffmpeg -i test.mpg -r 1 image%d.jpg
这样子每1s截取1张图片
还可以设置截取间隔,起止
``-ss 设定时间位置,语法:hh:mm:ss[.xxx]
-t 时长:限制转码/捕获视频的时间,语法:hh:mm:ss[.xxx]
ffmpeg -i test.mpg -r 25 -ss 00:00:10 -t 00:00:05 images%05d.png
在第10秒开始,以每秒截取25张图片的速度,截取5秒时长的图片
4 从视频中采集音频
ffmpeg -i video.avi -f mp3 audio.mp3
-f 强制选择格式
ffmpeg -i video.avi -vn audio.mp3
-vn 取消截取视频(也就是只输出音频文件)
5 创建截屏视频
ffmpeg -f x11grab -r 25 -s wxga -i :0.0 /tmp/outputFile.mpg
0.0 是你X11 server的屏幕显示号吗,和DISPLAY一样样的.
此条命令以每秒25帧的速率来截取wxga屏幕视频,当然这里可以用-s 来设置视频分辨率,输出文件是/tmp/outputFile.mpg
6 用图片制作视频
ffmpeg -f image2 -i img%d.jpg /tmp/a.mpg
将`img001.jpg’, `img002.jpg'这种顺序排列的图片文件转制作为视频
7 从webcam中截取视频
ffmpeg -f video4linux2 -s 320x240 -i /dev/video0 out.mpg
同时截取音频和视频:
ffmpeg -f oss -i /dev/dsp -f video4linux2 -s 320x240 -i /dev/video0 out.mpg
/dev/video0为视频设备/dev/dsp为音频设备


____________________________________________________

ffmpeg -y -i $FILECHANGEREL -s 640*360 -ar 44100 $disname >&1
ffmpeg -y -i $FILECHANGEREL -y -f image2 -ss 1 -t 0.008 $privename >&1


________________________________________________________

Captain 16:15:28
现在转码完成了
梁秀伟 16:16:12
刚看到了。多谢
Captain 16:16:41
给领导看了么? 反应怎么样
梁秀伟 16:19:27
不错。一把领导出差了,下周来,不过让其他领导看了看,还成,正在微调。有问题我及时联系。这几天辛苦了。
Captain 16:19:56
好的 你也辛苦了
梁秀伟 16:20:21
应该的。

Kali
文档导航