linux下怎么录视频,Linux下使用RecordMyDesktop进行屏幕录像

article/2025/4/7 21:44:59

屏幕录像的功能对于分享游戏攻略、演示电脑软件的操作是必不可少的。在Windows下可能一般的用户就下载盗版的商业软件来做了。而在GNU/Linux操作系统下,则有现成的自由软件可供使用,只不过没有图形界面罢了,但也同样方便有效。更何况,这一点对于已经入门的Linux用户来说也不算什么难题。本文介绍如何使用recordmydesktop进行屏幕录像。

软件包的安装就不用说了。需要提及一点的是,在使用recordmydesktop之前,还需要安装pavucontrol(PulseAudio Volume Control)。否则,所得的视频只有图像而没有声音,无论怎么设置声音选项中的device都不行。pavucontrol简介如下:

PulseAudio Volume Control (pavucontrol) is a simple GTK+ based volume control tool (mixer) for the PulseAudio sound server. In contrast to classic mixer tools this one allows you to control both the volume of hardware devices and of each playback stream separately. It also allows you to redirect a playback stream to another output device without interrupting playback.

然后,运行pavucontrol,在其中的“Recording”选项卡中将声源选为“Monitor of Built-in Audio Analog Stereo”,则可以录制电脑上正在播放的音频。而若选择“Built-in Audio Analog Stereo”,则会录制由麦克风输入的声音。需注意的是,一定要先开启录音程序,这些设置选项才会出现。具体如下图所示:

51c3c9d308b055d1cd9ab8010522cf9a.png

接下来,就可以运行recordmydesktop命令录制屏幕了。其中所用参数的含义不言自明。需注意的是,--device选项的值为pulse。

recordmydesktop --display :0.0 -x 1728 -y 156 --width 1024 --height 768 --device pulse --overwrite -o wesnoth-under-the-burning-sun.ogv

录制bsnes游戏时,由于其默认的帧率为60,所以在下面的命令中,--fps选项也需要指定一下。同时,使用--s_quality选项设置了声音的质量为最高:

recordmydesktop --display :0.0 -x 1845 -y 278 --width 796 --height 581 --fps 60 --device pulse --s_quality 10 --overwrite -o bsnes.ogv

为了方便知晓需要被录像窗口的大小与位置,可以调用自己写的Sawfish函数display-window-paras来显示出窗口信息。该函数目前被绑定到了Super-e快捷键上。该函数的内容如下:

;; Display window position and dimension

(defun display-window-paras ()

"Display the position, dimension and group ID of the current window."

(interactive)

(let* ((cur-win (input-focus))

(win-width (car (window-dimensions cur-win)))

(win-height (cdr (window-dimensions cur-win)))

(win-x (car (window-position cur-win)))

(win-y (cdr (window-position cur-win))))

(display-message

(concat "Name: " (window-name cur-win) "\n"

"Dimension: " (number->string win-width) "x" (number->string win-height) "\n"

"Position: " (number->string win-x) "x" (number->string win-y) "\n"

"Group ID: " (number->string (window-actual-group-id cur-win)))

alert-msg-attrib)))

