Computer >> 컴퓨터 >  >> 소프트웨어 >> 소프트웨어

glc – 리눅스용 FRAPS 대안, 게임 화면 녹화 완벽 가이드

FRAPS에 대해 잘 모르시는 분들을 위해 간단히 설명하자면, FRAPS는 데스크톱에서 실행되는 응용 프로그램, 특히 게임의 영상을 녹화할 수 있는 Windows 전용 프로그램입니다. 실제로 저도 Live for Speed를 플레이하면서 FRAPS로 멋진 영상 몇 개를 캡처한 적이 있습니다. 데스크톱 활동을 녹화하는 기능은 교육용, 튜토리얼 제작용, 그리고 때로는 자랑거리 만들기 등 다양한 용도로 활용될 수 있습니다. 어떤 경우에는 동영상 시연 외에는 대안이 없을 때도 있죠.

게임 녹화가 어려운 이유

문제될 것이 없습니다. Wink나 recordMyDesktop 같은 도구들이 이미 존재하고, 제가 이전에 리뷰한 바 있습니다. PCLinuxOS 2009 기사에서 소개한 Istanbul이라는 프로그램도 있습니다. 하지만 이런 프로그램들은 순수한 데스크톱 작업 녹화에는 충분하지만, 게임 녹화에는 적합하지 않습니다. 이들 도구는 X Windows를 사용하는 반면, 대부분의 게임은 그래픽 카드의 하드웨어 가속을 활용하기 때문에 실제 그래픽 렌더링이 화면에 픽셀이 표시되기 전에 이루어집니다. 따라서 게임과 OpenGL 프로그램의 영상을 캡처하려면 다른 방식의 도구가 필요합니다.

그 해결책이 바로 glc입니다. glc는 리눅스용 FRAPS와 유사한 소프트웨어로, 영상과 오디오를 캡처하고 재생하며 인코딩할 수 있습니다. 이제 직접 시연해 보겠습니다. 멋진 게임 몇 가지를 통해 살펴볼 텐데요, 강렬한 슈팅 액션과 빠른 드라이밍만큼 개념을 확실히 보여줄 수 있는 것은 없습니다. 또한 Wine과 Windows 응용 프로그램에 대해서도 다룰 예정입니다. World of Warcraft나 다른 Wine 기반 게임에서 glc가 작동하는지 궁금하시다면, 답은 '예'입니다. 아래로 스크롤하시면 스크린샷이 가득합니다!

glc – 리눅스용 FRAPS 대안, 게임 화면 녹화 완벽 가이드

glc 설치하기

glc는 공식 배포판 저장소에서 설치하거나, 공식 웹사이트에서 빌드 스크립트를 내려받아 직접 컴파일할 수 있습니다. 후자의 방법으로 진행했을 때 어려움을 겪었기 때문에, 저장소 버전 사용을 권장합니다. 자세한 내용은 아래 '문제점' 섹션을 참고하세요.

glc 사용법

프로그램을 설치하면 glc-captureglc-play, 두 가지 유틸리티를 사용할 수 있습니다. 두 도구 모두 몇 가지 옵션을 갖춘 명령줄 유틸리티입니다. glc 사용법을 익히는 데 약간의 시간이 필요하지만, 그리 어렵지 않습니다.

가장 기본적인 사용법은 다음과 같습니다:

glc-capture <실행 파일>

그다음 게임 내에서 단축키로 녹화를 시작/중지할 수 있습니다. 기본 단축키는 Shift + F8입니다. 즉시 녹화 시작(-s), 출력 파일명과 경로 변경(-o), 초당 프레임 제한, 압축률 조정, 심지어 오디오 비활성화 등 다양한 매개변수도 설정할 수 있습니다.

예를 들어:

glc-capture -s --disable-audio <실행 파일>

이렇게 하면 응용 프로그램이 시작되는 순간부터 영상만 녹화됩니다. 이론은 여기까지 하고, 실제 예제를 살펴보겠습니다.

아름답고 매력적인 1인칭 슈팅 게임인 Enemy Territory Quake Wars로 테스트했습니다. 게임을 실행하고 녹화를 시작했습니다. 놀랍게도 게임 속도 저하는 거의 느껴지지 않았고 모든 것이 매우 부드럽게 실행되었습니다. 약 30초 분량의 녹화로 250MB 스트림이 생성되었고, 이후 14MB 크기의 .avi 파일로 인코딩할 수 있었습니다. 그런데 녹화가 제대로 되었는지 어떻게 확인할까요? 바로 glc-play를 사용하면 됩니다.

재생하기

glc-play를 사용하여 프로그램 내부나 게임 중에 녹화한 영상을 확인할 수 있습니다.

glc-play <녹화 파일 - .glc 확장자>

