Phát âm thanh với Icecast2
2. Chỉnh sửa cấu hình Icecast2
Mở tệp /etc/icecast2/icecast.xml
dưới dạng root trong một trình soạn thảo. Vì lý do bảo mật, bạn nên thiết lập mật khẩu trong <authentication>
phần:
<admin-user>admin</admin-user>
<admin-password>hackme</admin-password>
Nếu bạn thay đổi <source-password>
hoặc <relay-password>
bạn cũng cần phải làm như vậy ở phía nguồn hoặc rơle. Điều đó có nghĩa là để mặc định hoặc thay đổi nó trong tệp ices2.xml (xem bên dưới). Điều tương tự sẽ cần phải được thực hiện trong các tệp cấu hình Ices hoặc Darkice.
Bạn cũng cần xác định tên máy chủ nơi có thể truy cập luồng của mình:
<hostname>localhost</hostname>
Để nó dưới dạng localhost (không cần cung cấp IP được giải quyết ở đó) khi bạn chỉ muốn truyền phát trong mạng cục bộ của mình. Cổng mặc định để nghe là 8000. Chỉ thay đổi nó khi cần.
3. Chỉnh sửa mặc định
Mở /etc/default/icecast2
tệp dưới dạng root trong một trình soạn thảo. Dòng cuối cùng cần được thay đổi thành
ENABLE=true
Đó là tất cả cho Icecast2. Tất nhiên có nhiều cài đặt hơn bạn có thể chơi với. Trong các tập tin cấu hình có ghi chú giải thích về các tham số.
4. Bắt đầu / Dừng Icecast
Máy chủ được khởi động và dừng bởi các lệnh sau:
/etc/init.d/icecast2 start
/etc/init.d/icecast2 stop
Trong khi chạy máy chủ Icecast có thể được quản trị từ bất kỳ trình duyệt nào http://localhost:8000/admin/
sau khi nhập thông tin đăng nhập của quản trị viên được xác định trong bước 1. Tài liệu khác có sẵn từ Icecast.org .
Stream2ip là một giao diện đồ họa để nhanh chóng bắt đầu và dừng các luồng trong đó thiết lập cơ bản cho Ices2, Ices hoặc Darkice đã được thực hiện.
Ices2 để truyền phát âm thanh OGG Vorbis từ soundcard cục bộ
Để thiết lập pulseaudio để cho phép ghi âm từ soundcard, hãy xem ghi chú cho Darkice bên dưới.
Tạo thư mục cho Ices2
mkdir /var/log/ices # in case you need logfiles.
mkdir /etc/ices2 # for putting ices stuff in.
Chỉnh sửa cấu hình Ices2 .xml
Ices2 sẽ chạy bằng tệp .xml để cài đặt. Ví dụ chi tiết về cấu hình có thể được tìm thấy trong /usr/share/doc/ices2/examples/
. Những tập tin này cần được chỉnh sửa để đáp ứng nhu cầu của bạn và có thể được sao chép ở bất cứ đâu, tốt nhất trong thư mục nhà của bạn. Tùy thuộc vào tệp cấu hình, Ices2 sử dụng danh sách phát ở định dạng Ogg Vorbis ( ices-playlist.xml
) hoặc đầu ra từ soundcard ( ices-alsa.xml
) của bạn làm nguồn phát trực tuyến cho Icecast2.
Trong phần <input>
bạn có thể cần thay thế thiết bị nếu bạn đã thiết lập hệ thống âm thanh của mình thành PulseAudio. Để thực hiện việc này, chỉnh sửa dòng tương ứng thành:
<param name="device">pulse</param>
Tên của luồng cho máy khách nhận được xác định trong phần sau.
<mount>/example1.ogg</mount>
Bắt đầu truyền phát
Các luồng từ soundcard của bạn sẽ được bắt đầu bằng cách trước tiên chạy máy chủ Icecast2 và sau đó chạy Ices2 bằng các lệnh sau:
/etc/init.d/icecast2 start
ices2 /home/user/somewhere/ices-pulse.xml # or any other name from .xml file
Thiết lập nhận
Trên máy thu bên radio "trạm" giai điệu của bạn về: <serverIP>:8000/example1.ogg
nơi <serverIP>
là IP của máy chủ streaming của bạn tiếp theo là cổng mà bạn định nghĩa trong file icecast.xml (mặc định 8000).
Chấm dứt truyền phát
Các luồng bị chấm dứt bằng cách giết Ices2 và / hoặc ngừng chạy máy chủ Icecast2:
killall ices2
/etc/init.d/icecast2 stop
Ices để phát danh sách nhạc mp3
Không thể phát một danh sách phát chứa các tệp mp3 với Ices2. Chúng ta cần cài đặt IceS , cái mà chúng ta phải cài đặt từ nguồn .
Sau khi đã thiết lập tệp cấu hình với địa chỉ máy chủ, mật khẩu và thuộc tính phát trực tuyến (ví dụ tài liệu tốt sẽ được tìm thấy /usr/share/doc/ices/examples
), chúng tôi có thể truyền tệp âm thanh mp3 từ danh sách phát (ví dụ: ở định dạng .m3u) qua máy chủ Icecast2 bằng cách:
/etc/init.d/icecast2 start
ices -c <path_to_config_file> -F <path_to_playlist>
Để biết thêm tùy chọn đọc tài liệu trong trang người đàn ông khá công phu từ man ices
.
Darkice để phát trực tiếp
Chúng tôi có thể truyền phát đầu ra của card âm thanh cục bộ dưới dạng OGG Vorbis hoặc dưới dạng luồng mp3 bằng Darkice . Để cho phép truyền phát soundcard cục bộ, trước tiên chúng ta có thể cần xác định thiết bị ghi âm cho Darkice trong pulseaudio. Điều này có thể được thực hiện với pavucontrol . Trong Recording tab chọn Monitor of <your soundcard>
cho "ALSA plug-in [darkice]" .
Tệp cấu hình (ví dụ được ghi lại rõ ràng /usr/share/doc/darkice/examples
) cần phải được điều chỉnh phù hợp với máy chủ Icecast và môi trường âm thanh cục bộ:
[general]
duration = 0 # duration in s, 0 forever
bufferSecs = 1 # buffer, in seconds
reconnect = yes # reconnect if disconnected
[input]
device = default # or `pulse' for Pulseaudio
sampleRate = 44100 # sample rate 11025, 22050 or 44100
bitsPerSample = 16 # bits
channel = 2 # 2 = stereo
[icecast2-0]
bitrateMode = vbr # variable bit rate (`cbr' constant, `abr' average)
quality = 1.0 # 1.0 is best quality
format = mp3 # format. Choose `vorbis' for OGG Vorbis
bitrate = 256 # bitrate
server = localhost # or IP
port = 8000 # port for IceCast2 access
password = hackme # source password to the IceCast2 server
mountPoint = mystream.mp3 # mount point on the IceCast2 server .mp3 or .ogg
name = mystream
Sau khi lưu cấu hình này (ví dụ: trong ~/music/darkice.cfg
), trước tiên chúng tôi chạy máy chủ Icecast và sau đó có thể truyền phát đầu ra pulseaudio từ thẻ âm thanh cục bộ bằng cách gọi:
/etc/init.d/icecast2 start
darkice -c ~/music/darkice.cfg
Trên máy thu, chúng tôi điều chỉnh để http://<localhost>:8000/mystream.mp3
nghe. <localhost>
là IP của máy chủ Icecast.