Не могу настроить вещание с моего ALSA для работы с Icecast2 и Ices2.

Я хочу сделать подкаст на Icecast2 + Ices2. Моя цель — транслировать музыку, которая сейчас играет в моих наушниках. Мой звуковой сервер — Pulsaudio, звуковая система — Alsa.

Icecast2 и Ices2 успешно загружаются, и, согласно журналу, Ices2 подключен к Icecast2.

На странице администратора Icecast я вижу точку монтирования от Ices2. В этом МП у меня есть виджет плеера, но он ничего не воспроизводит. Когда я нажимаю "||" кнопка меняется на ">", но я ничего не слышу.

Если я скачаю m3u и открою его в Audacious, я увижу «Буферизация», но все равно ничего не услышу.

В статистике точек монтирования написано, что total_bytes_read = несколько килобайт, но total_bytes_sent - всегда 0.

Конфигурация Ices2:

      <?xml version="1.0"?>
<ices>
    <background>1</background>
    <logpath>/var/log/ices</logpath>
    <logfile>ices.log</logfile>
    <!-- 1=error,2=warn,3=info,4=debug -->
    <loglevel>4</loglevel>
    <!-- set this to 1 to log to the console instead of to the file above -->
    <consolelog>0</consolelog>
    <!-- optional filename to write process id to -->
    <!-- <pidfile>/home/ices/ices.pid</pidfile> -->
    <stream>
        <metadata>
            <name>AlexRsk podcast</name>
            <genre>blah-blah-blah</genre>
            <description>blah-blah</description>
        </metadata>

    <input>
        <module>alsa</module>
        <param name="rate">44100</param>
        <param name="channels">1</param>
        <param name="device">pulse</param>
        <param name="metadata">1</param>
        <param name="metadatafilename">/home/alexrsk/ices2/metadata</param> 
    </input>
    
    <instance>
            <hostname>localhost</hostname>
            <port>8000</port>
            <password>bandersnatches</password>
            <mount>/alexrsk.ogg</mount>

            <reconnectdelay>2</reconnectdelay>
            <reconnectattempts>5</reconnectattempts> 

            <maxqueuelength>80</maxqueuelength>    
        </instance>

    </stream>
    
</ices>

Конфигурация Icecast2

      <icecast>
    <location>Russia</location>
    <admin>your@address.com</admin>

    <limits>
        <clients>100</clients>
        <sources>2</sources>
        <threadpool>5</threadpool>
        <queue-size>524288</queue-size>
        <client-timeout>30</client-timeout>
        <header-timeout>15</header-timeout>
        <source-timeout>10</source-timeout>
        <burst-on-connect>1</burst-on-connect>
        <burst-size>65535</burst-size>
    </limits>

    <authentication>
        <source-password>bandersnatches</source-password>
        <relay-password>bandersnatches</relay-password>
        <admin-user>alexrsk</admin-user>
        <admin-password>my123pass</admin-password>
    </authentication>

    <hostname>localhost</hostname>

    <listen-socket>
        <port>8000</port>
        <bind-address>0.0.0.0</bind-address>
    </listen-socket>

    <fileserve>1</fileserve>

    <paths>
        <basedir>/etc/icecast2</basedir>

        <logdir>var/log/icecast2</logdir>
    <webroot>/etc/icecast2/web</webroot>
    <adminroot>/etc/icecast2/admin</adminroot>
        <alias source="/" destination="/status.xsl"/>
    </paths>

    <logging>
        <accesslog>access.log</accesslog>
        <errorlog>error.log</errorlog>
        <loglevel>4</loglevel> <!-- 4 Debug, 3 Info, 2 Warn, 1 Error -->
        <logsize>10000</logsize> <!-- Max size of a logfile -->
    </logging>

    <security>
        <chroot>0</chroot>
        
        <changeowner>
            <user>nobody</user>
            <group>nogroup</group>
        </changeowner>
   </security>
</icecast>

В данный момент я попробовал изменить конфигурацию Ices2, в разделе «Модуль»,

импульс на «по умолчанию», «hw:0,0», hw:0,1, plughw:0,0. Результат-ничего.

Вывод aplay -l

      Card 0: PCH [HDA Intel PCH], device 0: ALC892 Analog [ALC892 Analog]
Subdevices: 1/1
Subdevice №0: subdevice #0
Card 0: PCH [HDA Intel PCH], device 1: ALC892 Digital [ALC892 Digital]
Subdevices: 1/1
Subdevice №0: subdevice #0

Любая помощь будет оценена по достоинству

1 ответ

Проблема была решена. В моем случае решающим моментом был раздел<encode>в конфигурации льда. Когда я добавил

                <encode>
                <nominal-bitrate>64000</nominal-bitrate>
                <samplerate>44100</samplerate>
                <channels>2</channels>
            </encode>

и настроил вход таким образом:

      <input>
                <module>alsa</module>
                <param name="rate">44100</param>
                <param name="channels">2</param>
                <param name="device">default</param>
                                <param name="periods">0</param>
                                <param name="buffer-time">500</param>
                <param name="metadata">1</param>
                <param name="metadatafilename">/home/alexrsk/ices2/metadata</param>
 </input>

Тогда вроде все работает.

Другие вопросы по тегам