Tak*_*kat 69 networking streaming icecast
将声卡的输出作为 Internet 无线电流进行广播是在网络中传输音频的可靠方式。这可以很好地用于例如将无线 LAN 中的音频传输到另一台计算机或任何其他能够播放 Internet 广播流的设备。
但是,我没有找到有关如何设置的简单分步指南。
Tak*_*kat 80

/etc/icecast2/icecast.xml在编辑器中以 root 身份打开文件。出于安全原因,您应该在以下<authentication>部分设置密码:
<admin-user>admin</admin-user>
<admin-password>hackme</admin-password>
Run Code Online (Sandbox Code Playgroud)
如果您更改了<source-password>或<relay-password>您需要在源端或中继端也这样做。这意味着保留默认值或在 ices2.xml 文件(见下文)中更改它。同样需要在 Ices 或 Darkice 配置文件中完成。
您还需要定义可以访问流的主机名:
<hostname>localhost</hostname>
Run Code Online (Sandbox Code Playgroud)
当您只想在本地网络中流式传输时,将其保留为localhost(无需在那里提供已解析的 IP)。默认侦听端口是 8000。仅在需要时更改它。
/etc/default/icecast2在编辑器中以 root 身份打开文件。最后一行需要改成
ENABLE=true
Run Code Online (Sandbox Code Playgroud)
这就是 Icecast2 的全部内容。当然,您可以使用更多设置。在配置文件中有关于参数的说明。
服务器通过以下命令启动和停止:
/etc/init.d/icecast2 start
/etc/init.d/icecast2 stop
Run Code Online (Sandbox Code Playgroud)
运行 Icecast 服务器时,可以http://localhost:8000/admin/在输入步骤 1 中定义的管理员凭据后从任何浏览器管理。更多文档可从Icecast.org 获得。
Stream2ip是一个图形前端,用于快速启动和停止流,其中 Ices2、Ices 或 Darkice 的基本设置已经完成。
用于从本地声卡流式传输 OGG Vorbis 音频要设置 pulseaudio 以启用从声卡录制,请参阅下面的 Darkice 注释。
mkdir /var/log/ices # in case you need logfiles.
mkdir /etc/ices2 # for putting ices stuff in.
Run Code Online (Sandbox Code Playgroud)
Ices2 将使用 .xml 文件进行设置运行。详细的配置示例可以在 中找到/usr/share/doc/ices2/examples/。这些文件需要编辑以满足您的需要,并且可以复制到任何地方,最好是在您的主目录中。根据配置文件,Ices2 使用Ogg Vorbis格式的播放列表( ices-playlist.xml) 或声卡的输出 ( ices-alsa.xml) 作为 Icecast2 的流媒体源。
在本节中<input>,如果您已将音响系统设置为 PulseAudio,则可能需要更换设备。为此,将相应的行编辑为:
<param name="device">pulse</param>
Run Code Online (Sandbox Code Playgroud)
接收客户端的流名称在下一节中定义。
<mount>/example1.ogg</mount>
Run Code Online (Sandbox Code Playgroud)
来自声卡的流将首先运行 Icecast2 服务器,然后使用以下命令运行 Ices2:
/etc/init.d/icecast2 start
ices2 /home/user/somewhere/ices-pulse.xml # or any other name from .xml file
Run Code Online (Sandbox Code Playgroud)
在接收器端,您的电台“电台”会打开:您的流媒体服务器的 IP在<serverIP>:8000/example1.ogg哪里<serverIP>,然后是您在 icecast.xml 文件中定义的端口(默认为 8000)。
通过杀死 Ices2 和/或停止运行 Icecast2 服务器来终止流:
killall ices2
/etc/init.d/icecast2 stop
Run Code Online (Sandbox Code Playgroud)
Ices2 无法播放包含mp3 文件的播放列表。我们需要安装IceS,我们必须从源代码安装它。
为建立与服务器地址,密码配置文件和流的属性后(有据可查的例子中可以找到/usr/share/doc/ices/examples),我们可以通过一个Icecast2服务器通过流从播放列表中的MP3音频文件(例如,在m3u格式的格式):
/etc/init.d/icecast2 start
ices -c <path_to_config_file> -F <path_to_playlist>
Run Code Online (Sandbox Code Playgroud)
有关更多选项,请阅读man ices.
用于直播我们可以使用Darkice将本地声卡的输出流式传输为 OGG Vorbis 或 mp3 流。要启用本地声卡的流式传输,我们可能需要首先在pulseaudio 中为Darkice 定义录音设备。这可以通过pavucontrol完成 . 在录制选项卡中选择
Monitor of <your soundcard>了“ALSA插件[darkice]”。
配置文件(在 中给出的详细记录示例/usr/share/doc/darkice/examples)需要适应 Icecast 服务器和本地声音环境:
[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
Run Code Online (Sandbox Code Playgroud)
保存此配置(例如在 中~/music/darkice.cfg)后,我们首先运行 Icecast 服务器,然后能够通过调用从本地声卡流式传输 pulseaudio 输出:
/etc/init.d/icecast2 start
darkice -c ~/music/darkice.cfg
Run Code Online (Sandbox Code Playgroud)
在接收器上,我们调到http://<localhost>:8000/mystream.mp3收听。<localhost>是 Icecast 服务器的 IP。
| 归档时间: |
|
| 查看次数: |
171243 次 |
| 最近记录: |