오디오 수신기와 오디오 카드/장치의 차이점과 관계는 무엇입니까?
하나 할 수 있나요?싱크대동일한 사운드 카드로 여러 장치에 싱크됩니까? 일명, 수신 장치가 일대다 관계에 있을 수 있나요?
추신: 저는 완전한 멍청이는 아니지만 Linux 오디오에 대해서도 잘 모릅니다.
aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC1220 Analog [ALC1220 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 1: ALC1220 Digital [ALC1220 Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [LG TV SSCR2]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
gst-inspect-1.0 | grep -iP "audio sink|pipewire" | more
alsa: alsasink: Audio sink (ALSA)
autodetect: autoaudiosink: Auto audio sink
jack: jackaudiosink: Audio Sink (Jack)
oss4: oss4sink: OSS v4 Audio Sink
ossaudio: osssink: Audio Sink (OSS)
pipewire: pipewiredeviceprovider (GstDeviceProviderFactory)
pipewire: pipewiresink: PipeWire sink
pipewire: pipewiresrc: PipeWire source
pulseaudio: pulsesink: PulseAudio Audio Sink
KEF LSX 스피커에 연결된 컴퓨터를 통해 TV를 들을 때 파이프와이어 처리(저는 또한효과가 나타나기 쉬움):
답변1
일부싱크대일부 데이터 흐름을 나타냅니다. (존재하다일부 특정 사운드 서버 용어)
사운드 서버가 없으면 오디오 응용 프로그램은 오디오 샘플을 하드웨어 오디오 장치에 직접 출력합니다. 아무 필요도 없어싱크대이러한 상황에서의 개념.
이것싱크대개념은 일부 특정 사운드 서버에 나타납니다(선택 잭 오디오 연결 키트 사운드 서버에 사용되었다는 내용은 절대 읽지 마십시오).
사운드 서버를 사용할 때 오디오 응용 프로그램은 해당 데이터를 사운드 서버로 보냅니다. 용어에 따르면 이는 다음과 같습니다.싱크대.
사운드 서버는 사운드 서버라는 용어를 사용하여 장치로 출력할 수 있습니다.싱크대
하지만 그것도 괜찮아싱크대일부 후처리 응용 프로그램 자체에 대한 오디오 샘플싱크대사운드 서버에 들르세요싱크대사운드 장치에.
그건 그렇고, 이 사운드 서버는 또한싱크대... 또 다른 사운드 서버로... :-)
댓글에서:"서버가 동시에 2개 이상의 장치에 동일한(오디오) 데이터를 출력할 수 있나요?"
네, 이 개념을 도입한 사운드 서버는 그 덕분에 가능했습니다.모듈 조합 수신기,또한 가능성싱크대장치의 데이터 출력은 일부 응용 프로그램이나 사운드 서버 자체의 입력으로 반환됩니다.모듈 루프백(그러나 완전히 용납할 수 없는 지연 시간이 발생합니다). alsa 가상 장치 덕분에 사운드 서버 없이도 동일한 작업을 더 빠르게 수행할 수 있습니다.
답변2
귀하의 질문에 대한 내 의견에 대한 설명입니다 ...
컴퓨팅에서 수신기 또는 데이터 싱크는 일반적으로 데이터 스트림의 대상을 나타냅니다.
전단
GStreamer, PulseAudio 또는 PipeWire와 같은 스트림을 사용하는 일부 컴퓨터 프로그램에서 소스는 스트림을 생성하지만 아무것도 소비하지 않는 파이프의 시작점이고 싱크는 스트림을 생성하지 않고 받아들이는 끝점입니다. .
https://en.wikipedia.org/wiki/Sink_(컴퓨팅)
따라서 오디오 수신기는 스피커와 같은 오디오 처리의 대상입니다.
사운드카드는 반대편에 있는데..
사운드 카드(오디오 카드라고도 함)는 컴퓨터 프로그램의 제어를 받아 컴퓨터에 오디오 신호의 입력 및 출력을 제공하는 내부 확장 카드입니다.
사운드 카드는 디지털-아날로그 변환기(DAC)를 사용하여 녹음되거나 생성된 디지털 신호 데이터를 아날로그 형식으로 변환합니다.
https://en.wikipedia.org/wiki/Sound_card
따라서 사운드 카드는 오디오 소스도 아니고 오디오 대상(싱크)도 아닙니다.
사운드 카드가 하는 일은 디지털 신호를 변환하는 것뿐입니다.
오디오 소스는 미디어 소스(예: 미디어 파일)라고도 합니다.
사운드 처리 파이프라인은 미디어 소스, 미디어 처리 소프트웨어(사운드 카드 사용), 미디어 싱크로 구성됩니다.
싱크와 소스는 물론 오디오 처리에 대해 언급하는 Microsoft의 오디오 처리 구현에 대한 개요는 아래 링크를 참조하세요.
편집하다:
PC에서의 오디오 처리는 비디오 게임 개발의 렌더링 파이프라인과 유사한 오디오 처리 파이프라인(소프트웨어)으로 구성된 오디오 처리 소프트웨어에 의해 수행됩니다.
렌더링 파이프라인에서 렌더링(대상 아님)에 GPU가 사용되는 방식과 유사한 방식으로, 사운드 카드도 오디오 변환에 사용되지만 그 자체가 오디오 신호의 대상은 아닙니다.
사운드 카드는 입력(예: 디지털)을 받아들이고 출력(예: 아날로그)을 제공합니다. 여기서 입력과 출력은 모두 오디오 처리 소프트웨어로 관리됩니다.
오디오 소프트웨어와의 사용자 상호 작용에 따라 사용되는 오디오 소스 및 싱크(대상)가 결정됩니다.
예를 들어, 오디오 입력에 마이크를 사용하려는 경우 이것이 오디오 소스가 되고, 사용자가 오디오 파일을 사용하는 경우에도 오디오 소스가 됩니다.
오디오 소프트웨어가 닫힙니다. 운전자의 도움을 받아 마이크나 스피커 등 소스 또는 대상 장치와 상호 작용
오디오 파이프라인(소프트웨어 개념)은 소스에서 시작됩니다. 마이크 오디오 입력의 경우 오디오 소프트웨어는 오디오 소프트웨어에서 사용할 수 있도록 사운드 카드의 도움으로 아날로그 신호를 디지털 신호로 변환합니다.
따라서 사운드 카드는 디지털에서 아날로그 오디오 처리를 위한 중개자이며 오디오 소프트웨어는 아날로그 신호가 아닌 디지털 오디오 신호를 처리하고 아날로그 신호를 이해하기 때문에 오디오 소프트웨어에 필요한 중개자입니다. 오디오 소프트웨어는 변환을 위해 사운드 카드를 사용합니다.
신호가 사운드 카드에 의해 변환되면 오디오 소프트웨어는 오디오 신호를 파이프 아래로 계속해서 목적지까지 보냅니다. 오디오 수신기
오디오 싱크는 새 오디오 파일(예: 사용자가 음성을 녹음하고 파일에 저장하는 경우)이거나 스피커(예: 사용자가 오디오를 재생하는 경우)일 수 있습니다.
오디오 싱크는 오디오 파이프라인의 끝이며 소스는 오디오 파이프라인의 시작입니다.
오디오 파이프라인 자체는 오디오 소프트웨어에 의해 관리됩니다.
오디오 소스와 오디오 싱크 사이에서 소프트웨어는 사운드 카드를 사용한 신호 변환을 포함하는 오디오 처리를 담당합니다. 따라서 사운드 카드는 소스도 대상도 아니고 오디오 파이프라인에서 사용되는 중간 장치입니다. 오디오 소프트웨어.
렌더링 파이프라인과 마찬가지로 GPU는 비디오 게임 소프트웨어의 소스도 싱크도 아니지만 게임으로 인코딩되는 파이프라인에서 사용됩니다. 오디오 파이프라인에서 사운드 카드를 사용하는 오디오 소프트웨어의 경우에도 마찬가지입니다. .
편집 2:
알아두면 좋은데, 누가 오디오를 재생합니까? 즉, 오디오를 출력 커넥터로 보내는 사람은 누구입니까? 이 커넥터는 오디오 장치용입니까?
오디오 파이프라인 분석:
예:마이크를 사용하여 사람의 목소리를 듣는 방법은 무엇입니까?
- 사용자가 마이크에 대고 말하고 마이크 입력은 아날로그 오디오 신호입니다.
- 오디오 소프트웨어(또는 라이브러리)가 마이크를 관리하는 드라이버로부터 아날로그 입력 신호를 수신하지만 아날로그 신호를 이해하지 못합니다.
- 그런 다음 오디오 소프트웨어는 오디오 파이프라인에서 처리할 수 있도록 사운드 카드 드라이버의 도움을 받아 아날로그 신호 입력을 디지털 신호로 변환합니다(사운드 카드는 입력을 받아들이고 출력-변환 제공).
- 그런 다음 오디오 소프트웨어는 변환된 디지털 신호를 수신하고 처리합니다. 코덱 적용, 혼합 등(모두 소프트웨어가 이해하는 디지털 신호 사용)
- 그런 다음 오디오 소프트웨어는 사운드 카드를 다시 사용하여 디지털 신호를 아날로그 신호로 변환하여 수신기(예: 스피커)로 보낼 수 있습니다.
- 이 아날로그 신호는 스피커를 관리하는 드라이버로 전송됩니다. 스피커가 오디오를 재생하려면 신호가 아날로그여야 합니다.
따라서 오디오 소프트웨어는 사운드 카드를 두 번 사용합니다. 먼저 아날로그를 디지털로 변환한 다음 다시 디지털을 아날로그로 변환합니다. 하드웨어(마이크 및 스피커)는 디지털 신호를 이해하지 못하지만 오디오 소프트웨어는 디지털 신호를 시뮬레이션하지 않기 때문입니다. 따라서 변환에 사용되는 사운드 카드는 이를 처리하고 출력(또는 입력 수신)을 담당하는 드라이버로 보낼 수 있어야 합니다.
오디오 파일을 재생하는 경우 신호는 이미 디지털이므로 사운드 카드는 이를 한 번만 사용합니다. 즉, 스피커를 관리하는 드라이버에 디지털을 아날로그로 보냅니다. (예: 아날로그 입력 없음)