Raspberry LogoA Whitepaper Giving a
High-Level Overview of Audio
Options on Raspberry Pi SBCs
Raspberry Pi Ltd

Kolofonas

© 2022-2025 Raspberry Pi Ltd
This documentation is licensed under a Creative Commons Attribution-No Derivatives 4.0 International (CC BY-ND).
1.0 versija
Build date: 28/05/2025

Teisinis atsakomybės atsisakymo pranešimas

RASPBERRY PI PRODUKTŲ TECHNINIUS IR PATIKIMUMO DUOMENYS (ĮSKAITANT DUOMENŲ LAPUS), KAIP KARTAS KARTAS PAKEITIMAI („IŠTEKLIAI“), TEIKIA „RASPBERRY PI LTD“ („RPL“) „TOKIAI, KOKIA YRA“ IR JOKIŲ AIŠKIŲ, NEREIKIAMŲ AR NUMANOMŲ NUOMONĖS GARANTIJŲ DĖL TINKAMUMO PARDUOTI IR TINKAMUMO TAM TAM TAM TIKRAI ATSAKOMYBĖS. IKI DIDŽIAUSIOS TAIKOMOS TEISĖS LEIDŽIAMO DYDŽIO RPL JOKIU ATVEJU NEATSAKO UŽ JOKIĄ TIESIOGIĄ, NETIESIOGINĘ, ATTITINKĄ, SPECIALIĄJĄ, PAvyzdinę ARBA IŠSEKESĘ ŽALĄ (ĮSKAITANT PASLAUGŲ PASLAUGŲ NAUDOJIMĄ, BET NEAPSIribodama, , DUOMENYS , Arba pelno; DĖL TOKIOS ŽALOS.
RPL pasilieka teisę bet kuriuo metu ir be papildomo įspėjimo atlikti bet kokius IŠTEKLIŲ ar bet kurių juose aprašytų produktų patobulinimus, patobulinimus, pataisymus ar bet kokius kitus pakeitimus.
The RESOURCES are intended for skilled users with suitable levels of design knowledge. Users are solely responsible for their selection and use of the RESOURCES and any application of the products described in them. User agrees to indemnify and hold RPL harmless against all liabilities, costs, damages or other losses arising out of their use of the RESOURCES. RPL grants users permission to use the RESOURCES solely in conjunction with the Raspberry Pi products. All other use of the RESOURCES is prohibited. No licence is granted to any other RPL or other third party intellectual property right.
HIGH RISK ACTIVITIES. Raspberry Pi products are not designed, manufactured or intended for use in hazardous environments requiring fail safe performance, such as in the operation of nuclear facilities, aircraft navigation or communication systems, air traffic control, weapons systems or safety-critical applications (including life support systems and other medical devices), in which the failure of the products could lead directly to death, personal injury or severe physical or environmental damage (“High Risk Activities”). RPL specifically disclaims any express or implied warranty of fitness for High Risk Activities and accepts no liability for use or inclusions of Raspberry Pi products in High Risk Activities. Raspberry Pi products are provided subject to RPL’s Standartinės sąlygos. RPL’s provision of the RESOURCES does not expand or otherwise modify RPL’s Standartinės sąlygos įskaitant, bet neapsiribojant, juose išreikštus atsakomybės apribojimus ir garantijas.

Dokumento versijų istorija

Paleisti Data Aprašymas
1 1-balandžio-25 d Pradinis išleidimas

Dokumento apimtis
Šis dokumentas taikomas šiems Raspberry Pi produktams:

PI 0 PI 1 Pi 2 Pi 3 Pi 4 Pi 400 Pi 5 Pi 500 CM1 CM3 CM4 CM5 Pico Pico2
0 W H A B A B B Visi Visi Visi Visi Visi Visi Visi Visi Visi Visi

Įvadas

Over the years, the options available for audio output on Raspberry Pi SBCs (single-board computers) have become more numerous, and the way they are driven from software has changed.
This document will go through many of the available options for audio output on your Raspberry Pi device and provide instructions on how to use audio options from the desktop and the command line.
This whitepaper assumes that the Raspberry Pi device is running Raspberry Pi OS and is fully up to date with the latest firmware and kernels.

Raspberry Pi garso aparatūra

HDMI
All Raspberry Pi SBCs have an HDMI connector that supports HDMI audio. Connecting your Raspberry Pi SBC to a monitor or television with speakers will automatically enable HDMI audio output through those speakers. HDMI audio is a high-quality digital signal, so the results can be very good, and multichannel audio like DTS is supported.
If you are using HDMI video but want the audio signal to split off — for example, į an amplifier that does not support HDMI input — then you will need to use an additional piece of hardware called a splitter to extract the audio signal from the HDMI signal. This  can be expensive, but there are other options, and these are described below.
Analoginis PCM / 3.5 mm lizdas
„Raspberry Pi“ modeliai B+, 2, 3 ir 4 turi 4 polių 3.5 mm garso lizdą, kuris gali palaikyti garso ir kompozicinius vaizdo signalus. Tai žemos kokybės analoginis išėjimas, generuojamas iš PCM (impulsinio kodo moduliacijos) signalo, tačiau jis vis tiek tinka ausinėms ir staliniams garsiakalbiams.
Raspberry Pi SBCS Single Board Computer - Icon PASTABA
There is no analogue audio output on Raspberry Pi 5.
Lizdo kištuko signalai apibrėžti šioje lentelėje, pradedant nuo kabelio galo ir baigiant antgaliu. Kabeliai būna su skirtingais priskyrimais, todėl įsitikinkite, kad turite tinkamą.

Jack segment Signalas
Rankovė Vaizdo įrašas
Žiedas 2 Žemė
Žiedas 1 Teisingai
Patarimas Kairė

I2S pagrindu sukurtos adapterio plokštės
All models of Raspberry Pi SBCs have an I2S peripheral available on the GPIO header. I2S is an electrical serial bus interface standard used to connect digital audio devices and communicate PCM audio data between peripherals in an electronic device. Raspberry Pi Ltd manufactures a range of audio boards that connect to the GPIO header and use the I2S interface to transfer audio data from the SoC (system on a chip) to the add-on board.
Pastaba: Add-on boards that connect via the GPIO header and adhere to the appropriate specifications are known as HATs (Hardware Attached on Top). Their specifications can be found here: https://datasheets.raspberrypi.com/
The full range of audio HATs can be seen on the Raspberry Pi Ltd websvetainė: https://www.raspberrypi.com/products/
There are also a large number of third-party HATs available for audio output, for exampiš „Pimoroni“, „HiFiBerry“, „Adafruit“ ir kt., ir jie siūlo daugybę skirtingų funkcijų.
USB garsas
If it is not possible to install a HAT, or you are looking for a quick and easy way to attach a jack plug for a headphone output or a microphone input, then a USB audio adapter is a good choice. These are simple, cheap devices that plug into one of the USB-A ports on the Raspberry Pi SBC.
Raspberry Pi OS includes drivers for USB audio by default; as soon as a device is plugged in, it should show up on the device menu that appears when the speaker icon on the taskbar is right-clicked.
The system will also automatically detect if the attached USB device has a microphone input and enable the appropriate support.
Bluetooth
Bluetooth audio refers to the wireless transmission of sound data via Bluetooth technology, which is very widely used. It enables the Raspberry Pi SBC to talk to Bluetooth speakers and headphones/earbuds, or any other audio device with Bluetooth support. The range is fairly short — about 10 m maximum.
Bluetooth devices need to be ‘paired’ with the Raspberry Pi SBC and will appear in the audio settings on the desktop once this is done. Bluetooth is installed by default on Raspberry Pi OS, with the Bluetooth logo appearing on the desktop taskbar on any devices that have Bluetooth hardware installed (either built in or via a Bluetooth USB dongle). When Bluetooth is enabled, the icon will be blue; when it is disabled, the icon will be grey.

Programinės įrangos palaikymas

The underlying audio support software has changed considerably in the full Raspberry Pi OS image, and, for the end user, these changes are mostly transparent. The original sound subsystem used was ALSA. Pulse Audio succeeded ALSA, before being replaced by the current system, which is called Pipe Wire. This system has the same functionality as Pulse Audio, and a compatible API, but it also has extensions to handle video and other features, making the integration of video and audio much easier. Because Pipe Wire uses the same API as Pulse Audio, Pulse Audio utilities work fine on a Pipe Wire system.
These utilities are used in the examples žemiau.
To keep the image size down, Raspberry Pi OS Lite still uses ALSA to provide audio support and does not include any Pipe Wire, Pulse Audio, or Bluetooth audio libraries. However, it is possible to install the appropriate libraries to add those features as required, and this process is also described below.
Darbalaukis
Kaip minėta aukščiau, garso operacijos atliekamos naudojant garsiakalbio piktogramą darbalaukio užduočių juostoje. Kairiuoju pelės mygtuku spustelėjus piktogramą, atidaromas garsumo slankiklis ir nutildymo mygtukas, o dešiniuoju pelės mygtuku spustelėjus – galimų garso įrenginių sąrašas. Tiesiog spustelėkite norimą naudoti garso įrenginį. Taip pat yra galimybė dešiniuoju pelės mygtuku spustelėjus, kad pakeistumėte garsą.filekiekvienas įrenginys naudoja šias programas.files usually provide different quality levels.
If microphone support is enabled, a microphone icon will appear on the menu; right-clicking on this will bring up microphone specific menu options, such as input device selection, whilst left-clicking brings up input level settings.
Bluetooth
To pair a Bluetooth device, left-click on the Bluetooth icon on the taskbar, then select ‘Add Device’. The system will then start looking for available devices, which will need to be put into ‘Discover’ mode to be seen. Click on the device when it appears in the list and the devices should then pair. Once paired, the audio device will appear in the menu, which is selected by clicking the speaker icon on the taskbar.
Komandinė eilutė
Because Pipe Wire uses the same API as Pulse Audio, the majority of the Pulse Audio commands used to control audio work on Pipe Wire. pacts is the standard way of controlling Pulse Audio: type man pactl into the command line for more details.
Prerequisites for Raspberry Pi OS Lite
On a full installation of Raspberry Pi OS, all the required command line applications and libraries are already installed. On the Lite version, however, Pipe Wire is not installed by default and must be manually installed to be able to play back sound.
To install the required libraries for Pipe Wire on Raspberry Pi OS Lite, please input the following: sudo apt install pipewire pipewire-pulse pipewire-audio pulseaudio-utils If you intend on running applications that use ALSA, you will also need to install the following: sudo apt install pipewire-alsa
Rebooting after installation is the easiest way to get everything up and running.
Audio playback examples
Display a list of installed Pulse audio modules in short form (the long form contains a lot of information and is difficult to read): $ pactl list modules short Display a list of Pulse Audio sinks in short form:
$ pactl sąrašas trūksta
On a Raspberry Pi 5 connected to an HDMI monitor with built-in audio and an additional USB sound card, this command gives the following output: $ pactl list sinks short
179 alsa_output.platform-107c701400.hdmi.hdmi-stereo Pipe Wire s32le 2ch 48000Hz SUSPENDED 265 alsa_output.usb-C-Media_Electronics_Inc._USB_PnP_Sound_Device-00.analog-stereo-output Pipe Wire s16le 2ch 48000Hz SUSPENDED
Raspberry Pi SBCS Single Board Computer - Icon PASTABA
Raspberry Pi 5 does not have analogue out.
For a Raspberry Pi OS Lite install on a Raspberry Pi 4 — which has HDMI and analogue out — the following is returned: $ pactl list sinks short
69 alsa_output.platform-bcm2835_audio.stereo-fallback Pipe Wire s16le 2ch 48000Hz SUSPENDED
70 alsa_output.platform-107c701400.hdmi.hdmi-stereo Pipe Wire s32le 2ch 48000Hz SUSPENDED
Norėdami šiame „Raspberry Pi OS Lite“ diegime rodyti ir pakeisti numatytąjį kriauklę į HDMI garsą (atkreipkite dėmesį, kad tai jau gali būti numatytoji), įveskite:
$ pactl get-default-sink
alsa_output.platform-bcm2835_audio.stereo-fallback
$ pactl set-default-sink 70
$ pactl get-default-sink
alsa_output.platform-107c701400.hdmi.hdmi-stereo
Norėdami atkurti kaipampy., pirmiausia jį reikia įkelti į samp„le cache“, šiuo atveju – numatytojoje saugykloje. Galite pakeisti saugyklą pridėdami jos pavadinimą prie „pactl play-s“ pabaigos.ample komanda:
$ pactl įkėlimaiampsample.mp3 samplename
$ pactl play-sampsamplename
There is a Pulse Audio command that is even easier to use to play back audio:
$ paplay sample.mp3
pactl has an option to set the volume for the playback. Because the desktop uses Pulse Audio utilities to get and set audio information, the execution of these command line changes will also be reflected in the volume slider on the desktop.
Šis buvęsampsumažina garsumą 10 %:
$ pactl set-sink-volume @DEFAULT_SINK@ -10%
Šis buvęsample nustato garsumą iki 50%:
$ pactl set-sink-volume @DEFAULT_SINK@ 50%
There are many, many Pulse Audio commands that are not mentioned here. The Pulse Audio websvetainė (https://www.freedesktop.org/wiki/Software/PulseAudio/) and the man pages for each command offer extensive information about the system.
Bluetooth
Controlling Bluetooth from the command line can be a complicated process. When using Raspberry Pi OS Lite, the appropriate commands are already installed. The most useful command is bluetoothctl, and some examples of it in use are provided below.
Make the device discoverable to other devices:
$ bluetoothctl aptinkamas
Padarykite įrenginį suporuojamą su kitais įrenginiais:
$ bluetoothctl suporuojamas įjungtas
Ieškoti „Bluetooth“ įrenginių diapazone:
$ bluetoothctl nuskaitymas įjungtas
Išjungti nuskaitymą:
$ bluetoothctl scan off bluetoothctl also has an interactive mode, which is invoked by using the command with no parameters. The following example runs the interactive mode, where the list command is entered and the results shown, on a Raspberry Pi 4 running Raspberry Pi OS Lite Bookworm: $ bluetoothctl
Įregistruotas agentas
[bluetooth]# list
Controller D8:3A:DD:3B:00:00 Pi4Lite [default] [bluetooth]#
You can now type commands into the interpreter and they will be executed. A typical process for pairing with, and then connecting to, a device may read as follows: $ bluetoothctl
Agent registered [bluetooth]# discoverable on
Pakeisti aptinkamą funkciją pavyko
[CHG] Controller D8:3A:DD:3B:00:00 Discoverable on [bluetooth]# pairable on
Pavyko pakeisti porą
[CHG] Controller D8:3A:DD:3B:00:00 Pairable on [bluetooth]# scan on
<gali būti ilgas netoliese esančių įrenginių sąrašas>
[bluetooth]# pair [mac address of device, from the scan command or from the device itself, in the form xx:xx:xx:xx:xx:xx] [bluetooth]# scan off
[bluetooth]# connect [same mac address] The Bluetooth device should now appear in the list of sinks, as shown in this exampfailas iš „Raspberry Pi OS Lite“ diegimo:
$ pactl sąrašas trūksta
69 alsa_output.platform-bcm2835_audio.stereo-fallback Pipe Wire s16le 2ch 48000Hz SUSPENDED
70 alsa_output.platform-107c701400.hdmi.hdmi-stereo Pipe Wire s32le 2ch 48000Hz SUSPENDED
71 bluez_output.CA_3A_B2_CA_7C_55.1 Pipe Wire s32le 2ch 48000Hz SUSPENDED
$ pactl set-default-sink 71
$ paplay <example_audio_file>
Dabar galite tai padaryti kaip numatytąją ir jame atkurti garsą.
Išvados
Yra daug skirtingų būdų, kaip išgauti garso išvestį iš „Raspberry Pi Ltd“ įrenginių, patenkinančių daugumos vartotojų poreikius. Šioje informacinėje knygoje aprašyti šie mechanizmai ir pateikta informacija apie daugelį jų. Tikimasi, kad čia pateikti patarimai padės galutiniam vartotojui pasirinkti tinkamą garso išvesties schemą savo projektui. Paprastas pavyzdysampPateikiamos garso sistemų naudojimo instrukcijos, tačiau skaitytojas turėtų daugiau informacijos ieškoti garso ir „Bluetooth“ komandų vadovuose ir žinynų puslapiuose.

Raspberry Pi yra Raspberry Pi Ltd prekės ženklas
Raspberry Pi Ltd

Dokumentai / Ištekliai

Raspberry Pi SBCS vienos plokštės kompiuteris [pdfVartotojo vadovas
SBCS vienos plokštės kompiuteris, SBCS, vienos plokštės kompiuteris, borto kompiuteris, kompiuteris

Nuorodos

Palikite komentarą

Jūsų el. pašto adresas nebus skelbiamas. Privalomi laukai pažymėti *