glc-play는 자체 미디어 플레이어 형태의 창에서 파일을 스트리밍합니다. 이후 glc-play와 추가 소프트웨어를 사용해 모두가 감상할 수 있는 영상으로 만들 수 있습니다. 그 전에 멋진 스크린샷 하나 보여드리죠:

Lucid 창 테마에 혼란스러워하지 마세요. 이 시연은 RD510 노트북에 연결된 외장 2.5인치 5400rpm USB 디스크에서 구동되는 32비트 Karmic에서 진행되었습니다. 해당 노트북에는 평소 Ubuntu 10.04 Lucid Lynx 두 개, Jaunty 한 개, openSUSE 11.2 Gnome 한 개가 설치되어 있으며, 목표는 10개 부팅 시스템입니다. 참고로 그래픽 카드는 512MB RAM Nvidia 9600GS입니다.

참고: 새로운 테마와 구버전 우분투에서 이를 사용하는 방법이 궁금하시다면 관련 블로그를 참조하시고, 새 테마에 대한 더 많은 이야기를 원하신다면 'Color of stability' 기사를 읽어보시길 권합니다.

인코딩하기

이제 정말 재미있는 부분입니다. 작업 결과물로 멋진 영상을 만들어 보겠습니다! 인코딩의 모든 세부 사항을 다루는 것은 이 글의 범위를 벗어나지만, 시작하는 데 도움이 될 몇 가지 핵심 팁을 소개하겠습니다.

glc는 mencoderlame 유틸리티와 함께 작동하므로, 먼저 이들을 다운로드하여 설치해야 합니다. 두 도구 모두 대부분의 배포판 저장소에서 구할 수 있는 인기 있는 프로그램입니다. 설치 후 인코딩을 진행할 수 있습니다. 기본적으로 glc-play로 파일을 스트리밍한 뒤 이를 파이프(|)로 mencoder에 전달하여 패키징하는 방식입니다. 다소 생소하게 들리지만 생각보다 어렵지 않습니다.

첫째, 공식 웹사이트에 이미 인코딩 셸 스크립트가 준비되어 있으며, 이를 사용하면 스트림에서 MP4 영상을 생성할 수 있습니다. 다만 스크립트에 일부 옵션이 고정되어 있어 반드시 작동한다는 보장은 없습니다.

둘째, 공식 웹사이트의 위키 페이지에 다양한 옵션의 사용 예제가 정리되어 있습니다. 필자도 처음 glc를 사용할 때 이 문서를 성공적으로 참고했습니다.

정답은 없지만, 예제를 하나 소개합니다. 두 단계로 나뉩니다.

glc-play [스트림 파일] -a 1 -o audio.wav

이 명령은 glc-play가 첫 번째 오디오 스트림을 WAV 파일로 추출합니다.

glc-play <스트림 파일> -y 1 -o - | mencoder -demuxer y4m - -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=3000 -audiofile audio.wav -oac mp3lame -o video.avi

그다음 glc-play가 첫 번째 영상 스트림을 재생하며 이를 mencoder로 파이핑합니다. mencoder는 y4m demuxer로 스트림을 해석한 뒤 libavcodec(lavc)을 사용해 MPEG-4 코덱의 .avi 형식 영상으로 패키징합니다. 비트레이트는 비교적 낮은 3Mbps이며, 앞서 생성한 오디오 파일도 mp3lame으로 인코딩되어 출력 영상에 삽입됩니다.

멀티미디어 전문가는 아니지만, 위 설명이 쉽게 이해되기를 바랍니다. 오디오 트랙이 없거나 사용하지 않으려면 명령에서 오디오 관련 부분을 제거하면 됩니다.

mencoder가 열심히 작동하는 모습입니다:

영상이 완성되면 미디어 플레이어를 실행하고 감상하세요:

멋지지 않나요?

Wine에서도 작동합니다!

네, 맞습니다. Wine으로 실행하는 게임도 녹화할 수 있습니다. 최고의 예로 탁월한 드라이빙 시뮬레이터 Live for Speed를 들 수 있습니다. 게임 플레이를 녹화하려면 wine 명령에 대해 glc-capture를 실행하기만 하면 됩니다:

glc-capture <옵션> wine <LFS.exe 경로>

필요에 따라 -s 옵션이나 다른 플래그를 추가할 수 있습니다.

glc-play가 작동하는 스크린샷입니다:

VLC와 Totem 재생 화면:

이 게임의 놀라운 사실감에는 매번 감탄하게 됩니다. Peugeot 106의 과격한 사이드 드리프트 중 타이어가 유연하게 변형되는 모습을 보세요. 정말 환상적입니다.

glc – 리눅스용 FRAPS 대안, 게임 화면 녹화 완벽 가이드

인코딩 화면:

Wine 응용 프로그램 녹화 시 FPS와 영상의 부드러움은 네이티브 프로그램/게임보다 다소 떨어졌는데, 아마도 추가 변환 계층 때문일 것입니다. 그럼에도 충분히 사용할 만한 수준이었습니다.

