오픈 사운드 시스템
Open Sound System원저작자 | 한누 사볼라이넨 |
---|---|
개발자 | NCR 코퍼레이션 |
안정된 릴리스 | 4.2 빌드 2019 / 2019년 3월 [1] , 전( |
운영 체제 | 크로스 플랫폼[2] |
유형 | 오디오 |
면허증. | |
웹 사이트 | www |
OSS(Open Sound System)는 Unix 및 Unix와 유사한 운영 체제에서 소리를 내고 캡처하기 위한 인터페이스입니다.표준 Unix 디바이스 시스템 호출(POSIX 읽기, 쓰기, ioctl 등)을 기반으로 합니다.OSS 인터페이스를 제공하는 Unix 커널 내의 소프트웨어를 가리키는 경우도 있습니다.사운드 컨트롤러 하드웨어용 디바이스 드라이버(또는 디바이스 드라이버의 집합)라고 생각할 수 있습니다.OSS의 목표는 기본 사운드 하드웨어에 구애받지 않는 사운드 기반 애플리케이션을 쓸 수 있도록 하는 것입니다.
OSS는 Hannu Savolainen에 의해 만들어졌으며, 4가지 라이센스 옵션으로 배포되고 있으며, 그 중 3개는 무료 소프트웨어 라이센스이므로 OSS는 무료 소프트웨어가 [3]됩니다.
API
API는 특별한 장치를 통해 기존의 Unix 프레임워크인 open(), read(), write() 및 ioctl()을 사용하도록 설계되었습니다.예를 들어 사운드 입출력 기본 디바이스는 /dev/dsp입니다.셸의 사용 예:
cat / dev / dsp > / dev / dsp # 는 스피커 cat / dev / dsp > a.a 를 개입시켜 화이트 노이즈를 재생합니다.a # 는 마이크로부터 데이터를 읽어내, 파일 a.a.a 에 카피합니다.
무료, 독자 사양, 무료
이 프로젝트는 처음에는 무료 소프트웨어였지만 프로젝트의 성공에 따라 Savolainen은 4Front Technologies사와 계약을 맺고 새로운 사운드 디바이스와 개선 기능을 독점적으로 지원하게 되었습니다.이에 따라 Linux 커뮤니티는 커널에 포함된 OSS/무료 구현을 포기하고 대체 ALSA(Advanced Linux Sound Architecture)로 개발 작업을 전환했습니다.Ubuntu와 같은 일부 Linux 디스트리뷰션에서는 커널에서 OSS 지원을 해제하고 OSS4[4] 패키지에 대해 제기된 버그를 무시하도록 선택했습니다(단, OSS 지원은[5] Ubuntu에서 다시 활성화될 수 있습니다).
그럼에도 불구하고 FreeBSD와 같은 몇몇 운영체제는 이전 버전의 OSS를 계속 배포하고 있으며, 이러한 버전의 유지 및 개선을 계속하고 있습니다.
2007년 7월에 4Front Technologies는 CDDL-1.0 for OpenSolaris 및 GPL-2.0 only Linux로 [3]OSS 소스를 발표했습니다.
2008년 1월 4Front Technologies는 BSD-2-Clause에 [6]따라 FreeBSD(및 기타 BSD 시스템)용 OSS를 출시했습니다.
기타 구현
FreeBSD에는 OSS API가 독립적으로 개발된 구현이 포함되어 있습니다.OSS API에는 커널 내 재샘플링, 혼합(vchan), 이퀄라이저, 서라운드 사운드 및 각 애플리케이션에 대한 독립적인 볼륨 컨트롤이 포함됩니다.비트 퍼펙트 [7]모드도 지원합니다.
NetBSD는 OSS API의 호환성 모드를 지원하며soundcard.h
헤더 파일 및libossaudio
라이브러리는 네이티브 Sun 라이크 오디오인터페이스를 [8]사용하여 내부적으로 동작합니다.
Solaris 및 OpenSolaris는 Boomer라고 불리는 OSS4 포크를 사용합니다.OSS4 프레임워크(오디오 및 믹서)를 Sun의 초기 SADA(/dev/audio)[9] API와 결합합니다.
OSS/3D
OSS/3D는 음악 플레이어용 플러그인으로 오디오 후처리 엔진 역할을 합니다.지원되는 플레이어는 Winamp, Windows Media Player(9 이후), musicmatch, Sonique, Foobar2000, JetAudio, XMMS입니다.Windows 및 Linux 플랫폼으로 이식됩니다.OSS와는 달리 셰어웨어입니다.
4Front OSS3D는 나중에 Joesoft [10]Hear로 이름이 변경되었습니다.
ALSA에 관한 OSS
Linux 커널에서는 지금까지 2개의 균일한 사운드 API가 사용되었습니다.하나는 OSS, 다른 하나는 ALSA(Advanced Linux Sound Architecture)입니다.ALSA는 Linux에서만 사용할 수 있으며, ALSA 인터페이스의 실장은 1개뿐이므로 ALSA는 그 실장과 인터페이스 자체를 동등하게 참조합니다.
OSS는 2.4 시리즈의 공식 Linux 커널을 사용한 Linux에서 유일한 오디오 API였습니다.ALSA는 2.5부터 추가되었으며, 그 버전에서는 Linux 커널 작성자가 OSS를 권장하지 않는 것으로 표시되었습니다. 4Front는 Linux 커널 외부에서 OSS를 계속 개발했습니다.
ALSA는 OSS인 것처럼 프로그램에 표시되는 옵션의 OSS 에뮬레이션모드를 제공합니다.마찬가지로 OSS의 Linux 구현에도 ALSA 에뮬레이션모드가 있었어요
OSS는 API로서도 소프트웨어로서도 Paul Davis(JACK Audio Connection Kit)나 Lennart Poettering(Pulse Audio)[11][12]과 같은 일부 개발자들에 의해 비판을 받아 왔습니다.이러한 비판의 대부분은 OSS API 자체에 대한 것이 아니라 Linux 구현에 대한 것이거나 OSS 버전 [citation needed]4에서 해결되었습니다.
「 」를 참조해 주세요.
- 고도의 Linux 사운드 아키텍처– Linux 커널의 주요 사운드 프레임워크
- Pulse Audio – 데스크톱용 사운드 서버. Linux 시스템에서 일반적으로 사용됩니다.
- JACK Audio Connection Kit – Linux에서 프로페셔널한 오디오 제작용 주요 사운드 서버
레퍼런스
- ^ OSS v4.2 build 2019, retrieved 2019-05-10
- ^ "OSS Download Registration".
- ^ a b 4Front technologies releases the source code for open sound system, Linux PR, archived from the original on July 25, 2011, retrieved 2012-01-08
- ^ Ubuntu Documentation: OpenSound, ubuntu.com, retrieved 2012-01-08
- ^ OSS4의 Ubuntu 재활성화 절차
- ^ 4Front Technologies releases OSS for FreeBSD under the BSD license, opensound.com, retrieved 2012-01-08
- ^ sound, Freebsd.org, 2009-07-13, retrieved 2012-01-08
- ^ ossaudio(3) - NetBSD Manual Pages, Netbsd.gw.com, 2009-02-03, retrieved 2012-01-08
- ^ Hannu's Blog » Boomer, 4front-tech.com, archived from the original on 2012-03-16, retrieved 2012-01-08
- ^ · Obsolete product reference, Yohng.com, retrieved 2012-01-08
- ^ "A tutorial on using the ALSA Audio API".
- ^ https://lwn.net/Articles/450299/