FFmpeg 命令:从入门到精通 | ffmpeg 命令视频录制

news/2024/7/10 21:40:02 标签: ffmpeg, 音视频

FFmpeg 命令:从入门到精通 | ffmpeg 命令视频录制

  • FFmpeg 命令:从入门到精通 | ffmpeg 命令视频录制
    • 安装软件:Screen Capturer Recorder
    • 查看可用设备名字
    • 音视频录制
      • 录制视频(默认参数)
      • 录制声音(默认参数)
      • 同时录制系统 + 麦克风声音和视频(默认参数)
    • 查看视频录制的可选参数
    • 查看音频录制的可选参数
    • 指定参数录制音视频

ffmpeg__1">FFmpeg 命令:从入门到精通 | ffmpeg 命令视频录制

本节主要介绍了ffmpeg 命令进行音视频录制的方法,并列举了一些例子。

安装软件:Screen Capturer Recorder

项目地址:on screen capture recorder to video free Files

安装最新版本:

在这里插入图片描述

安装软件:

在这里插入图片描述

查看可用设备名字

完成安装后,我们可以在命令行输入以下命令查看电脑的可用设备名字:

ffmpeg -list_devices true -f dshow -i dummy

输出以下结果:

[dshow @ 000001e3fded3800] "Integrated Camera" (video)
[dshow @ 000001e3fded3800]   Alternative name "@device_pnp_\\?\usb#vid_13d3&pid_56a6&mi_00#6&1c1093a4&1&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global"
[dshow @ 000001e3fded3800] "screen-capture-recorder" (video)
[dshow @ 000001e3fded3800]   Alternative name "@device_sw_{860BB310-5D01-11D0-BD3B-00A0C911CE86}\{4EA69364-2C8A-4AE6-A561-56E4B5044439}"
[dshow @ 000001e3fded3800] "OBS Virtual Camera" (video)
[dshow @ 000001e3fded3800]   Alternative name "@device_sw_{860BB310-5D01-11D0-BD3B-00A0C911CE86}\{A3FCE0F5-3493-419F-958A-ABA1250EC20B}"
[dshow @ 000001e3fded3800] "麦克风 (Realtek(R) Audio)" (audio)
[dshow @ 000001e3fded3800]   Alternative name "@device_cm_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\wave_{E35D34C8-3763-4470-BDFF-5999B6DB4347}"
[dshow @ 000001e3fded3800] "virtual-audio-capturer" (audio)
[dshow @ 000001e3fded3800]   Alternative name "@device_sw_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\{8E146464-DB61-4309-AFA1-3578E927E935}"
[dshow @ 000001e3fded3800] "立体声混音 (Realtek(R) Audio)" (audio)
[dshow @ 000001e3fded3800]   Alternative name "@device_cm_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\wave_{159589C7-204D-4C6C-8804-B576E8B7DC6C}"
dummy: Immediate exit requested

其中:

  • “Integrated Camera”:笔记本摄像头
  • “screen-capture-recorder”:录制桌面的设备
  • “麦克风 (Realtek® Audio)”:麦克风
  • “virtual-audio-capturer”:录制系统声音的设备

音视频录制

录制视频(默认参数)

桌面:

ffmpeg -f dshow -i video="screen-capture-recorder" v-out.mp4 

摄像头:

ffmpeg -f dshow -i video="Integrated Camera" -y v-out2.flv

注:要根据自己摄像头名称。

录制声音(默认参数)

系统声音:

ffmpeg -f dshow -i audio="virtual-audio-capturer" a-out.aac

注:Ctrl + C 退出录制。

系统 + 麦克风声音:

ffmpeg -f dshow -i audio="麦克风 (Realtek(R) Audio)" -f dshow -i audio="virtual-audio-capturer" -filter_complex amix=inputs=2:duration=first:dropout_transition=2  a-out2.aac

注:要根据自己麦克风名称。

同时录制系统 + 麦克风声音和视频(默认参数)

ffmpeg -f dshow -i audio="麦克风 (Realtek(R) Audio)" -f dshow -i audio="virtual-audio-capturer" -filter_complex amix=inputs=2:duration=first:dropout_transition=2 -f dshow -i video="screen-capture-recorder"  -y av-out.flv

