• Документация libmpg123

    From Nil A@2:5015/46 to Denis Sovkov on Sat Dec 23 00:39:26 2023
    * Originally in ru.unix
    * Crossposted in su.hamradio
    Hello, Denis!

    Friday December 22 2023 22:24, from Denis Sovkov -> All:

    Решил написать интернет - радиоприемник.

    Для большинста здесь фидошников, радиоприёмник через Интернет - это SDR радиво с раздачей через WEB ;-)

    Какой-нибудь такой http://kiwisdr.com но на малинке у них получается ограничение в 4 пользователя онлайн, что всё время занято обычно.
    Или идерладцы ваще свой запили SDR офигенный, на писюке, и там всегда свободно http://websdr.ewi.utwente.nl:8901

    Собственно, уже почти все готово все работает. о по HTTP. Для HTTPS прикрутил OpenSSL - коннектится, туннель создается, все ок. о беда в
    том, что OpenSSL предоставляет функции SSL_read и SSL_write для работы
    с защищенным соединением. В свою очередь, mpg123 имеет функцию mpg123_read, которая читает поток из обычного сокета. В идеале было бы вычитавать защищенный поток с помощью SSL_read, а затем скармливать в mpg123 считанный буфер, а оно уже пусть гонит дальше. о не смог найти документацию по mpg123. То ли лыжи не едут, то ли... Сам пример работы
    с mpg123 и libao подсмотрел на Stack Overflow. Сайт mpg123 об этом
    молчит, в исходниках пока копаться руки не дошли. Может кто-то делал что-то подобное?

    Самая лучшая документация - исходный код. Скачал последний тарбол с https://sourceforge.net/projects/mpg123/files/latest/download А там, всё написано в файле doc/READERS.

    Somehow the differing ways of getting compressed data into libmpg123
    reached unholy numbers with the years.
    ...
    The frame struct has two parts concerned with input streams.

    struct reader *rd; /* pointer to the reading functions */
    struct reader_data rdat; /* reader data and state info */

    Если не разберёшься, то пиши.

    Best Regards, Nil
    --- GoldED+/LNX 1.1.5
    * Origin: Linux 2.6.32-042stab145.3 (2:5015/46)