Video Station에서 하드웨어 트랜스코딩을 설정한뒤


안드로이드버전 DS Video 에서 트랜스코딩을 이용하여 영상을 중화질로 재생시 화질이 뭉개지는 경우가 있다.

그렇다고 높음(품질 우선)을 선택하면 트랜스코딩을 하지 않는다.


따라서 중간 수준의 트랜스코딩의 품질을 올리거나 높음 수준에서 bypass 가 아닌 트랜스코딩을 하도록 해야한다.

해당 수정 방법을 기록하겠다.


1. SSH 를 활성화하여 접속한다.


2. 다음 경로로 이동한다.

cd /volume1/@appstore/VideoStation/etc

3. TransProfile_GST 과 TransInfo_GST_HLS을 백업한다.

ex)

cp TransProfile_GST TransProfile_GST_org

cp TransInfo_GST_HLS TransInfo_GST_HLS_org


4. TransInfo_GST_HLS 과 TransInfo_GST_HLS의 내용을 확인한다.


cat TransProfile_GST

cat TransInfo_GST_HLS


TransProfile_GST 내용보기


TransInfo_GST_HLS 내용보기


TransProfile_GST 는 JSON 형식의 파일로 트랜스코딩을 하기 위한 프로파일을 기록한 파일이다.

"mpegts_hd480_h264_vb4500_mp3_ab96": "-f mpegts --width 852 --height 480 --vb 4500000 --acodec mp3",

의 경우 트랜스코딩한 출력물의 해상도가 852x480 이고 vbr 방식으로 4500kbps 로 인코딩하는 옵션이다.


TransInfo_GST_HLS 파일에서 해당 옵션을 사용하는 곳을 찾아보면 

720p 의 high 옵션에서 사용하고 있다.


우리가 필요한 중간 품질의 트랜스코딩에서 품질을 올리기 위해서는 medium 의 옵션을 변경해줘야 하는데

"medium":"mpegts_hd720_h264_vb1000_mp3_ab96" 

이라고 되어있는 부분을

"medium":"mpegts_hd720_h264_vb4500_mp3_ab96"

으로 변경 하였다.


mpegts_hd720_h264_vb1000_mp3_ab96


mpegts_hd720_h264_vb4500_mp3_ab96


bypass


vb1000 에서 vb4500 으로 변경함에 따라 뭉개짐이 줄어드는것을 확인 할 수 있다.


테스트에 파일정보


2개 동시에 트랜스코딩시 CPU 점유율

CPU 가 4코어 이며 프로세스별로 50%, 총 100% 정도 사용중이다.

TOP 명령사용시 표기 방식상 100% 정도면 실제 사용율은 25%이다.

리소스 모니터에서 확인된 CPU 사용율은 30% 정도로 CPU 사용율이 크게 높지 않음을 확인 할 수 있다.


개인적인 용도로 사용하기에는 충분해 보인다.




Posted by 동적할당

댓글을 달아 주세요