欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

在Linux下使用avconv进行屏幕录像的教程

程序员文章站 2022-03-12 09:51:32
这篇文章主要介绍了在Linux系统中使用avconv进行屏幕录像的教程,当然也可以同时对声音的输入进行录制,示例基于Ubuntu系统进行操作,需要的朋友可以参考下... 15-06-16...

libav是一款跨平台的工具库,能够用来处理多媒体文件、流和协议。它最初是源自ffmpeg。libav带有一些工具,比如:

  •     avplay: 一款视频音频播放器。
        avconv: 能够记录多个设备输入源的一个多媒体转换器和视频音频录制器。
        avprobe: 一个连接多媒体文件流并且返回关于这个文件流的统计信息的工具。
        libavfilter: 一个libav工具的过滤器(filtering)api。

在这篇文章里面,我们就要展示如何通过'avconv'程序在debian/ubuntu/linux mint发行版上录制linux桌面视频音频。
第一步:下载 avconv 工具

1. avconv是 “libav-tools” 的一部分, 可以通过官方的基于debian的仓库下载,比如mint、ubuntu。输入下面命令即可:

   

复制代码
代码如下:
$ sudo apt-get update
$ sudo apt-get install libav-tools

   在Linux下使用avconv进行屏幕录像的教程

    注意: 你应该运行 ‘./configure –help’ 来列出所有的可选配置选项并且安装相应的解码器和库,你还需要做很多工作来解决依赖问题。

也要注意,如果你是从源代码编译的,就需要使用sudo avconv而不是avconv来运行这个工具。
第二步:开始录制桌面视频

2.一切就绪,现在可以通过运行下面的命令录制你的视频了:


复制代码
代码如下:
$ avconv -f x11grab -r 25 -s 1920x1080 -i :0.0 -vcodec libx264 -threads 4 $home/output.avi

简单解释一下这个命令:

    avconv -f x11grab 默认从x服务捕捉画面。
    -r 25 这是你需要的视频帧率,可以自行设置。
    -s 1920×1080 是你的系统的桌面分辨率,要设置成你当前桌面的分辨率,这一点非常重要。
    -i :0.0 我们要记录的位置(x 服务输出端口),设置成这样就可以了。
    -vcodec libx264 我们用来录制视频的编码器。
    -threads 4 线程数,可以根据情况更改。
    $home/output 输出的目标文件路径。
    .avi 使用的视频格式,可以换成 “flv”、“mp4′、 “wmv”、 “mov”、 “mkv”等。

3.在运行命令之后,就会在terminal上自动运行一个进程进行记录,按"ctrl+c"键来终止记录。
在Linux下使用avconv进行屏幕录像的教程

4. 现在,你可以使用vlc或者其他的播放器,或者使用来自libav包里的播放器"avplay"来播放你录制的视频。

   

复制代码
代码如下:
$ avplay $home/output.avi

注意: 别忘了替换输出文件的路径为你自己的,录制效果还是很好的。
在Linux下使用avconv进行屏幕录像的教程

这有一段我用 “avconv” 录制的视频 (墙外)。
第三步: 开始录制桌面的音频和视频

5. 如果也想同时录制音频,先运行这个命令,列出所有的音频输入源:

   

复制代码
代码如下:
$ arecord -l

结果类似这样:
在Linux下使用avconv进行屏幕录像的教程

在我这里,我只有一个音频输入源,所以数量是1,这就是我使用如下命令来捕捉我的视频以及麦克风的音频的原因。

   

复制代码
代码如下:
$ avconv -f alsa -i hw:1 -f x11grab -r 25 -s 1920x1080 -i :0.0 -vcodec libx264 -threads 4 output-file2.avi

我修改了部分地方,下面做个简短的解释:

  1.     -f alsa 一个从alsa设备捕捉声音的选项。
        -i hw:1 是一个从 “hw:1” 设备捕捉音频的选项,这个设备是我电脑上仅有的一个音频输入设备。

注意: 如果你想用arecord -l显示的1之外的设备的话,别忘了替换 “1”。

结束录制,再来一次“ctrl + c” 就可以。
第四步: 开始录制桌面音频

6. 如果只想录制音频的话,使用下面的命令。

   

复制代码
代码如下:
$ avconv -f alsa -i hw:1 out.wav

7. 替换成 .mp3 等libav支持的格式都可以,播放 out.wav就能听到你自己的声音了。
在Linux下使用avconv进行屏幕录像的教程