Search Results for '미디어 플레이어'

3 POSTS

  1. 2008.04.10 까멜레오 오픈소스 준비. 8
  2. 2008.02.01 GStreamer 윈도 지원. 2
  3. 2007.06.14 까멜레오 프로젝트 12

까멜레오 오픈소스 준비.

Posted 2008. 4. 10. 15:51
제가 일하는 노매드커넥션에서 1년간 준비해오던 까멜레오 프로젝트를 이번주에 오픈소스로 릴리즈하기 위해 지금 열심히 다듬고 있는 중입니다. 원래 계획은 이번주 금요일인데, 지금 문서화 작업 정도에 따라서 토요일이나 일요일 정도로 연기될 수도 있을 것 같습니다.

블로그를 통해 몇 번 소개드린 적이 있는데 까멜레오는 미디어 어플리케이션을 쉽게 만들 수 있는 미디어 프레임워크입니다. 물론 일반 사용자에게는 까멜레오 미디어 플레이어를 제공하기도 하지만, 오픈 소스 까멜레오는 미디어 플레이어 보다는 프레임워크에 가깝습니다.

오픈소스 까멜레오의 모토는 "Your Custom Player"입니다. 까멜레오는 단순히 미디어 재생을 넘어서 멀티미디어를 활용한 다양한 어플리케이션을 쉽게 만들 수 있게 프레임워크를 제공합니다. 까멜레오는 여러가지 방식으로 개인화할 수 있는 데 현재 크게는 1) 위젯과 2) 채널을 통해서 나만의 미디어 플레이어를 만들 수 있도록 하고 있습니다.

사용자 삽입 이미지

위 스냅샷은 위젯들을 고를 수 있는 화면입니다. 비디오 위젯은 동영상을 보면서 즐길 수 있는 간단한 어플리케이션으로 생각하시면 됩니다. 까멜레오는 일반 개발자들이 이런 동영상 위젯을 쉽게 작성할 수 있는 플랫폼 역할을 한다고 생각하시면 됩니다.

예를 들어 다음 스냅샷처럼 돋보기 위젯은 화면의 일부 영역을 확대할 수 있습니다. 미디어 플레이어에 일부 장면을 확대하는 기능을 집어 넣기 위해 미디어 플레이어를 전부 다 만들 수는 없는 노릇입니다. 까멜레오를 활용하면 기본 인프라는 그대로 활용하고 내가 원하는 기능만 플러그인 형태로 쉽게 끼워넣을 수 있습니다.

사용자 삽입 이미지


채널은 미디어 콘텐트를 다운로드 혹은 재생할 수 있는 유통 경로를 말합니다. 주스트(Joost), 바벨검(Babelgum), 미로(Miro) 등 요즘 미디어 플레이어는 전통적인 동영상 재생 기능과 콘텐트 다운로드 기능을 합친 것이 특징입니다. 까멜레오는 채널 개념을 만들고 개발자들이 자신이 보고 싶은 채널(P2P, UCC 등)을 쉽게 추가할 수 있게 하는 것이 특징입니다.어차피 동영상 재생 기능 및 기본적인 기능은 똑같은데 채널 하나 추가하려고 새로운 미디어 플레이어를 만들어내는 수고를 줄이는 것이 목적입니다.

사용자 삽입 이미지


까멜레오를 확장하는 구체적인 방법이나 API는 오픈소스와 더불어 공개할 예정입니다. 지금 열심히 문서 작업 중에 있으니 나만의 미디어 플레이어를 만들어서 친구들에게 배포하고 싶으신 분들은 관심 가지고 지켜봐주시면 좋을 듯 합니다.


GStreamer 윈도 지원.

Posted 2008. 2. 1. 02:42
GStreamer는 리눅스에서 많이 사용하고 있는 멀티미디어 프레임워크입니다. 윈도의 DirectShow와 같은 역할을 한다고 보시면 됩니다. DirectShow와 마찬가지로 플러그인 기반으로 되어 있어 다양한 코덱을 외부 개발자가 쉽게 끼워 넣을 수 있는 구조로 되어 있습니다.

까멜레오는 교차 플랫폼을 지향하며 야심차게 GStreamer를 사용하고 있습니다. GStreamer 기반의 몇 가지 영상 분석 플러그인도 개발 중에 있고요. 복수의 멀티미디어 프레임워크를 사용하는 데서 오는 복잡함을 줄이기 위해 윈도에서도 DirectShow 사용 없이 GStreamer만으로 모든 영상을 재생할 수 있게 하는 것이 목표입니다.

하지만 아직까지 GStreamer를 윈도에서 사용한 비디오 플레이어는 전 세계적으로 하나도 없습니다. GStreamer 개발팀 자체는 대부분 리눅스에 적을 두고 있어서 윈도 운영체제 지원에 큰 우선순위를 두고 있지 않은 분위기입니다. 최근에 윈도에서 XViD 파일 재생 시 크래시나는 문제가 버그질라에 올라왔는데, 버그발견자가 매우중요(critical)로 설정한 우선순위를 메인 개발자가 보통으로 바꿔버리더군요.

