https://segmentfault.com/a/1190000042391748
https://www.jianshu.com/c/5cef16ba6351
https://blog.csdn.net/phker/article/details/132027547
https://zhuanlan.zhihu.com/p/597299940
https://zhuanlan.zhihu.com/p/117523405
Codecs: D..... = Decoding supported .E.... = Encoding supported ..V... = Video codec ..A... = Audio codec ..S... = Subtitle codec ..D... = Data codec ..T... = Attachment codec ...I.. = Intra frame-only codec ....L. = Lossy compression .....S = Lossless compression
D. = Demuxing supported .E = Muxing supported
T.. = Timeline support .S. = Slice threading ..C = Command support
I.... = Supported Input format for conversion .O... = Supported Output format for conversion ..H.. = Hardware accelerated format ...P. = Paletted format ....B = Bitstream format
.D.........
ffmpeg -i lk.mkv -ss 00:00:42 -to 00:04:43.32 -c copy lk_start.mkv
ffmpeg -i lk_start.mkv -vn -c:a copy lk.aac
ffmpeg -i lk_start.mkv -vn -c:a libmp3lame lk.mp3
ffmpeg -ss 00:03:15 -i lk_start.mkv -t 5 -r 10 -vf scale=200:-1 -sn -an jugaogao.gif
-list_devices <TRUE|FALSE>
如果设置为 true,则会给出所有可用输入设备的列表,显示所有设备名称和索引。
-video_device_index <INDEX>
通过索引指定视频设备。覆盖输入文件名中给出的任何内容。
-audio_device_index <INDEX>
通过索引指定音频设备。覆盖输入文件名中给出的任何内容
-pixel_format <FORMAT>
TODO: 有哪些 pixel_format
-framerate
设置抓取帧率。默认为ntsc,对应帧速率为30000/1001
-video_size
设置视频帧大小。
-capture_cursor
捕获鼠标指针。默认值为 0。
-capture_mouse_clicks
捕获屏幕鼠标点击。默认值为 0。
-capture_raw_data
捕获原始设备数据。默认值为 0。
ffmpeg -f avfoundation -list_devices true -i ""
##### 将视频设备 0 中的视频和音频设备 0 中的音频录制到 out.avi 中
ffmpeg -f avfoundation -i "0:0" out.avi
##### 将视频设备 2 中的视频和音频设备 1 中的音频录制到 out.avi 中
ffmpeg -f avfoundation -video_device_index 2 -i ":1" out.avi
##### 使用像素格式 bgr0 从系统默认视频设备录制视频,并且不将任何音频录制到 out.avi 中
ffmpeg -f avfoundation -pixel_format bgr0 -i "default:none" out.avi
ffmpeg -f lavfi -i testsrc -t 5 -f lavfi -i sine=r=44100 -t 5 -f flv -vcodec h264 -acodec aac abc.mp4
ffmpeg -f lavfi -i 'nullsrc,geq=random(1)*255:128:128' -t 5 -f lavfi -i sine=r=44100 -t 5 -f flv -vcodec h264 -acodec aac abc.mp4