강좌 & 팁
글 수 2,412
2015.04.09 12:28:58 (*.134.169.166)
40645
안녕하세요.
오늘은 GStreamer에 대하여 간략하게 적어보겠습니다.
Gstreamer의 개발 프레임워크는 모든 유형의 스트리밍 어플리케이션을 개발 가능하게 해줍니다.
GStreamer 프레임워크는 오디오와 비디오를 처리하기 쉽게 만들기 위해 설계 되었습니다.
GStreamer 는 오디오나 비디오에 제한을 두지 않고, 모든 종류의 데이터 흐름도 처리할 수 있습니다.
GStreamer를 사용하는 목적은 미디어 플레이어를 만들기 위함입니다.
GStreamer로 MP3, Ogg/Vorbis, MPEG1/2, AVI, Quicktime, mod등과 같은 다양한 포맷을 지원하는 미디어 플레이어를 만들 수 있으며 여러 컴포넌트를 포함하고 있습니다.
Gstreamer는 다른 미디어 플레이어보다 많은 컴포넌트를 지원합니다.
GStreamer 이점은 플러그인이 가능한 컴포넌트는 임의적인 파이프라인으로 믹스/매치 할 수 있고, 이러한 조합을 통해 비디오/오디오 편집 애플리케이션을 작성할 수 있게 해줍니다.
GStreamer의 프레임워크는 다양한 코덱과 기능을 제공하는 프러그인을 기반으로 합니다.
플러그인은 파이프라인으로 연결 혹은 나열 됩니다.
파이프라인은 데이터의 흐름을 정의합니다.
파이프라인은 GUI 에티터를 편집하여 XML 파일로 저장할 수 있어 간단히 파이프라인인 라이브러리를 만들 수 있습니다.
GStreamer의 핵심 기능은 플러그인, 데이터흐름, 미디어 타입 핸들링을 할수 있는 프레임 워크를 제공합니다.
또한, 다양한 플러그인을 사용하여 어플리케이션을 만들 수 있는 API를 제공합나다.
구체적으로 GStreamer는 하기의 사항들을 제공합니다.
- 멀티미이더 어플리케이션을 위한 API
- 플러그인 아키텍처
- 파이프라인 아키텍쳐
- 미디어 타입 핸들링을 위한 메카니즘
- 동기화를 위한 메커니즘
- 250개 이상의 플러그인이 제공하는 1000개 이상의 엘리먼트
GStreamer의 플러그인은 하기와 같이 구분됩니다.
- 프로토콜 핸들링
- 소스 : 오디오/비디오를 위한 (프로토콜 플러그인과 연관됨)
- 포맷들 : 파서, 포맷터, 먹서, 디먹서, 메타 데이터, 자막
- 코덱 : 코덱과 디코더
- 필터 : 컨버터, 믹서, 효과 등
- 싱크 : 오디오와 비디오를 위한 (프로토콜 플러그인과 연관됨)
GStreamer 의 패키지 리스트
- gtreamer : 핵심 패키지
- gst-plugins-base : 핵심적인 엘리먼트의 집합
- gst-plugins-good: LGPL을 따르는 양질의 플러그인 집합
- gst-plugins-ugly : 배포 문제를 야기할 수 있는 플러그인 집합
- gst-pluins-bad :
- gst-libav : 디코딩과 인코딩을 위해 libav 플러그인 집합
이것저것 써있지만!
"미디어 플레이어를 제작하기 위해 사용하면 좋다!" 가 결론입니다^^