Hello FFmpeg

Hello FFmpeg

FFmpeg

官网http://ffmpeg.org介绍

A complete, cross-platform solution to record, convert and stream audio and video.

简单来说就是一个全功能跨平台音视频录制 转换以及数据流解决方案。
FFmpeg的安装方式详见官网,下载二进制或者通过源码编译安装,macOS平台下可以通过Homebrew安装

brew install ffmpeg

然后就可以通过ffmpeg程序进行相关音视频操作,比如把一个mp4格式视频转换为avi格式可以用以下命令

ffmpeg -i input.mp4 output.avi

输入源是URL也是可以的哦

ffmpeg -i http://www.your-video-server.com/input.mp4 output.avi

拆分音频左右声道

ffmpeg -i record.mp3 -map_channel 0.0.0 left.mp3 -map_channel 0.0.1 right.mp3

macOS下录屏录音到文件

  1. 列出音视频设备索引

    ffmpeg -f avfoundation -list_devices true -i ""
    

    输入内容大概如下,取决于您的设备

    (隐去部分输出) ...
    [AVFoundation input device @ 0x7f9bdee12970] AVFoundation video devices:
    [AVFoundation input device @ 0x7f9bdee12970] [0] FaceTime HD Camera
    [AVFoundation input device @ 0x7f9bdee12970] [1] Capture screen 0
    [AVFoundation input device @ 0x7f9bdee12970] AVFoundation audio devices:
    [AVFoundation input device @ 0x7f9bdee12970] [0] Built-in Microphone
    

    可以看到2个视频设备及1个音频设备

    • 摄像头FaceTime HD Camera索引0
    • 显示器Capture screen 0索引1
    • 麦克风Built-in Microphone索引0
  2. 录制屏幕和麦克风到文件

    ffmpeg -f avfoundation -i 1:0 output.mp4
    

    其中指令avfoundation的参数1:0指示视频索引:音频索引

    结束录制键盘按q稍后即可。

    同理如果要通过摄像头录制,命令如下

    ffmpeg -f avfoundation -i 0:0 output.mp4
    

    至于其他平台上的指令参数有所区别,详见官方文档 https://trac.ffmpeg.org/wiki/Capture/Desktop

回顾一下哈,通过以上示例,我们可以看到FFmpeg的音视频转换,编辑,设备音视频流抓取等功能。通过已有的技能我们可以实现

  • 音视频格式转换器
  • 录音机
  • 录像机
  • 屏幕录制

如果再稍微扩展一下,我们可以实现

  • 音乐播放器
  • 视频播放器
  • 远程教育,屏幕共享
  • 直播
  • 搭建个音视频对话系统,和女朋友果聊(这里有个悖论,有妹子的缺技术,过度关注技术可能导致妹子缺失)

结语

FFmpeg是一个伟大的软件,开源,功能完善。当你在浏览网页时候看到心仪的小视频想下载珍藏的时候,可以执行

ffmpeg -i http://sth.movies.com/aa/bb/cc.m3u8 output.mp4
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值