Windows의 ASIO에 해당하는 Linux라고 들었기 때문에 Jack을 설정하려고 합니다. 나는 재미로 기타를 연주하며 Ardor로 연주하거나 Guitar Rig와 동등한 무료 오픈 소스를 찾는 것이 멋질 것이라고 생각했습니다.
하지만 이해가 안 돼요... 음, 아무것도 아니에요. 잭이 무슨 짓을 하는지 이해가 안 돼요. 제가 아는 한 일반적인 프로세스는 다음과 같습니다.
[sound hardware]
→ [kernel]
→ [JACK]
→ → [ALSA]
→ [PulseAudio]
→ [Phonon]
→[my headphones]
(Phonon은 제가 KDE를 사용하기 때문에 나온 것 같습니다.)
사실 모르겠어요무엇화살표는 나타냅니다. JACK 웹사이트에는 PulseAudio와 함께 JACK을 사용하는 방법을 설명하는 페이지를 제외하고 기본적으로 처음부터 사용자에게 제공되는 문서가 포함되어 있습니다.
JACK과 상관없이 Linux에서 사운드가 어떻게 작동하는지 모르는 초보자는 어디서 배울 수 있나요? 사운드 스택에 대해 배우고 싶습니다. 하지만 잭에게서 내가 찾을 수 있는 건그 불모의 위키(이름이 지정된 두 개 포함JACK 서버 구성 및 실행그리고간단한 오디오 체인 설정, 결과는 5년 동안 편집되지 않은 '출시 예정' 페이지입니다.)2005년 Linux 저널 기사.
많은 것들이 나를 혼란스럽게 합니다. Linux가 어떤 사운드 장치를 인식하는지 어떻게 알 수 있나요? 저는 온보드 칩, USB 오디오 인터페이스(M-Audio FastTrack), 마이크가 있는 USB 웹캠의 세 가지를 가지고 있습니다. 이 모든 것이 Linux에서 인식됩니까? 모두 사운드 장치로 특별히 등록되어 있습니까? 각 장치에는 독립적인 JACK, ALSA, PulseAudio 등의 드라이버가 있어야 합니까? 내 장치를 테스트하여 출력이 있는지 확인하는 기본적인 방법이 있습니까? 내 장치를 모니터링하여 소프트웨어가 실제로 해당 장치를 사용하고 있는지 확인할 수 있는 방법이 있습니까?
이제 Amarok 소리는 들리지만 Youtube 소리는 들리지 않습니다. Amarok은 또한 내장 사운드 칩이 아닌 USB FastTrack을 통해 실행됩니다. 수소가 시작을 거부합니다. 아마도 JACK이나 Alsa가 있거나 뭔가 잘못 구성되었기 때문일 것입니다. 나는 이러한 것들에 대한 운율이나 이유를 알아내는 방법을 모릅니다.
답변1
Linux 사운드에 대한 노력으로 인해 Pulse Audio의 자동 생성이 비활성화되었습니다(따라서 종료 시 다시 시작되지 않음).
에 추가하세요.autospawn=no
~/.pulse/client.conf
- 중지
pactl exit
- 에서 시작하다
pulseaudio
행위라이브 사운드 물건아니면 PA를 끄고 JACK을 실행하는 것과 같습니다. PA 브리지가 없습니다. PA 또는 JACK+PA를 사용하여 대기 시간을 만족스럽게 줄인 적이 없습니다.
이 기사.Phonon
이 기사를 이미 읽었을 수도 있고 최신 내용은 아니지만 다음 내용을 이해하는 데 더 가까워질 수 있습니다.Linux 음악 작업 흐름: Kim Cascone을 사용하여 Mac OS X에서 Ubuntu로 전환. 제목 위의 차트를 참고하세요."작업 과정". (여기에서도 찾을 수 있습니다.잭 다이어그램.) 상단에 있는 것과 같은 링크도 읽어보세요.Linux 오디오 소개, 비록 2004년의 것이지만 ALSA에 대한 간략한 소개를 제공합니다.
비록 나 자신에 대해 잘 알지는 못하지만, 학습을 여러 부분으로 나누는 것이 좋은 접근 방식이라고 생각합니다.
- ALSA에 대해 알아보기
- JACK에 대해 알아가세요. (특히 스튜디오 작업을 하고 싶으시다면요.)
- 펄스 오디오에 대해 알아보기
그와 같은 순서로. 사람들이 Linux 사운드를 마스터하는 데 어려움을 겪는 것은 당연합니다. 이것은 역사와 그 진화와 많은 관련이 있습니다. 그렇기 때문에 그것을 진정으로 이해하고 싶다면 그 역사를 아는 것이 좋습니다. 따라서 ALSA는 시작하기에 좋은 곳입니다. OSS에 대해 스니핑을 해보세요. 그리고 당신의 길을 가십시오.
빠른 방법가능한그것을 작동하게 만드는 것은 따르는 것입니다이 가이드 중 하나.
간단히 말해서 ALSA는 다양한 하드웨어를 처리하는 방법을 알고 있는 커널의 일부입니다. JACK 및 Pulse Audio는 API를 사용하여 하드웨어를 제어하고 상호 작용합니다. ALSA는 단독으로 사운드 서버로 사용될 수도 있습니다. 이 애플리케이션은 멀티스레드 사운드 작업을 위해 JACK/PA API를 사용합니다.
다음 명령을 실행하면 시스템을 빠르게 살펴볼 수 있습니다.alsa-info.sh
스크립트 찾기여기.
몇 가지 연결을 보여주는 매우 단순화된 퍼지 뷰 다이어그램:
+------------------------------------------------+
| SOUNDCARD |
|------------------------------------------------| _____ __
| ___________ | / \/ \
| | ADC | <---- analog in --[o---7 :===========|==|==|=[';]
| -----|----- | \____7 \__/
| __________ AMP | |
| | MIXER |----+------o |
| +---|---+-- AMP_____|______ | _______
| | | DAC | ---> analog out -[o------[ o o o ] ♫ ♬ ♪ ♩ ♭ ♪
| | +----------+ | | |
| | | | (o) |
| -- -+---^-- --v-- -- -- --^-- --v-- --+-- | | |
| CONTROLS | | ((0)) |
| | |_______|
| |
+------------------------------||----------------+
||
ADC: Analog to digital ||
DAC: Digital to analog |- udev trigged and mounted
_______________________________||________________
| |
| KERNEL |
|¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ -|-|-|-|- ¨ ¨ ¨ ¨ ¨|
| |
| ALSA API <--> [Device Drivers] |
| ^ | module-alsa-card +--------|--
| | | | |
+---------|--|---------------------------| Memory Buffer I/O
: | v | |
| +----|---|--
| JACK ------------ PULSE AUDIO --------------+ |
| sinks | |--
| * hardware-access-points * hardware-sink | | Uses ALSA API for HW I/O
| * virtual-devices * mediaplayer-sink | | Mixing, Control etc.
| * recorder-sink | |
| * ... | |--
| | |
|-----------------|------|--------------------|---|
| APPLICATIONS -----------------+ |
|-------------------------------------------------|
| |
| Software based mixing |
| |
+-------------------------------------------------+