查看视频录制的可选参数

查看 screen-capture-recorder 相关参数:

ffmpeg -f dshow -list_options true -i video="screen-capture-recorder"

输出:

[dshow @ 0000023f4f3a3740] DirectShow video device options (from video devices)
[dshow @ 0000023f4f3a3740]  Pin "Capture" (alternative pin name "1")
[dshow @ 0000023f4f3a3740]   pixel_format=bgr0  min s=1x1 fps=0.02 max s=1920x1080 fps=30
[dshow @ 0000023f4f3a3740]   pixel_format=bgr0  min s=1x1 fps=0.02 max s=1920x1080 fps=30
[dshow @ 0000023f4f3a3740]   pixel_format=bgr24  min s=1x1 fps=0.02 max s=1920x1080 fps=30
[dshow @ 0000023f4f3a3740]   pixel_format=rgb555le  min s=1x1 fps=0.02 max s=1920x1080 fps=30
[dshow @ 0000023f4f3a3740]   pixel_format=rgb555le  min s=1x1 fps=0.02 max s=1920x1080 fps=30
[dshow @ 0000023f4f3a3740]   pixel_format=rgb8  min s=1x1 fps=0.02 max s=1920x1080 fps=30
[dshow @ 0000023f4f3a3740]   pixel_format=yuv420p  min s=1x1 fps=0.02 max s=1920x1080 fps=30
[dshow @ 0000023f4f3a3740] Could not find output pin from video capture device.
video=screen-capture-recorder: I/O error

查看音频录制的可选参数

查看 virtual-audio-capturer 相关参数:

ffmpeg -f dshow -list_options true -i audio="virtual-audio-capturer"

输出:

[dshow @ 0000024b7e113740] DirectShow audio only device options (from audio devices)
[dshow @ 0000024b7e113740]  Pin "Capture Virtual Audio Pin" (alternative pin name "1")
[dshow @ 0000024b7e113740]   ch= 2, bits=16, rate= 48000
audio=virtual-audio-capturer: Immediate exit requested

查看 麦克风 (Realtek(R) Audio) 相关参数:

ffmpeg -f dshow -list_options true -i audio="麦克风 (Realtek(R) Audio)"

输出:

[dshow @ 00000260768b3700] DirectShow audio only device options (from audio devices)
[dshow @ 00000260768b3700]  Pin "Capture" (alternative pin name "Capture")
[dshow @ 00000260768b3700]   ch= 2, bits=16, rate= 44100
    Last message repeated 1 times
[dshow @ 00000260768b3700]   ch= 1, bits=16, rate= 44100
[dshow @ 00000260768b3700]   ch= 2, bits=16, rate= 32000
[dshow @ 00000260768b3700]   ch= 1, bits=16, rate= 32000
[dshow @ 00000260768b3700]   ch= 2, bits=16, rate= 22050
[dshow @ 00000260768b3700]   ch= 1, bits=16, rate= 22050
[dshow @ 00000260768b3700]   ch= 2, bits=16, rate= 11025
[dshow @ 00000260768b3700]   ch= 1, bits=16, rate= 11025
[dshow @ 00000260768b3700]   ch= 2, bits=16, rate=  8000
[dshow @ 00000260768b3700]   ch= 1, bits=16, rate=  8000
[dshow @ 00000260768b3700]   ch= 2, bits= 8, rate= 44100
[dshow @ 00000260768b3700]   ch= 1, bits= 8, rate= 44100
[dshow @ 00000260768b3700]   ch= 2, bits= 8, rate= 22050
[dshow @ 00000260768b3700]   ch= 1, bits= 8, rate= 22050
[dshow @ 00000260768b3700]   ch= 2, bits= 8, rate= 11025
[dshow @ 00000260768b3700]   ch= 1, bits= 8, rate= 11025
[dshow @ 00000260768b3700]   ch= 2, bits= 8, rate=  8000
[dshow @ 00000260768b3700]   ch= 1, bits= 8, rate=  8000
[dshow @ 00000260768b3700]   ch= 2, bits=16, rate= 48000
[dshow @ 00000260768b3700]   ch= 1, bits=16, rate= 48000
[dshow @ 00000260768b3700]   ch= 2, bits=16, rate= 96000
[dshow @ 00000260768b3700]   ch= 1, bits=16, rate= 96000
audio=麦克风 (Realtek(R) Audio): Immediate exit requested

