Search Results for '구현'

1 POSTS

  1. 2008.04.10 까멜레오 구현.

까멜레오 구현.

Posted 2008. 4. 10. 17:14
개발자들이면 당연히 어떤 어플리케이션이나 프레임워크를 들여다 볼 때 어떤 기반 기술로 이루어졌는지 궁금해 하실 것입니다. 까멜레오는 100% 오픈소스 라이브러리들만 사용해서 만들었습니다. 까멜레오에서 중요하게 사용되는 컴포넌트는 다음과 같습니다. UI를 비롯해 거의 대부분의 요소를 파이썬 바인딩을 통해 사용하고 있습니다.

GStreamer (with DirectShow plugin)
cairo
librsvg
GTK+
OpenGL

Python
pyglet
PIL(Python Imaging Library)
PkgResources


까멜레오는 비디오 위에 자연스럽게 UI를 보여주기 위해 OpenGL 기반의 3D GUI 툴킷인 GLUX를 만들었습니다. GLUX는 GTK+와 QT처럼 (물론 훨씬 간단합니다) 일반적인 2D UI를 표현할 수 있고, 3D 애니메이션과 반투명(translucent)한 UI를 구현할 수 있게 해주는 파이썬으로 작성된 라이브러리입니다.

또한 비디오 메타데이터를 처리하는 부분이 까멜레오가 GStreamer 등 로우레벨 미디어프레임워크와 차별화하는 부분입니다. 일례로, 간단한 자막 등을 표시하기 위해 자막을 GStreamer 파이프라인(DirectShow의 필터그래프로 유사한 개념)을 통해 흘려보는 방식은 비디오 메타데이터를 처리하는 최선의 방법으로 보기 어렵습니다. 까멜레오는 자막을 비롯한 비디오 태그, 각종 메타데이터를 쉽게 붙이고 처리할 수 있는 프레임워크를 제공합니다.

자막을 단순히 보여주기만 하는 것이 아니라 자막 데이터를 받아서 빈칸을 만들어 받아쓰기 위젯을 만들 수도 있고, 자막을 검색할 수도 있고, 어려운 단어는 자동으로 인터넷 사전을 뒤져서 뜻을 보여주는 등 간단한 메타데이터 하나로도 무궁무진한 어플리케이션을 만들어낼 수 있습니다.