하지마나 GStreamer를 윈도에서도 사용하려는 노력이 이어지고 있습니다. 오늘 Gecko 기반의 미디어 플레이어를 만들고 있는 SongBird 블로그에 GStreamer for all, all for GStreamer이 라는 제목으로 GStreamer 윈도 플랫폼 지원에 대한 글이 하나 올라왔습니다. SongBird의 경우도 리눅스에서는 GStreamer를 쓰는데, 윈도와 Mac OS X에서는 아직 VLC를 사용하고 있습니다.

SongBird 팀은 높은 자유도를 주는 GStreamer를 메인으로 생각하고 있고 유지 보수 문제를 줄이고자 하나의 미디어 프레임워크로 통일하고자 하고 있습니다. 하지만 문제는 아직 리눅스 외의 플랫폼에서 GStreamer의 안정성이 검증되지 않았다는 데 있습니다. 안정성을 높이고자 SongBird는 꽤 오래전부터 GStreamer 메일링 리스트를 통해 DirectShow 필터를 GStreamer 플러그인으로 사용할 수 있게 하는 DirectShow 래퍼를 만들고 있다는 이야기를 해왔는데 공개하는 시점이 자꾸 늦어지고 있습니다.

저희 회사 입장에서는 중복 노력을 피하기 위해 되도록이면 SongBird의 작업 결과를 활용하고 싶었는데 시기가 늦춰지면서 결국 GStreamer DirectShow 래퍼를 직접 만들기 시작했습니다. 2월말을 목표로 작업에 착수합니다. 그 전에 SongBird 팀에서 좋은 소식을 전해 주면 좋을 텐데 몇 차례 양치기 소년에게 당했기 때문에 조금 믿음이 안 가긴 합니다.

까멜레오 프로젝트

Posted 2007. 6. 14. 02:55
한동안 블로그가 뜸했습니다. 회사에서 나름대로 야심찬 프로젝트를 준비하느라 바빠서 블로그에 신경쓸 시간이 없었네요. 사실 블로그라는 게 열심히 할 때는 탄력 받아서 열심히 쓰는데, 한 번 게을러지기 시작하면 관성이 붙더라고요.

그동안은 개인적인 관심사만 블로그에 올렸었는데, 이번에는 간단히 제가 회사에서 하고 있는 일을 소개해 보려 합니다. 저는 현재 (주)노매드커넥션이란 회사에서 일하고 있고, 공식 직함은 CTO이고 실제로는 개발팀장의 역할을 수행하고 있습니다.

현재 주력으로 개발 중인 프로젝트는 까멜레오(Chameleo)입니다. ‘까멜레오’라는 이름은 카멜레온에서 왔고, 어원을 따졌을 때 레온이 사자라면 레오는 아기 사자를 의미합니다. 작고 귀여운 카멜레온이란 뜻이지요. 까멜레오는 미디어 플랫폼을 지향합니다.

미디어 플랫폼은 꽤나 추상적인 말이라 구체적으로 어떤 제품인지 상상하기 어려울 수도 있는데, 쉽게 말하면 미디어 플레이어나 미디어 편집기 등 동영상과 멀티미디어에 관련된 응용 프로그램을 손쉽게 제작할 수 있는 플랫폼 혹은 런타임입니다. 플래시를 이용해 웹플레이어를 손쉽게 제작할 수 있는 것과 비슷한 개념이지요.

까멜레오는 다음과 같이 세 가지의 주요 특징을 가지고 있습니다.

1) OpenGL 및 3D 기술을 차용한 UI
2) 동영상 메타데이터 DB와 검색
3) 미디어 위젯

현재 까멜레오 블로그를 보면 플랫폼을 이용해 만든 데모 프로그램을 보실 수 있는데, 일단은 말풍선 위젯이나 점수 매기기 위젯 등 간단한 기능들을 보실 수 있습니다. 최종적으로는, 위젯을 쉽게 제작하고 사용할 수 있도록 플랫폼을 완전히 오픈하는 것을 염두에 두고 있습니다.





기술적으로는 현재 90% 이상의 코드가 파이썬으로 작성되어 있고, 위젯 작성도 파이썬 기반이 될 것입니다. 다양한 오픈소스 프로젝트와 표준 기술들을 사용하고 있습니다. 다른 기술들에 대해서도 개발을 진행하면서 차츰 소개를 할 생각입니다.

현재 플랫폼의 개발은 어느 정도 진척이 많이 되었고, 더불어 까멜레오 플랫폼을 이용한 데스크탑 동영상 플레이어도 클로즈드 알파단계에서 초기 테스트를 진행 중입니다. 현재 계획으로는 6, 7월 중에 공개 가능한 베타 버전이 나오리라 예상이 됩니다. 앞으로도 관련 소식을 업데이트 하겠습니다.

까멜레오 프로젝트 페이지를 방문하시면, 초대권 신청하는 란이 있습니다. 이름과 이메일을 남겨 주시면, 베타 버전이 완성될 경우 가장 먼저 체험해 볼 수 있는 기회를 드립니다!