문제점 및 관찰 사항

glc에는 몇 가지 문제가 있었습니다. 이 도구를 고려하고 사용하실 때 아래 내용을 염두에 두시기 바랍니다.

사운드

몇몇 경우 오디오가 포함된 스트림을 재생하지 못했습니다. glc-play가 ALSA 관련 오류를 냈습니다. 깊이 디버깅하지는 않았지만, 문제가 발생하면 --disable-audio 옵션으로 glc-capture를 실행하는 것을 기억해 두세요.

64비트 호환성 및 빌드 스크립트

glc는 64비트 시스템에서 원활하게 작동하지 않았습니다. 32비트에서는 모든 기능이 기대대로 훌륭하게 작동했습니다. 공식 웹사이트의 지침을 따르고, 수동 심볼릭 링크 생성과 빌드 스크립트 사용도 시도했지만 실패했습니다.

실제로 스크립트는 64비트 운영체제임을 감지하면 종료됩니다. 이후 저장소를 통해 소프트웨어를 설치하는 데는 성공했지만 도구 기능에는 도움이 되지 않았습니다. 녹화 기능이 불안정했습니다. 조만간 개선되기를 바랍니다.

큰 문제는 64비트 프로세서와 추가 RAM의 성능을 온전히 활용할 수 없다는 점입니다. 영상 및 오디오 편집은 64비트 머신에 최적화되어 있는데 말이죠. 32비트 시스템의 PAE 커널이 RAM 한계를 어느 정도 보완해 줄 수 있지만, 대부분의 최신 머신이 오랫동안 64비트 아키텍처를 사용해 왔다는 점을 고려하면 만족스러운 해결책은 아닐 수 있습니다.

32비트 시스템에서 빌드 스크립트로 설치한 glc는 루트 디렉터리에 설치하지 않으면 라이브러리를 찾지 못했습니다. /home, /usr/local 또는 /opt 아래에 배치하려는 모든 시도는 실패로 끝났습니다.

성능

앞서 언급했듯이, glc를 제대로 활용하려면 강력한 머신과 빠른 하드 디스크가 필요합니다. 대부분의 노트북은 고FPS, 고해상도 게임을 원활히 처리하지 못하며 디스크 I/O 병목에 부딪히게 됩니다.

간단한 게임조차 몇 초만 녹화해도 수백 MB의 데이터가 디스크에 쌓이므로 이 점을 유의하세요. 저장 공간이 금방 부족해질 수 있고, 게임 재생이 끊길 수도 있습니다. 별도의 디스크나 외장 디스크를 사용하는 것이 좋은 선택입니다.

엄밀히 말해 문제라기보다는 참고 사항입니다.

사용성

이 도구는 상당히 기술 지향적이며, 길고 다소 혼란스러운 명령어들 때문에 mencoder와 lame 등 영상/오디오 편집에 대한 사전 지식이 필요합니다. 이로 인해 초보 사용자에게는 접근성이 다소 떨어집니다. 인코딩과 포맷 설정 같은 복잡한 옵션을 크고 반짝이는 버튼 아래에 깔끔하게 숨겨둔 GUI 래퍼가 있다면 좋겠습니다.

역시 이것은 필수 요건이라기보다 바람직한 개선 사항입니다.

맺음말

글을 마무리하기 전에 몇 가지 언급할 것이 있습니다.

Nexuiz 리뷰에서 게임 중 영상을 캡처하는 방법을 아직 찾지 못했다고 불평했던 것을 기억하시나요? 자, 여기 답이 있습니다.

마지막으로 Winetricks와 마찬가지로 이 튜토리얼은 리눅스 게이머에게 매우 중요한 정보이므로, 게이밍 섹션에도 링크를 걸어 두겠습니다.

함께 읽으면 좋은 글

다음 글들도 살펴보시길 권합니다:

  • WINK 소프트웨어
  • recordMyDesktop 소프트웨어

결론

여기까지입니다. 게임 내 영상과 시연 자료를 만들기 위한 훌륭한 도구로, 1인칭 슈팅 게임에서의 실력을 자랑하거나 자신이 얼마나 숙련된 드라이버인지 보여줄 수 있게 해줍니다. 중요한 것은, 리눅스 사용자라고 해서 Windows 사용자들보다 영상 캡처에 덜 유리하지 않다는 점입니다.

glc는 정말 훌륭한 도구입니다. 사용이 다소 어렵고 숙련된 사용자에게 더 적합하며, 사운드 문제와 64비트 지원 같은 미해결 문제도 있습니다. 하지만 잘 작동하고 훌륭한 결과물을 만들어냅니다. 다만 빠른 디스크와 넉넉한 RAM을 갖추었는지 확인하세요. 이 글이 도움이 되었기를 바랍니다. 다음에 또 만나요!

감사합니다.