본문 바로가기

Papyrus/Dizzy Report

Xiph DirectShow Filters (known as illiminable DirectShow Filter)

Ogg Vorbis 파일 포맷을 디코딩하는 가장 편한 방법은, Ogg Vorbis DirectShow Filter를 설치하는 것이다. 간단히 이것을 설치하는 것만으로도 DirectShow 기반 플레이어들은 모두 Ogg Vorbis 파일 포맷을 디코딩할 수 있게 되며, 메모리도 절약할 수 있게 된다. 사실 완전한 동작을 보장하는 정적 링크 방식이 효율적일 때가 있지만, 일반적으로 별 문제가 없다면 동적 링크 방식이 훨씬 더 세련되고, 메모리를 절약할 수 있는 방법이다. 물론, 언제나 그런 것은 아니지만. 곰 플레이어 같은 경우는 이런 번거롭고 복잡한 컴포넌트 설치를 사용자들이 부담스러워 한다는 점을 잘 파고 들었다고 할 수 있다.

여튼, 널리 쓰여지는 Tobias의 Ogg Vorbis DirectShow Filter는, 아무리 해도 공식적인 배포처를 찾지 못하겠다. 또, Tobias의 구현보다 RadLight의 구현이 더 낫다는 평이 있는데, RadLight는 이제 플레이어만 배포할 뿐 더이상 Free Ogg Vorbis DirectShow Filter는 배포하지 않는 듯 하다. 그리고, 예전부터 사용하던 Xiph.Org의 Vorbis DirectShow Filter는 파일명이 일반적인 아스키 코드로 되어 있지 않을 경우, 그대로 죽어버리는 치명적인 문제가 있었다. 음질 문제나 메모리 누수 같은 문제는 사실 체감하기 어렵다고 하더라도, 파일명에 제한적인 문자만 사용될 수 있다는 점은 심각한 문제였다. 그럼에도 불구하고 배포처가 명확하지 않은 바이너리는 MD5 서명이라도 되어 있지 않은 이상 선호하지 않는 편이라 Xiph.Org의 illiminable DirectShow Filter를 사용해왔는데..

그런데, 0.81 버전에 들어오면서 이런 문제가 개선되었고, Ogg 파일에 아이콘조차 표시하지 않았던 기존 버전에 비해 훨씬 많은 부분이 개선되었다. 특히, 이 프로젝트는 Xiph.Org가 제공하는 모든 코덱들을 완전한 구현물로서 제공하는 것으로 확대되었다. 즉, Ogg 파일은 MP3와 같이 오디오 압축 포맷만을 의미하는 것이 아니라, 미디어 컨테이너 형식 파일이다. Ogg Vorbis와 Ogg Theora가 가장 유명할 것이다.

과거 illiminable Ogg Vorbis DirectShow Filter라고 알려졌던 이 구현은, 이제 세련된 모습으로 다시 포장되어 배포되고 있다. 믿을만한 Ogg Vorbis DirectShow Filter를 찾고 있다면 이것을 사용하면 좋을 것이다. 특히, libavcodec에서 theora를 제대로 재생하지 못하는 문제가 있는 것 같은데, ffdshow와 같이 이 라이브러리를 이용하는 프로그램들이 간혹 제대로 Theora 동영상을 재생하지 못하는 경우가 있다. 그런 경우, 이 Xiph DirectShow Filter를 설치하면 꽤 많은 Theora 동영상들을 정상적으로 재생할 수 있다. 홈페이지는 다음 링크를 참조하도록.

http://xiph.org/dshow/


그리고, 티스토리에서 오디오를 재생할 수 있는 플러그인에 Ogg Vorbis 지원도 추가했으면 좋겠다. 오디오 CD를 사면 보통 Ogg Vorbis 포맷으로 인코딩하는데, Ogg Vorbis 포맷을 재생할 수 있는 플러그인은 아직 없는 것 같다.