Ví dụ dưới đây cho thấy cách tạo một đường hầm TCP pulseaudio để chuyển tiếp âm thanh từ máy tính này alphasang máy tính khác beta. Trong trường hợp của tôi, cả hai máy tính đều chạy Ubuntu 14.04.
Trên alpha(máy tính nguồn) nối các dòng sau vào /etc/pulse/default.pa:
.fail
load-module module-tunnel-sink sink_name=beta server=tcp:IP_ADDRESS_OF_BETA:4713
.nofail
(Chọn bất kỳ giá trị duy nhất nào cho sink_name. Tôi tùy ý chọn sử dụng giá trị đó beta.)
Trên beta(máy tính đích) nối dòng sau vào /etc/pulse/default.pa:
load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;LAN_NAME
Ở trên, LAN_NAMEvà IP_ADDRESS_OF_BETAsẽ dành riêng cho máy tính và mạng LAN của bạn. Ví dụ: chúng có thể là:
LAN_NAME = 192.168.1.0/24
IP_ADDRESS_OF_BETA = 192.168.1.10
Sau khi thực hiện các thay đổi ở trên, khởi động lại pulseaudio, trước tiên beta, sau đó bật alpha. Các vấn đề quan trọng. Tôi khởi động lại pulseaudio với pulseaudio --kill. Tôi chạy pulseaudio --killnhư pesonal của tôi UID(không phải là root), vì pulseaudio đã chạy như cá nhân của tôi UID.
Nếu mọi thứ hoạt động thành công, bây giờ bạn sẽ thấy đường hầm trên Output Devicestab pavucontroltrên alpha. Khi một nguồn âm thanh đang phát, bạn sẽ có thể định tuyến nguồn đến đường hầm trên Playbacktab pavucontrolbật alpha.
Miễn là đường hầm còn nguyên vẹn, bạn cũng có thể thấy đường hầm trên Playbacktab pavucontroltrên beta. Nếu đường hầm biến mất, khởi động lại pulseaudio, trước tiên beta, sau đó bật alpha. Đường hầm chỉ được tạo khi pulseaudiobắt đầu alpha.
Lưu ý 1: Ví dụ này giả sử pulseaudio đang chạy trên cả hai alphavà beta. Kể từ năm 2016, pulseaudio chạy theo mặc định trên Ubuntu và đã nhiều năm.
Lưu ý 2: Ví dụ này không sử dụng mạng cấu hình Avahi Zero. Avahi có thể được bật theo mặc định trên Ubuntu, nhưng tôi đã tắt Avahi trên các hệ thống của mình. Trên mạng LAN của tôi, beta(máy tính đích) luôn có cùng một địa chỉ IP và tôi biết địa chỉ đó.
Lưu ý 3: Các auth-ip-aclcấp trên cho phép truy cập vào bất kỳ thiết bị nào trên mạng LAN. Pulseaudio cũng hỗ trợ các phương thức xác thực (an toàn hơn) khác. Tôi sử dụng auth-ip-aclđể đơn giản hóa cấu hình.
Thông tin thêm có thể được tìm thấy tại các trang sau:
/raspberrypi/8621/how-to-set-up-a-pulseaudio-sink
https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Network/# index2h2
https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Modules/#index14h3