조회 수 226 추천 수 0 댓글 5
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

HEVC(AMF)로 HD, FHD 인코딩 파일사이즈 같은 이유가 뭘지요 ?

 

AMD 그래픽카드로 (Radeon 시절 구입) HEVC(AMF) 로 인코딩 하면서..

한번은 HD로, 한번은 FHD로 사이즈를 변경해서..  

인코딩 했는데..  파일사이즈가 99.9% 동일하게 나옵니다. 

너무나 신기한 경험인데..  왜 이런 결과가 나오나요 ?

 

사실, 옵션에 있는 "HDR을 SDR로 톤 맵핑" 이것도 선택 유무와 상관없이 파일사이즈가 같네요..

비트레이트를 2000Kbps 로 셋팅했는데..  여기에 답이 있는건지..
 

폰에 넣을거라서 구지 FHD는 필요없고 HD 사이즈가 적당해서 HD로만 했는데..

hevc 가 고해상도 영상에 적합하다고 하여 FHD로 만들어 봤는데.. 같은 사이즈라니 ㅡㅡ

 

같은 사이즈니 FHD 로 만들겠지만.. 

기왕이면 HD 로 사이즈를 더 줄이고자 하는데...

파일사이즈를 더 줄이는 방법 조언해 주시면 적용해 가며 익혀 보겠습니다.

감사합니다. 

 

 

HD.JPG

FHD.JPG

 

