포논 (소프트웨어)
![]() | |
포논 설정 관리자의 초기 스크린샷 | |
| 개발자 | 마티아스 크레츠 u.a. |
|---|---|
| 발표일 | 2008년 1월 11일[1] |
| 안정화 버전 | 4.12.0
/ 2023년 11월 2일[2] |
| 저장소 | invent |
| 프로그래밍 언어 | C++ |
| 운영 체제 | 리눅스, BSD, macOS, Solaris, Windows |
| 종류 | 멀티미디어 프레임워크 |
| 라이선스 | GNU 약소 일반 공중 사용 허가서 2.1 |
| 웹사이트 | userbase |
포논(Phonon)은 KDE에서 제공하는 멀티미디어 API이며, KDE 소프트웨어 내에서 멀티미디어 스트림을 처리하기 위한 표준 추상화 계층으로, 여러 Qt 응용 프로그램에서도 사용된다.
포논은 원래 KDE 및 Qt 소프트웨어가 GStreamer 또는 Xine과 같은 단일 멀티미디어 프레임워크에 독립적으로 작동하도록 하고, 주요 버전의 수명 주기 동안 안정적인 API를 제공하기 위해 만들어졌다. 이는 여러 가지 이유로 이루어졌다: 간단한 KDE/Qt 스타일 멀티미디어 API를 생성하기 위해, Windows 및 macOS에서 기본 멀티미디어 프레임워크를 더 잘 지원하기 위해, 그리고 유지 보수되지 않거나 API 또는 ABI 불안정성을 겪는 프레임워크의 문제를 해결하기 위해.
예를 들어, 파일을 C++ 코드 네 줄로 재생할 수 있다.[3] 반면 KDE의 이전 오디오 프레임워크(aRts)에서는 30줄이 필요했다.[4]
Phonon::MediaObject* media = new Phonon::MediaObject(this);
createPath(media, new Phonon::AudioOutput(Phonon::MusicCategory, this));
media->setCurrentSource(QUrl("/tmp/example.wav"));
media->play();
포논은 상상할 수 있는 모든 멀티미디어 기능을 갖도록 설계된 것이 아니라, 컴퓨터 미디어 플레이어의 일반적인 기능을 수행하는 간단한 방법으로 설계되었다. 포논이 제공할 수 있는 것보다 특정 미디어 백엔드에 대한 더 많은 제어가 필요한 개발자는 해당 시스템에서 사용 가능한 기본 미디어 API 또는 GStreamer API를 사용하는 것이 좋다.[4]
역사
[편집]포논의 아이디어는 2004년 슈투트가르트 근교 루드비히스부르크에서 열린 aKademy에서 aRts를 대체할 새로운 멀티미디어 API를 선택해야 할 때 시작되었다. 합의에 이르지는 못했지만, 몇몇 개발자들이 모여 여러 백엔드를 가진 새로운 프레임워크를 개발하기로 결정했다. 초기 버전은 KDEMM (KDE MultiMedia)이라고 불렸으며 JuK와 Amarok에서만 지원되었다. 마티아스 크레츠는 그의 대학 논문의 일부로 이 프로젝트를 단독으로 계속 진행했고, 프로젝트 이름은 한 번 더 바뀌었지만 2006년 2월에 최종적으로 포논이라는 이름이 선택되었다. 첫 공식 릴리스는 2008년 1월 KDE 4.0의 일부로 이루어졌으며, 같은 해에 포논은 Qt에 채택되어 Qt 4.4의 일부로 릴리스되었다. Qt에서 포논에 대한 지원은 4.x 시리즈에서도 계속되겠지만, Qt는 이미 포논을 QtMultimedia 및 QtMobMobility로 대체했다.[5][6][7]
기능
[편집]
- 포논은 개발자들이 "엔진"이라고 부르는 다양한 백엔드와 연동하며, 각 엔진은 특정 백엔드와 작동한다. 각 백엔드는 포논이 재생, 일시 정지, 탐색과 같은 기본 기능을 제어하도록 허용한다. 포논은 또한 트랙이 서로 페이드인되는 방식과 같은 더 높은 수준의 기능도 지원한다.[8]
- 포논은 멀티미디어 프레임워크를 즉석에서 전환할 수 있다. 사용자는 음악을 듣는 중에도 프레임워크를 전환할 수 있으며, 전환 중에는 약간의 일시 정지만 발생한다. 이 변경은 시스템 전체에 적용되어 포논을 사용하는 모든 응용 프로그램에 영향을 미치므로 프레임워크 변경이 훨씬 쉬워진다.
- Solid를 사용하여 포논은 사용자에게 헤드셋, 스피커, 마이크와 같은 액세서리에 대한 더 큰 제어 권한을 제공한다. 한 가지 예로, VoIP 대화는 헤드셋을 통해서만 재생하고 다른 모든 소리는 스피커를 통해 나오도록 설정할 수 있다.[8]
백엔드
[편집]같이 보기
[편집]- 펄스오디오 – 데스크톱 사용을 위한 보편적인 사운드 서버
- 잭 오디오 커넥션 키트 – 전문 오디오 제작을 위한 보편적인 사운드 서버
각주
[편집]- ↑ “KDE 4.0 Released”. 2018년 1월 11일. 2019년 10월 23일에 확인함.
- ↑ “Phonon/Releases/VLC - KDE Community Wiki”. 2023년 11월 2일. 2025년 2월 16일에 확인함.
- ↑ Kretz, Matthias. “MediaObject Class Reference”. 2008년 4월 26일에 원본 문서에서 보존된 문서. 2007년 12월 19일에 확인함.
- 1 2 Sanders, N. (2006년 5월 9일). “Phonon and the future of KDE multimedia”. 2007년 12월 19일에 확인함.
- ↑ Guthrie, Colin. “Qt Multimedia/Mobility vs. Phonon: FIGHT!!!”. 2010년 5월 27일에 원본 문서에서 보존된 문서. 2010년 11월 20일에 확인함.
- ↑ “QtMultimedia Module”. 2010년 8월 28일에 원본 문서에서 보존된 문서. 2010년 11월 20일에 확인함.
- ↑ “Qt Mobility Project APIs Overview”. 2010년 5월 2일에 원본 문서에서 보존된 문서. 2010년 11월 20일에 확인함.
- 1 2 Unrau, Troy (2007년 2월 6일). “The Road to KDE 4: Phonon Makes Multimedia Easier”. 2007년 12월 21일에 원본 문서에서 보존된 문서. 2007년 12월 19일에 확인함.
- ↑ “Phonon - KDE UserBase Wiki”. 2012년 3월 1일에 확인함.
