리눅스에서 명령줄로 스크린캐스트하는 방법

스크린캐스팅(데스크탑 비디오 녹화)에 관해서는 대부분의 사람들이 적절한 사용자 인터페이스가 있는 데스크탑 소프트웨어를 생각할 것입니다. 리눅스에서는 Kazam과 Screentoaster와 같은 여러 도구를 다루었습니다. 많은 사람들이 모르는 것은 FFMPEG를 통해 명령줄에서도 스크린캐스트를 할 수 있다는 것입니다. 이는 데스크탑 비디오를 녹화할 수 있는 간단하고(매우 긴) 구성 가능한 명령입니다.

FFMPEG 설치하기

FFMPEG는 대부분의 배포판의 저장소에서 사용할 수 있습니다. 아래 명령어로 설치하세요:

우분투

sudo apt-get install ffmpeg

페도라

sudo yum install ffmpeg

오픈수세

sudo zypper install ffmpeg

아치 리눅스

sudo pacman -S ffmpeg

배포판의 저장소에서 찾을 수 없나요? ffmpeg.org에서 직접 다운로드하여 설치해야 할 수도 있습니다.

명령어 사용자 정의하기

스크린캐스팅을 하기 전에 명령어를 사용자 요구에 맞게 조정해야 합니다. 아래 명령어는 해상도가 지정되어 있지 않으며, 30 FPS로 스크린캐스트를 하고 .MKV 형식으로 파일을 출력합니다.

ffmpeg -f alsa -ac 2 -i pulse -f x11grab -r 30 -s YxZ -i :0.0 -acodec pcm_s16le -vcodec libx264 -preset ultrafast -crf 0 -threads 0 output.mkv

화면의 기본 해상도를 찾아 YxZ를 해당 값으로 바꾸세요(예: 1920×1080). 초당 30프레임만으로는 만족하지 않나요? -r 30을 원하는 FPS로 변경하세요.

스크린캐스팅

스크린캐스팅은 위의 명령어(당신에게 맞게 수정한)를 터미널에 붙여넣는 것만큼 간단합니다. 명령어가 실행되는 동안 FFMPEG가 무엇을 하고 있는지 정확히 알 수 있습니다. 아래 이미지와 유사한 것을 볼 수 있습니다.

ffmpeg-screencasting-frame-counter

그게 전부입니다. 그 긴 명령어로 스크린캐스팅을 하고 있습니다. 캡처를 중지하고 싶나요? “q” 키를 누르거나 터미널 창을 완전히 닫으세요. 방금 완료된 녹화에 대한 정보가 출력됩니다. 이 정보는 과정 중에 발생한 모든 것을 알려주기 때문에 유용합니다.

video: 3245kB audio: 6451kB subtitle: 0kB other streams: 0kB global headers: 0kB muxing overhead: 1.933424%  
[libx264 @ 0xc35d40] frame I: 4     Avg QP: 0.00  size: 311776  
[libx264 @ 0xc35d40] frame P: 985   Avg QP: 0.00  size:  2107  
[libx264 @ 0xc35d40] mb I  I16..4: 100.0% 0.0% 0.0%  
[libx264 @ 0xc35d40] mb P  I16..4: 30.5% 0.0% 0.0%  P16..4:  0.0% 0.0% 0.0% 0.0% 0.0%    skip: 69.5%  
[libx264 @ 0xc35d40] coded y,u,v intra: 0.6% 0.1% 0.1% inter: 0.0% 0.0% 0.0%  
[libx264 @ 0xc35d40] i16 v,h,dc,p: 99% 1% 0% 0%  
[libx264 @ 0xc35d40] kb/s: 806.15

FFMPEG 오디오 입력 전환하기

모든 애플리케이션과 마찬가지로 FFMPEG는 Pulse Audio를 사용합니다. 이는 조작이 가능하다는 것을 의미합니다. 기본적으로 모든 애플리케이션은 기본 사운드 장치를 통해 사운드 입력을 받습니다. 컴퓨터에 마이크가 있거나(또는 연결된 경우) FFMPEG는 자동으로 그로부터 사운드를 녹음하고 스크린캐스트에 추가합니다. 원하지 않는 경우 변경할 수 있습니다.

Pulse Audio 볼륨 컨트롤을 설치하세요. 이는 매우 인기 있는 도구이며 대부분의 인기 있는 배포판 저장소에 있습니다. 우분투(또는 우분투 기반 배포판)에서는 아래 명령어로 설치할 수 있습니다:

sudo apt-get install pavucontrol

다른 배포판에서는 패키지 관리에서 “pavucontrol”을 검색하여 설치하면 됩니다. 설치가 완료되면 FFMPEG 스크린캐스트를 시작하고 “Pulse Audio Volume Control”을 엽니다. 도구 내에서 녹음 탭을 클릭하세요.

screencast-ffmpeg-pulse-audio-volume-control-record-tab

녹음 탭에서 내장 오디오 아날로그 스테레오 버튼을 클릭하세요. 그러면 선택 메뉴가 나타납니다.

screencast-ffmpeg-pulse-audio-volume-control-switch-input1

메뉴에서 내장 오디오 아날로그 스테레오의 모니터를 선택하세요. 이렇게 하면 FFMPEG가 컴퓨터의 마이크 대신 시스템 사운드를 녹음하게 됩니다. 이 트릭은 게임 플레이를 녹화하거나 오디오가 필요한 모든 것을 녹화하려는 경우에 유용합니다.

결론

FFMPEG는 많은 일을 할 수 있는 놀라운 도구입니다. 스크린캐스팅은 그 능력 중 하나일 뿐입니다. 고품질 영상을 캡처하면서 뛰어난 성능을 제공하는 몇 가지 대안이 있습니다. 명령줄은 훌륭합니다. 원하는 만큼 정확하게 지정할 수 있기 때문입니다. 원하는 것을 명시하고 눈앞에 나타나는 것을 볼 수 있습니다.