如何录制屏幕和内部音频?

有没有办法可以录制我的屏幕,同时也能录制内部音频呢?比如,如果我在录制游戏,它会同时录制屏幕和游戏中的声音。

对于游戏来说,你可以尝试使用glc:请参考我在这个问题中的回答。 - user76204
5个回答

SimpleScreenRecorder在我录制在线播放视频时帮了我一把。它有一个(实验性的)OpenGL功能。 在Ubuntu中:

sudo apt update
sudo apt install simplescreenrecorder

使用OpenGL功能,您可以选择记录特定的应用程序窗口。因此,即使在后台录制时,您也可以继续工作。不过,请不要播放任何音乐,因为音频会混合在一起(除非您是DJ ;) )。

1运行异常出色!内部音频录制效果很好,而且编码速度可以调整以获得流畅的更高帧率,太棒了! - Rasmus
我无法推荐这个足够了。它很有效,而且操作简单易懂 - 不妨试试看! - peterhil
截至17.04,它已经在官方存储库中,您不需要添加PPA。 - Scimonster
2它会记录你通过麦克风输入的声音/音频吗? - MycrofD
@MycrofD 是的,它可以 - 确保你正在使用正确的音频输入源(内置的对我有效)。 - BenedictWilkins
2021年更新:您不需要额外的PPA,simplescreenrecorder现在已经包含在标准仓库(宇宙)中。 - Ufos
1简单录屏软件对我也有效。在音频设置中,将后端设置为PulseAudio,并将源设置为您的声音输出设备。您可以控制是否还记录外部音频(来自计算机的麦克风):在 simplescreenrecorder 录制时,打开 pavucontrol(PulseAudio 音量控制的图形界面)。在“录制”选项卡中,如需仅获取内部音频,请选择“内置模拟立体声监视器”。或者,如果您需要同时获取内部和外部音频,请选择“内置模拟立体声”。除非您确实需要,否则可以忽略 OpenGL,它似乎是一种更高级的选项。 - user2852263
无法与我一起工作。错误“[PageRecord :: StartOutput]错误:初始化期间发生错误。”我尝试更改视频/音频设置,但没有任何效果。Ubuntu 20.04 - rmsys
我现在每天都在使用这个坏小子来记录我的工作,而且你可以从隐藏模式下的最后一次设置开始:simplescreenrecorder --start-recording --start-hidden。<< 这可是个省时的好东西。 - Juan Javier Triff Cabanas
小心,安装并启动后,我的远程桌面连接不再工作了... - Boern
@Boern,你是在远程电脑上录制吗?如果是这样的话,一个解决办法是在你的电脑上全屏远程连接时进行录制。 - Juan Javier Triff Cabanas

也许RecordMyDesktop适合你?它可以录制屏幕和音频,但我不确定它是否支持游戏。
你可以使用以下命令安装它:
sudo apt-get install recordmydesktop

如果你想要一个图形用户界面(GUI),你需要安装其中一个软件包gtk-recordmydesktop (GTK) 或者 recorditnow (Qt)

虽然它已经停止更新,但它仍然可以正常工作。


很遗憾,使用它来玩游戏有些困难,我上次尝试使用OpenGL录像功能时发现效果很糟糕。 - MrVaykadji
这个工作在其他方面是有效的,但我无法通过耳机获得内部音频。用户界面也相当不直观 - 第一次使用时,我意识到面板上的大方块代表停止符号之前,已经有五个录音正在进行中!而且我除了是程序员还是一名平面设计师... - peterhil
使用的是麦克风,而不是内部音频。 - Hi-Angel
recordmydesktop进程在录制时是否将数据存储到硬盘中,还是将所有内容保存在内存中,仅在您发出终止进程的信号时才将数据闪存出来? - mercury0114
@mercury0114:它会将数据记录到磁盘上。一旦你终止该进程,它似乎会进行一些转换,以更适合的压缩格式保存数据。 - Nav

1. 按照以下方式安装OBS:https://github.com/jp9000/obs-studio/wiki/Install-Instructions#linux
sudo add-apt-repository ppa:obsproject/obs-studio
sudo apt-get update && sudo apt-get install obs-studio

2. 打开OBS;在混音器面板中,点击“桌面音频”的“齿轮”图标,然后选择“内置音频模拟立体声”。
3. 再次在混音器面板中,通过点击麦克风/辅助音量图标来静音。
4a. 视频来源方法1:在“资源”面板中,点击“+”号,然后选择“屏幕捕获XSHM”。如果勾选了保存鼠标指针,则会一同保存。
4b. 视频来源方法2:安装VLC(不保存鼠标指针)。
  • sudo snap install vlc source
  • 安装插件:sudo apt install vlc-plugin-access-extra source
  • 在VLC中:选择“捕获设备”-“桌面”,配置"MRL"为screen://。您应该能够在VLC中看到您的屏幕。
  • 在OBS中,“源”面板中,添加+ VLC视频源,进行配置⚙;在“播放列表”中,+添加路径 screen://

5. 如果启用了工作室模式,请单击屏幕中央的转换,现在您应该能够在右侧窗口中看到您的屏幕。

6. 如果需要更改输出文件夹:在“控制”面板(右侧),单击“设置”,然后单击左侧菜单中的“输出”。

7. 最后,在“控制”面板中点击开始录制

使用Debian衍生版的OBS不需要任何PPA,因为它是分发包的一部分。默认情况下,它可以同时录制我的麦克风和桌面/电脑,正好符合我的需求。 - Csaba Toth

vokoscreen-ng 对我来说很好用,而且符合你的要求:

  • 录制屏幕
  • 录制内部音频
  • 以及:
  • 从网络摄像头录制你的画面
  • 录制你的麦克风声音

它适用于Windows和Linux系统。

对于Ubuntu系统,你可以通过Ubuntu软件中心安装它,或者使用以下命令进行安装:

sudo apt install vokoscreen-ng

第一次尝试就成功了。 - rmsys

我正在使用recordscreen.py Python脚本。它在后台启动ffmpegavconv,所以请确保你已经安装了它们。
将整个桌面录制为15 FPS的output.mkv文件:
recordscreen.py output.mkv

以不同的音频和视频编解码器以30 FPS录制:
recordscreen.py -r 30 --vcodec=vp8 --acodec=pcm output.mkv

或者录制为 .webm 格式:
recordscreen.py output.webm

我还没有尝试使用它来记录游戏,所以我会很感兴趣听听它的效果如何。
而且,仅仅出于历史角度考虑,这是其中一篇关于它的最早的博客文章

市面上有无数的屏幕录制软件。问题在于如何录制内部音频。我该如何录制内部音频,也就是说,如果我在网站上播放视频,如何录制那个音频流呢? - Csaba Toth
@CsabaToth 需要一位新生来研究这个用例。ffpmeg 的文档中提到了 ALSA。http://trac.ffmpeg.org/wiki/Capture/ALSA#Recordaudiofromanapplicationwhilealsoroutingtheaudiotoanoutputdevice 但是在 recordscreen.py 中,DEFAULT_CAPTURE_AUDIO_DEVICE = "pulse" - anatoly techtonik
我在尝试这种方法时遇到了“Unknown encoder libvo_aacenc”错误。 - Arjuna Deva