要停止录制,请使用相同的组合键:
Ctrl+Shift+Alt+R
记录指示器从通知区域移除。您的录像存储在~/Videos目录中,文件名带有时间戳。该文件的扩展名为“.webm”,表示它已以WebM视频格式录制。
如果要将录制上传到YouTube,则需要将其转换为MPEG-4(MP4)格式。我们很快就会看到如何使用另一个我们将介绍的名为“ffmpeg”的工具来实现这一点。
请注意,默认情况下,最大录制长度为30秒。您可以使用dconf编辑器对其进行调整。该设置位于org>GNOME>settings-daemon>plugins>media-key下。要调整的设置称为max-creencast-length。
轻松快捷:使用recordMyDesktop进行录制
recordMyDesktop是一个简单明了的屏幕和音频记录工具。它允许您记录桌面、桌面的一部分或特定的应用程序窗口。
要在Ubuntu上安装recordMyDesktop,请使用以下命令:
sudo apt-get install recordmydesktop gtk-recordmydesktop
要在Fedora上安装recordMyDesktop,请使用以下命令:
sudo dnf install recordmydesktop gtk-recordmydesktop
要在Manjaro上安装recordMyDesktop,请使用以下命令:
sudo pacman -Syrecordmydesktop gtk-recordmydesktop
用户界面非常简单。
默认情况下,recordMyDesktop将录制整个桌面。要录制桌面的一部分,请左键单击并在预览缩略图中拖动。这将定义用于录制的屏幕部分。要录制单个应用程序窗口,请单击“选择窗口”按钮,然后单击桌面上的应用程序窗口。
当您准备好录制时,请单击“录制”按钮。通知区域中将出现一个红色指示灯,靠近网络、声音和电源图标。
左键单击指示器,然后从菜单中选择“停止”以停止录制。录制由recordMyDesktop处理,以便可以保存。如果取消此过程,您的录音将丢失。
录制完成后,单击[另存为]按钮保存您的录屏。“文件保存”对话框允许您选择保存录制的位置。
录制为“.ogv”ogg视频格式。这是唯一提供的格式。要将文件转换为不同的视频格式,您可以使用我们将要讨论的下一个工具,即ffmpeg。
从命令行:ffmpeg
FFmpeg项目在2000年发布了它的第一个版本的ffmpeg实用程序。他们最初设想的有用的图形和视频转换程序已经远远超出了他们的想象。ffmpeg现在是一套功能非常强大的工具和编解码器,并被用于许多其他知名的应用程序,如VLC、Plex和Blender。
如果您需要进行一些音频或视频录制或格式转换,并且您想知道ffmpeg是否可以做到这一点,您可以不用再怀疑了。基本上,答案是肯定的。
ffmpeg有很多选择。这里有一个超过4000行的ffmpeg选项列表。如果你想做简单的格式转换以外的任何事情,丰富的功能确实会带来相当大的学习曲线。ffmpeg没有漂亮的前端,但它在接口方面的不足之处在于它在纯粹的功率、速度和灵活性方面弥补了这一点。因为它是命令行驱动的,所以您可以从脚本调用它。您可以记录无人参与命令的瞬时输出,或者记录无法重定向到文件中的GUI屏幕活动。
在我们的测试过程中,必须在Fedora 31和Ubuntu 18.04上安装Fffmpeg。它已经出现在Manjaro 18.1.0上。要在Ubuntu上安装ffmpeg,请使用以下命令:
sudo apt-get install ffmpeg
要在Fedora上安装它,需要添加两个存储库。此命令将注册第一个:
sudo dnf -y install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
此命令将注册第二个:
sudo dnf -y install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
现在可以使用以下命令安装ffmpeg应用程序:
sudo dnf -y install ffmpeg
如何用ffmpeg录制视频和音频
为(相对)简单起见,我们将用音频直接录制整个桌面。要做到这一点,我们必须向ffmpeg提供相当多的参数。我们可以使用一些实用程序来帮助我们找到其中一些值。
要确定可用的屏幕分辨率,我们可以使用xrandr。我们不需要为此命令提供任何参数:
xrandr
输出列出了所有可用的屏幕分辨率。
目前的分辨率是1920×1080,也是这台测试机上可用的最高分辨率。我们会利用这一点。
现在我们将找出这台测试机上存在哪些PulseAudio声源。我们将使用pactl实用程序并要求它列出源代码。语法非常简单,令人耳目一新:
pactl list sources
通过滚动查看详细的输出,我们可以看到有一个SOURCE#0,它是一个输出源。这意味着它会产生声音输出。
检查输出的其余部分会发现另一个称为1号源的源,这是一个输入源。
这意味着信号源#1接受声音输入。例如,这将来自麦克风。因此,我们将使用带ffmpeg的1号信号源,并通过麦克风录制我们的语音。
下面是整个ffmpeg命令。
ffmpeg -video_size 1920x1080 -framerate 25 -f x11grab -i :0.0 -f pulse -ac 2 -i 1 output.mkv -async 1 -vsync 1
让我们来分析一下这一点:
-VIDEO_SIZE 1920×1080:设置视频采集大小。这是我们使用xrandr查找的值。 -帧速率25:设置每秒帧数的值。 -f x11grab:强制视频格式为特定类型。在这里,我们将输入格式设置为您的X服务器的输出。 -i:0.0:指定视频输入将来自主屏幕。 -f PULSE:将预期格式设置为PulseAudio。 -AC 2:设置两个音频通道。 -i 1:获取来自PulseAudio source#1的音频输入,这是我们使用pactl发现的值。 output.mkv:我们希望创建的文件的名称。 -异步1:设置音频同步方式。这是一个不推荐使用的参数,但我们在这里使用它是为了避免可以忽略的错误消息。 -vsync 1:设置视频同步方法,这是一个不推荐使用的参数,我们在这里使用是为了避免出现可以忽略的错误信息。
录制时,您可以在终端窗口中看到许多信息滚动。请最小化此终端窗口,或者将您正在讨论的应用程序的主窗口放在其上面,这样它就不会出现在您的屏幕视频中。
要停止录制,请在终端窗口中输入Ctrl+C。如果一切正常,您将看到来自ffmpeg的确认消息,报告它正在正常退出。
在ffmpeg命令中,我们没有在输出文件名上放置路径,因此它将在启动ffmpeg的目录中创建。在本例中,这是我们的主目录。
使用ffmpeg转换视频文件
我们之前注意到上传到YouTube的首选视频格式是MPEG-4。我们可以使用ffmpeg轻松地将“.mkv”转换为“.mp4”文件。我们说“转换”,但实际上,我们完全是在创建一个新文件。您的原始文件保持不变。
命令很简单。我们使用-i(输入)选项告诉ffmpeg使用原始文件作为输入。输出文件的文件扩展名告诉ffmpeg要创建什么类型的文件。
ffmpeg -i output,mkv output.mp4
将创建一个文件扩展名为“.mp4”的新文件。
要将使用Ctrl+Shift+Alt+R方法录制的截屏视频转换为MPEG-4视频格式,请使用以下命令:
ffmpwg -i "Screencast from 11-02-19 10:47:05.webm" output.mp4
功能强大但用户友好:使用OBS Studio
如果你正在寻找比recordMyDesktop功能更强大、比ffmpeg更容易驾驶的东西,开放广播软件工作室(OBS Studio)可以满足所有需求。
在Ubuntu上安装OBS Studio,命令如下:
sudo apt-get install obs-studio
使用以下命令在Fedora上安装OBS Studio:
sudo dnf install obs-studio
使用以下命令在Manjaro上安装OBS Studio:
sudo pacman -Sy obs-studio
如何在OBS Studio中使用源和场景
OBS Studio在应用程序底部有一个很大的工作区和一组窗格。
你从哪里开始呢?
为了让软件通过它的步调,我需要一个目标,一个我可以尝试实现的终点。看一个好的录像带,然后试着复制他们的作品似乎是明智的。我用作模板的录像带显示了一个桌面,上面有几个打开的应用程序。有一个小的插页窗口,显示了演示者的视图。有时,显示会更改为显示单个窗口的放大视图。这使得一个特定的细节得以讨论。“画外音提供了叙述。
所有这一切在OBS Studio中复制都出奇地容易,因为它的场景和源的概念。OBS中的源是产生声音或视频的东西。您的桌面、桌面上的窗口、网络摄像头、输出音频源和输入音频源(如麦克风)都是有效来源。
可以将多个源集合组合成一个场景。可以创建包含不同源组合的多个场景。只需单击鼠标即可在场景之间跳转。
要创建场景,请在“场景”窗格中单击鼠标右键,然后在上下文菜单中单击“添加”。然后在“添加场景”对话框中输入场景名称,然后单击“确定”按钮。
您创建的场景将列在“场景”窗格中。
我们已经创建了两个场景,一个用于桌面和网络摄像头复合视图,另一个用于终端窗口的放大视图。我们需要在这些场景中添加一些素材。我们将使用“放大终端窗口”场景。要向场景添加源,请在“场景”窗格中选择它,然后在“源”窗格中单击鼠标右键。在上下文菜单中单击“Add”(添加)。
该菜单允许您添加图像、音频输入和输出、应用程序窗口、视频源以及您可能希望包含在屏幕视频中的其他元素。我们要捕捉一扇窗户。单击“Window Capture(XComposite)”菜单选项。
在“Create/Select Source”对话框中,为源创建一个名称,然后单击“OK”按钮。
在“窗口捕获属性”对话框中,使用“窗口”下拉菜单选择要添加到场景中的窗口,然后单击“确定”按钮。
让我们重复一遍,然后为麦克风添加一个信号源。在“源”窗格中单击鼠标右键,然后在上下文菜单中单击“添加”。用来研究本文的测试机使用的是PulseAudio。如果您使用不同的方案,如高级Linux声音体系结构(ALSA),您将选择不同的选项。我们从菜单中选择“Audio Input Capture(PulseAudio)”(音频输入捕获(PulseAudio))。
在“Create/Select Source”(创建/选择源)对话框中,为源指定一个名称,然后单击“OK”(确定)按钮。
在“‘Audio Input Capture(Pulse Audio)’的属性”对话框中,使用“Device”下拉菜单选择您的麦克风所连接的声音设备。单击“确定”按钮。
您的“源”窗格现在应该有两个源,用于当前场景。
有很多微调可以应用于您的源代码。例如,在“音频混音器”窗格中,右键单击麦克风的设置图标将调出上下文菜单。
选择“Filters”将显示“Filters for‘Microphone’”对话框。
要添加筛选器,请在左侧窗格中单击鼠标右键,然后从上下文菜单中选择“Add”。每个过滤器都有可以调整的属性。
经过反复试验,我们选定了与测试麦克风配合良好的滤波器和设置。我们在清晰度和音量之间取得了很好的平衡,并减少了背景噪音。
创造第二个场景也同样容易。我们正在录制的桌面正在虚拟机中运行。通过在窗口中添加整个虚拟机正在运行的窗口,可以很容易地将其添加到场景中。网络摄像头被添加为视频源,并被拖动和调整大小以坐在显示屏的角落。以下是观众将收到的视图:
在两个场景之间移动非常简单,只需单击“场景”窗格中的场景名称即可。放大的终端场景在终端窗口中提供了Top命令的全屏视图。
虽然OBS Studio可以做到这一点,但它建议不要使用MPEG-4格式进行录制。如果出了什么差错,你的档案很可能会丢失。相反,他们建议您用FLV或MKV录制。
如果您需要以不同的视频格式传送您的截屏视频,OBS Studio可以为您进行转换,当然,您也可以使用ffmpeg。
灯光、摄像机、动作
你可能永远不会去好莱坞,但是如果你需要一个制作精良的录像带,Linux可以提供你需要的所有工具。