TAG •
Facebook Twitter Pinterest Kakao
  • ?
    앗싸라비얌 2024.12.02 09:59

    자문자답이긴 한데...  

    기본정보 몇번 더 읽고 이것저것 테스트를 거치다 보니..  일부는 스스로 답을 찾게 되었다. 

    "영상사이즈는 비트레이트와 직접적 관련이 있다"

    3시간 짜리는 2000Kbps 로 하면, 보통 3기가 되던데 계산해 보니 거의 비트레이트에 80~90% 관련되어 있을것 같은 초보자의 생각...

    3시간 영상 : 3시간*60분*60초*2000kbit / 8bit / 1024MB / 1024GB  --> 2.57GB

      - 여기에 음성데이터가 추가되면 보통 3기가 정도됨. 물론 느낌적 느낌...

     

    지금까지 깨달온것을 정리해 보면..

    - 영상화질의 핵심은 인코더 (제 경우, HEVC 면 좋겠지만 HEVC(AMF) )

      . cpu 인코딩으로 하니 시간이 3배 조금더 들더라구요

    - 인코딩시 해상도는 용량과는 상관 없지만 인코딩 시간이 오래 걸림

    - 영상용량의 핵심은 비트레이트

     

    ** 이상은 HEVC 인코딩만 며칠 해본 초보자의 시행착오를 통해 알게된 소중한 개념입니다. 

    ** 잘못된 부분 있으면 지나치지 마시고 꼭 알려주고 가세요..  그냥 가시지 마시구요

     

  • ?
    초록물고기 2024.12.02 10:41

    비트레이트모드로 인코딩을 하시게 되면 초당 해당 비트레이트에 맞춰 인코딩을 하게 됩니다. 비트레이트라는것 자체가 초당 몇비트의 데이터를 사용하는가에 대한 정의이기 때문입니다.

    그래서 해상도가 달라져도 비트레이트를 같게 하면 어쩔 수 없이 용량이 같아지는 겁니다.

    마치 목표를 정해놓고 거기에 무조건 맞추는 방식이라고 이해하시면될것 같습니다.

    하지만 현재의 동영상 압축기술은 움직임이 얼마나 많은가, 화면이 얼마나 단순한가에 따라 압축율이 굉장히 가변적인데, 타겟 용량을 정해놓고 인코딩을 하면 실제 영상의 복잡도등에 관계없이 항상 같은 용량을 사용하게 되니, 어떤 화면은 깨끗하게, 또 어떤 화면은 조금 무너진 상태로 인코딩이 될 수 도 있습니다.(비트레이트를 낮춰보시면 바로 확인됩니다)

     

    그래서 저는 Quality모드로 인코딩을 합니다. Q값을 얼마나 적게 주느냐에 따라 용량이 가변됩니다. (영상 품질에 타겟을 맞추고 비트레이트를 가변하는 방식입니다.)  여러가지 Q값으로 테스트 인코딩을 해보시고, 본인에게 맞는 Q값을 정하시면 될겁니다. 그러면 단지 해상도 뿐만 아니라 영상의 복잡도에 따라서 용량이 크게 가변되는 것을 알 수 있으실 겁니다.

    제가 테스트해보니 Q값이 높아지면, 어두운화면에서 먼저 화면이 깨지기 시작하더군요. 그래서 어두운 화면 위주로 원하는 Q값을 찾는 작업을 했던 기억이 있습니다. 

  • ?
    앗싸라비얌 2024.12.02 18:21
    안녕하세요..  그냥 지나치지 않으시고 소중한 댓글 주셔서 너무나 감사드립니다. 
    방금전까지..  HD 사이즈로 맞추려니 비트레이트 2000kbps 는 너무과하다는 생각에 HD, 1500kbps 프리셋 만들어서 돌리기 직전이었는데..  
    퀄리티 모드로 좀더 테스트 해보고 궁극의 작업을 해야겠네요..
    혹시나, "비디오 비트레이트를 파일 크기에 따라 자동 설정" 해보셨나요 ? 

    자동설정 기준을 모르니.. 유용한 기능인지 테스트 해보면 알긴 하겠지만..

    뭔가..  자동으로 맞춰주면 좋겠다는 생각이 있네요..



    아.. 그리고..  퀄리티 말씀 하신 부분중에 궁금한 부분이 있습니다. 

    퀄리티 적정한 수치를 찾는 과정을 통해 목적에 맞는 퀄리티를 찾았다고 했을때

    그 퀄리티 수치가 원본의 좋고, 나쁨과는 상관없이 일정한 결과물을 나오게 하지는 않을것 같은데요...  퀄리티를 찾는 과정은 해상도에 따른 비트레이트 일정수준(예를 들어, HD기준, 1500kbps)을 찾아서 나오게 되는 결과물과 유사한 수준의 결과물을 찾게 되는 것 아닌지 문의 드립니다. 

    글로 하기가 쉽지가 않은데...

    퀄리티 숫자를 찾아가는 결과, 비트레이트를 찾아가는 결과가 동일한 것이 아닌지에 대한 문의입니다. 

    퀄리티를 찾아가는 결과가 비트레이트를 찾아가는 결과보다 나은점이 어떤 점인지가 궁금합니다. 

    감사합니다.
  • ?
    초록물고기 2024.12.03 15:45
    자동설정은 사용해 보지 않아서 잘 모르겠습니다. 그리고, 저도 비디오 인코딩의 정확한 원리를 이해하고 사용하는것은 아닌지라....

    일단 퀄리티 모드로 인코딩은 일정수준(Q값)의 data loss를 발생시켜 인코딩하는게 아닐까 싶습니다. 원본대비 어느정도 픽셀을 뭉갤지에 대한 값이 아닐까요? 저는 그렇게 이해하고 있습니다.
    그래서 원본대비해서 출력물의 용량이 결정된다고 생각하고 있습니다.
    Q값이 동일하다고 해서 항상 출력물의 품질이 일정하지는 않은 것이지요.
    제가 테스트해본결과로는 밝은 화면의 애니메이션 같은 경우 Q를 굉장히 높게 가져가도 자세히 보지 않으면 화면 깨짐이 거의 느껴지지 않는데, 화면이 어둑어둑한 외국드라마 같은 경우에는 Q값을 조금만 올려도 어두운 화면에 등고선 같은 선이 발생되더군요. 그래서 애니메이션이나 국내 예능같이 밝은 화면은 Q값을 조금 크게 주고, 해외 드라마나 영화는 Q값을 조금 작게 주고 있습니다.
    결국 이런것도 본인이 영상을 이것저것 가지고 테스트해보면서 본인에게 맞는 값을 찾아야 됩니다.
    저 같은 경우,
    처음에는 (구간설정으로) 10초에서 20초정도 어두운 화면, 또는 움직임이 많은 화면으로 여러가지 Q값으로 인코딩을 해봐서 화질을 어느정도로 유지할지 결정하고, 한개 파일을 인코딩해봐서 전체 용량이 적절한지 확인하는 과정을 거쳐 Q값을 찾는 과정을 겪었습니다. 이런게 좀 쌓이면 이제 대충 원본 화면 보면 Q값을 얼마나 줘야 될지 감이 오더군요.
    그리고 제가 3~4년 전에 AMF로 인코딩을 해보니 CPU로 인코딩하는것에 비해 시간은 빨라지지만, 화질이 떨어짐을 느꼈습니다. 예전 칩셋이라 그럴 수도 있으나 실제로 차이가 있을 수 있으니 확인이 필요합니다.
    또한 어두운화면의 경우 등고선 같은게 금방 나타나서 Q값을 낮출 수 밖에 없었는데요, 10bit인코딩을 해보니 높은 Q에서도 꾀나 많이 개선되는 것을 느껴 요즘은 계속 10bit인코딩을 하고 있습니다.
  • ?
    앗싸라비얌 2024.12.03 21:30
    아~ 많은 정보가 담긴 유용한 글 보내 주셔서 감사합니다. 



    비트레이트 자동설정 기능 사용해 봤는데..

    원하는 용량보다 크게 만드는 것 같아서 사용하지 않기로 했습니다. 



    제가 몇개 테스트 한 결과는 ..

    그래픽 카드로 인코딩 하는게 CPU 인코딩 보다 속도가 1/3 정도여서... 

    화질에 크게 신경 안쓰고 용량 줄이는게 목적이라 CPU 인코딩은 다시는 하지 않기로 마음 먹었습니다 ^^



    저도 비트레이트 조정보다 퀄리티 모드로 하기로 했습니다. 

    제가 하는 주요목적은 여러개의 파일을 동일한 프리셋으로 배치 작업 돌리는 것인데, 

    퀄리티 모드가 원본에 따라 적정하게 용량을 만들어 주는 것 같았습니다. 

    예를들어, 동일한 프리셋이라도 원본화질 좋은건 높은 용량으로 원본화질 낮은건 낮은 용량으로 만들어 주더라구요...

    제 목적의 인코딩에 있어 이런게 자동적으로 적용되는 느낌이어서 덕분에 퀄리티 모드로 사용하고 있습니다. 퀄리티는 권장사항중 가장 낮은 28로 사용하고 있구요...



    덕분에 많이 배우고, 적용도 해보게 되었습니다. 

    감사합니다.   꾸벅