指定参数录制音视频

ffmpeg -f dshow -i audio="麦克风 (Realtek(R) Audio)" -f dshow -i audio="virtual-audio-capturer" -filter_complex amix=inputs=2:duration=first:dropout_transition=2 -f dshow -video_size 1920x1080 -framerate 15 -pixel_format yuv420p  -i video="screen-capture-recorder" -vcodec h264_qsv  -b:v 3M  -y av-out.flv
ffmpeg -f dshow -i audio="麦克风 (Realtek(R) Audio)" -f dshow -i audio="virtual-audio-capturer" -filter_complex amix=inputs=2:duration=first:dropout_transition=2 -f dshow -i video="screen-capture-recorder" -vcodec h264_qsv  -b:v 3M -r 15 -y av-out2.mp4
ffmpeg -f dshow -i audio="麦克风 (Realtek(R) Audio)" -f dshow -i audio="virtual-audio-capturer" -filter_complex amix=inputs=2:duration=first:dropout_transition=2 -f dshow -framerate 15 -pixel_format yuv420p -i video="screen-capture-recorder" -vcodec h264_qsv  -b:v 3M -r 15 -y av-out3.mp4

参数:

  • -video_size:视频大小
  • -vcodec:视频编码格式
  • -framerate:视频帧率
  • -pixel_format:视频像素格式
  • -b:v:视频码率
  • -r:帧率

http://www.niftyadmin.cn/n/5062621.html

相关文章

Java 21 新特性:Unnamed Patterns and Variables

Java 21中除了推出JEP 445:Unnamed Classes and Instance Main Methods之外,还有另外一个预览功能:未命名模式和变量(Unnamed Patterns and Variables)。该新特性的目的是提高代码的可读性和可维护性。 下面通过一个例子来理解这…

《Effective Java》知识点(8)--通用编程

57. 将局部变量的作用域最小化 将局部变量的作用域最小化,可以增强代码的可读性和可维护性,并降低出错的可能性。 要使局部变量的作用域最小化,最有力的方法就是在第一次要使用它的地方进行声明。另一方法是使方法小而集中。 几乎每一个局部变…

<泛型>带你更详细的认识泛型

了解泛型 现在有一个需求:写一个打印类,用来打印不同类型的数据 //类1 :打印Integer类型的数据 public class IntegerPrint {Integer content;public void Integer(Integer content) {this.content content;}public void print(){System.o…

JavaSE | 初识Java(一) | JDK \ JRE \ JVM

Java初识 Java 是一门半编译型、半解释型语言。先通过 javac 编译程序把源文件进行编译,编译后生成的 .class 文件是由字节 码组成的平台无关、面向 JVM 的文件。最后启动 java 虚拟机 来运行 .class 文件,此时 JVM 会将字节码转换成平台能够理…

10.1 今日任务:select实现服务器并发

#include <myhead.h>#define ERR_MSG(msg) do{\fprintf(stderr, "__%d__:", __LINE__); \perror(msg);\ }while(0)#define PORT 8888 //端口号&#xff0c;范围1024~49151 #define IP "192.168.112.115" //本机IP&#xff0c;ifco…

我的第一个react.js 的router工程

react.js 开发的时候&#xff0c;都是针对一个页面的&#xff0c;多个页面就要用Router了&#xff0c;本文介绍我在vscode 下的第一个router 工程。 我在学习react.js 前端开发&#xff0c;学到router 路由的时候有点犯难了。经过1-2天的努力&#xff0c;终于完成了第一个工程…

STL学习笔记之容器

首先我们要学习的是容器 第一个是容器的初始化&#xff08;构造方式&#xff09;有三种方式 分别是 第一种 int arr[]{1,2,3} vector<int> v1(arr,arr3) 即容器存放的种类和从另外一个数组去拷贝一段数据。 第二种 vector<int> v2(3,10); 第一个3是指存放…

基于Java的城市天然气费管理系统的设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序&#xff08;小蔡coding&#xff09;有保障的售后福利 代码参考源码获取 前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作…