글을 읽기 전 #1 세팅하기 편을 읽고 오는 것을 추천한다.
먼저 알아둬야 할 것은 스카이디지탈 기본 캡쳐 프로그램은 전 포스팅에서 얘기했던 인터레이스 녹화를 지원하긴 한다. 하지만...
유일하게 MPEG2 코덱으로만 인터레이스 녹화가 가능하다. 구세대 코덱답게 용량 대비 화질이 매우 안 좋다는 단점을 가지고 있다. Mainconcept AVC/H.264 코덱을 별도로 설치하면 H264 코덱으로 녹화가 가능하지만 PC 사양이 충분한데도 불구하고 조금만 세팅을 무겁게 하면 녹화물에 프레임 드랍이 생긴다. 구글링을 해보니 같은 사례를 찾아볼 수 있었고 결론적으로 Mainconcept AVC/H.264 코덱 자체의 결함으로 보여진다. 기본 캡쳐 프로그램은 과감히 버리자.
대신에 ffmpeg라는 프로그램으로 녹화를 할 것이다. 다운로드하자.
스크롤을 내려서 release builds로 이동 후 ffmpeg-git-essentials를 클릭한다. 7z와 zip 중에 아무거나 받으면 된다.
ffmpeg를 받았으면 원하는 곳에 압축을 풀고 bin 폴더로 들어가서 Shift+오른쪽 마우스를 클릭 후 여기에 PowerShell 창 열기를 누른다.
$currentTime = Get-Date -Format "yyMMdd_HHmmss"
$savePath = "녹화물이 저장될 원하는 경로"
$filename = Join-Path -Path $savePath -ChildPath "HDMI_$currentTime.ts"
& ".\ffmpeg.exe" -fflags +igndts -rtbufsize 1024M -f dshow -video_size 1920x1080 -framerate 29.97 -pixel_format yuyv422 -i video="사용 중인 캡쳐보드 제품명 (예시:SuperCast X 2k Capture)":audio="사용 중인 캡쳐보드 제품명" -vf "setfield=tff,scale=interl=1,format=yuv420p" -c:v libx264 -preset medium -crf 20 -maxrate 25M -bufsize 25M -c:a aac -b:a 384k -x264opts tff=1 -x264-params keyint=15:bframes=3:b-adapt=1 -max_muxing_queue_size 9999 $filename
그리고 다음과 같은 명령어를 입력하자. x264 옵션을 만질 줄 안다면 원하는 대로 수정해서 써도 된다. $savePath=에는 녹화물이 저장될 원하는 경로를 입력해준다. "사용 중인 캡쳐보드 제품명"에는 자신이 사용 중인 캡쳐보드 모델명을 적는다. 정확한 모델명을 확인하는 방법은 아래 사진을 참고하자. 각각 명령어들이 뭘 의미하는지는 코드 복사 후 챗GPT에게 던져주면 친절히 알려줄 것이다.
팟플레이어에서 Alt+D를 누르면 정확한 장치 이름을 알 수 있다.
명령어 입력 후 맨 밑에 frame=이라는 문구가 뜨면 녹화가 성공적으로 시작된 것이다.
만약 frame= 문구가 안 나오면 녹화가 제대로 안 되고 있는 것이다. 그럴 땐 기본 캡쳐 프로그램을 켰다가 바로 꺼주면 녹화가 시작된다. 이 현상이 왜 일어나는지는 모른다...
참고로 ffmpeg로 녹화할 땐 PC로는 모니터링을 할 수가 없다. 녹화 도중에 영상을 재생할 수 있긴 한데 안정적인 녹화물을 얻으려면 녹화 중엔 아무것도 건들지 않는 게 좋다.
그럼 즐거운 녹화 생활 되시길...
'PC' 카테고리의 다른 글
[#1 세팅하기] 스카이디지탈 캡쳐보드로 IPTV 녹화하기 (0) | 2024.06.09 |
---|---|
yt-dlp로 유튜브 1080p premium 화질 다운로드하기 (0) | 2024.06.08 |