(bind-keys window-keymap

"Super-e" `(display-window-paras))

执行display-window-paras后,其显示出的信息如下:

21931364bf5b44461829d76265d99c46.png

需要结束录像时,在终端窗口按Ctrl+c向recordmydesktop发现退出信号,在其保存完视频文件后便自动退出。接下来,需要将ogv格式的视频转化为常见的格式,如mp4。一个需要解决的问题是如何让声音与图像保持同步。目前是使用ffmpeg进行格式转换的(mencoder经试用后效果不好):

ffmpeg -i input_file.ogv -acodec libmp3lame -acodec ac3 -ab 128k -ac 2 -vcodec libx264 -preset slow -crf 22 -threads 4 output_file.mp4

0b1331709591d260c1c78e86d0c51c18.png


http://chatgpt.dhexx.cn/article/G437rQ88.shtml

相关文章

linux屏幕录制_配置Linux进行音乐录制和制作

linux屏幕录制 如果您是一名程序员,您会发现GNU / Linux系统非常强大。 当涉及到视觉艺术,视频,商业或游戏等领域时,您会发现一些具有潜力的工具,但存在许多错误,怪癖和挑战。 在大多数情况下,您…

i.mx536 linux视频录制,linux mint 18.3下录制网站上的视频与声音的软件 vokoscreen 安装与使用...

linux mint 18.3下录制网站上的视频与声音的软件 vokoscreen 2.4.0 的安装与使用 由于的学习的需要,所以总在网上看视频资料。有时,对于有用的资料总想下载下来备份到电脑中,以备以后学习使用方便。但有些视频网站是不允许下载的。在win中有很…

Linux 声音系统

驱动级 OSS 和ALSA OSS(Open Sound System,开放声音系统),老系统中的音频框架 ALSA(Advanced Linux Sound Architecture,高级Linux声音体系),新系统中的音频框架,用于替代老的OSS。…

python人像录制加声音_Python实现电脑录音(含音频基础知识讲解)

Python实现电脑录音(含音频基础知识讲解) 前言 今天开始进入近期系列文章的第一篇,如何用 Python 来实现录音功能。 在开始"造轮子"之前,个人一直强调一个观点,如果有些东西已经有了,不妨直接去 …

linux 下 FFmpeg 录制命令

linux 下 FFmpeg 录制命令 转载自:http://blog.topspeedsnail.com/archives/1325 录制屏幕(mkv格式): ffmpeg -f x11grab -r 30 -i :0.0 -f alsa -i hw:0,0 -acodec flac -vcodec ffvhuff out.mkv 1 ffmpeg -f x11grab -r 30 -…

linux下录制视频流,Ubuntu Linux 下的PSP视频输出以及录制

前阵子,由于想录个PSP游戏的视频而又不想切到Windows,所以折腾了一下Ubuntu Linux下的办法。 最终算是实现了,以下为方法。 1、工具 需要PSP端视频输出软件,如irshell 5和FreeCheat(FC),本人用的是FC,irshe…

如何录制电脑系统声音(Audacity)

文章目录 如何录制电脑系统声音什么是AudacityAudacity 如何使用 如何录制电脑系统声音 思路:利用音频录制工具(电脑录音软件) 电脑自带录音机 现在电脑系统都自带有录音机功能,无需安装,我们直接在开始菜单里面就可…

05_Git命令详解 - CRUD

教程目录 01_版本控制概述 02_Git概述 03_Git下载和安装 04_Git底层原理解析 05_Git命令详解 - CRUD 06_Git命令详解 - 分支 07_Git命令详解 - 后悔药 08_Git远程仓库 Git高层命令 - CRUD 初始化仓库 # 命令 git init 解析:要对现有的某个项目开始用 Git…

java开发中常用的Git命令详解

java开发中常用的Git命令详解(IDEA内如何操作) 一:写这篇文章的目的是什么?二:使用场景在哪里?1:当我们要使用idea去git仓库拉代码时,首先我们的idea得配置git工具2:项目…

Git 常用命令详解

Git 常用命令详解 1. Git 常用命令1.1 常用git 命令图表汇总1.2 配置个人信息1.3 创建版本库1.4 常用Git命令汇总 2. Git 解决代码冲突3. Git 分支管理4. Git 提交代码4.1 Git本地多次提交合并成一次提交4.1.1 多次提交合并需求4.1.2 多次提交合并Git操作步骤 1. Git 常用命令 …

git命令详解( 五 )

此篇只会来介绍rebase和merge的区别 rebase merge 区别 rebase 下面我们进行一个小练习来练习一下rebase 看一下题目要求: 共有三个特性分支 —— side1 side2 和 side3将这三分支按顺序推送到远程仓库因为远程仓库已经被更新过了,所以我们还要把那些工作…

git add 命令详解

1. 前言 2. git add 基本操作 3. git add 命令参数 4. git add 背后做了什么 1. 前言 众所周知,git 中有工作区、暂存区、版本库三大组成部分 工作区: 电脑中能看到的目录,也就是写代码的地方 暂存区: 英文叫 stage 或 index。一般存放在 .git 目录下…

git命令详解( 四 )

此篇为git命令详解的第四篇,话不多说,我们直接上知识点好吧 git Push 偏离的工作 gitPush: 此命令负责将你的变更上传到指定的远程仓库,并在远程仓库上合并你的新提交记录。一旦 git push 完成, 你的朋友们就可以从这个远程仓库下载你分享的成…

常用git命令详解

常用git命令 前言: 原链接:生哥哥牛逼(破音) 不争气的生哥哥链接404了,害得我要重新整理 一、概念: 1.基本概念 工作区:就是你在电脑里能看到的目录。 暂存区:英文叫 stage 或 index。一般存放在 .gi…

【Git】常用命令详解(循序渐进,逐步分析)

目录 一、Git常用命令 1.1、设置用户签名 1.2、初始化本地库 1.3查看本地库状态 1.3、添加文件到暂存区 1.4、将暂存区文件添加文件到本地库 1.5、查看历史版本(提交历史记录) 1.6、修改文件 1.7、版本穿梭 一、Git常用命令 1.1、设置用户签名…

windows大多数的弹窗提示内容是可以复制的(我们主要用于报错内容复制粘贴去百度)

现在以记事本保存时候的弹窗为例,用鼠标点击弹窗的任意位置,然后CtrlC,然后在新的记事本中可以粘贴这个提示内容了。如下图粘贴效果 1.大多数弹窗适用 2.主要用于把“报错内容”复制粘贴去百度 找解决方案

vscode 编辑特效 文字爆炸效果插件

1、在vscode应用扩展商店下载Power Mode插件 2、在vscode最左下角打开设置 在搜索框输入settings.json {"files.autoSave": "off","workbench.colorTheme": "Visual Studio Light","[json]": {"editor.quickSuggestio…

初始C语言——完数问题

问题描述: 描述:一个数如果恰好等于它的因子之和(除本身以外),这个数就成为“完数”。例:6的因子为1,2,3,而6123,因此6是完数。找出1000以内的所有完数。 代…

C语言_求完数

2020年9月5日 11:11:31 /*一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如 61+2+3, 编程找出 1000 以内的所有完数。 */ 两种方法: 方法一的年代比较久远,而且算法思维比较复杂和抽象&#x…

1000以内完数c语言程序_C语言完数编程题目详解

首先看一下完数的概念:完数,即完美数,一个数如果恰好等于除它本身外的因子之和,这个数就称为完数。例如61+2+3.(6的因子是1,2,3) 题目概要:请写一个C语言程序,要求输入一个数字n输出…