마음 속 하늘은 항상 맑음~!

OBS에서 VCE 하드웨어 인코딩 사용. 본문

기타

OBS에서 VCE 하드웨어 인코딩 사용.

파르셀수스 2016. 9. 10. 22:20

 xsplit보다 약간 더 프레임이 낮지만 그래도 ffsplit보다 빠른 캡춰툴이고 게다가 오픈소스인 OBS를 이용해서 간단히 VCE 하드웨어 인코딩을 사용하는 방법을 설명.


 일단 기본 OBS는 NVENC나 QuickSync만을 지원한다. 인텔 내장 그래픽도 하스웰 이상이라면 들어가 있는 것으로 이용할 수 있다.

 하지만 AMD의 VCE는 분명히 기능이 있음에도 지원하지 않는다. 그래서 생겨난 것이 OBS VCE 브랜치.

 0.15.4에서는 AMF라는 명칭으로 지원.


https://obsproject.com/forum/threads/obs-branch-with-amd-vce-support.13996/


32비트 : https://dl.dropboxusercontent.com/u/235773/obsvce_2016-06-12_2_32bit.7z

64비트 : https://dl.dropboxusercontent.com/u/235773/obsvce_2016-06-12_2_64bit.7z


그냥 사용할 수 있는 것이 아니고 약간의 설정이 필요한데,

1. 설정의 인코딩 탭에서 x264대신 VCE를 선택하고, "OpenCL to NV12"의 체크를 없앤다.

2. "Use Custom settings"를 체크하면, 성능/균형/화질의 셋 중에 하나를 고를 수 있다.

3. IDR은 프레임 수의 2배를 입력한다. 30프레임이라면 60을 입력. 0으로 하면 자동으로 설정해준다. GOP는 프레임 수에 대한 배수가 설정되고 15/30/60 등으로 사용할 수 있는데, 높을수록 GPU를 많이 사용한다. 그냥 기본을 사용해도 된다.

4. 그리고 모든 하드웨어 인코딩을 이용한 스트림의 대역폭은 x264에 200~500kbits를 더한 값을 설정한다. 그냥 500을 더한 값을 사용하면 된다. 3000의 대역폭으로 x264에서 송출했다면, 하드웨어 인코딩 사용시에는 3500대역폭으로 설정하면 된다.


obsvce_2016-06-12_2_64bit.7zobsvce_2016-06-12_2_32bit.7z

※ 하드웨어 스펙에 따른 인코딩 가능 범위는

GCN1/2 : Quality에서 720p 60fps/1080p 30fps 가능, 1080p 60fps는 Balanced나 Speed설정을 사용해야함.

GCN3 : 4k 30fps가능, 1080p 60fps는 Quality 설정에서도 충분히 가능. (테스트되지 않음)

GCN4 : 4k 60fps가능. (테스트되지 않음)


 단점이 있다면 OBS VCE는 OBS Studio의 화면 전환등의 기능이 손쉽게 구성이 어려움. 약간 구성이 불편한데 장면 리스트를 설정에 만들어 넣으면 자동으로 순서대로 인식해서 띄울 수 있는 것을 이용할 수 있음.


(추가) VCE 빌드보다는 0.15.4의 AMF 라이브러리를 이용하는 것이 더 안정. VCE빌드는 가끔 레코딩이 망가지는 구간이 발생하는 듯. 아마 어플에 따라 다르겠지만, 현상이 있다는건 아마 VCE 빌드의 버그일지도.


'기타' 카테고리의 다른 글

OBS + AMD AMF.  (0) 2016.10.18
마인크래프트 1.9.4 OptiFine 인스톨 하기.  (0) 2016.09.21
livestreamer 파라미터 조정.  (0) 2016.08.20
웹 온라인 스트리밍을 플레이어에서 보는 livestreamer  (0) 2016.08.18
libreelec 0813  (0) 2016.08.15