首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过v4l2、ices2和icecast来自/dev/ radio *的多个FM广播流

通过v4l2、ices2和icecast来自/dev/ radio *的多个FM广播流
EN

Unix & Linux用户
提问于 2014-02-05 14:25:53
回答 1查看 1.1K关注 0票数 0

我有一个FM收音机using (硅芯片),我已经设法通过icecast传输无线电接收,使用以下配置:

  • USB由v4l2驱动程序识别,安装在/dev/radio0上,作为一个独立的音频设备
  • 脉冲音频使用FM无线电设备作为记录设备。
  • ices2使用以“脉冲”为设备的“alsa”模块
  • ices2将连接和流连接到icecast服务器。

这很好,但是如果有第二个FM收音机USB安装在/dev/无线电台1上,我希望同时有第二个流。是否有可能ices2可以直接从/dev/放0和/dev/放1分别接收音频数据并流不同的频道?

还有其他解决方案吗,比如Pulse音频为每个软件源提供不同的录音输入?

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2014-02-05 14:46:46

好的。答案很简单。正如您在图片中所看到的,PulseAudio允许为每个记录软件提供不同的捕获输入(在我们的例子中,对于每个ices2 Alsa捕获模块)。

因此,需要用一个单独的配置文件启动ices2两次

每个ices2都应该定义一个新的alse脉冲源:

代码语言:javascript
运行
复制
    <input>
        <module>alsa</module>
        <param name="device">pulse</param>
        <!-- Read metadata (from stdin by default, or -->
        <!-- filename defined below (if the latter, only on SIGUSR1) -->
        <param name="metadata">1</param>
        <param name="metadatafilename">test</param>
    </input>

和两个不同的例子

例如,用于第一个ices2

代码语言:javascript
运行
复制
<instance>
        <!--    Server details.

            You define hostname and port for the server here, along
            with the source password and mountpoint.  -->

        <hostname>localhost</hostname>
        <port>4888</port>
        <username>source</username>
        <password>pasword</password>
        <mount>/radio1.ogg</mount>

</instance>

对于第二个ices2

代码语言:javascript
运行
复制
<instance>
        <!--    Server details.

            You define hostname and port for the server here, along
            with the source password and mountpoint.  -->

        <hostname>localhost</hostname>
        <port>4888</port>
        <username>source</username>
        <password>pasword</password>
        <mount>/radio2.ogg</mount>


</instance>
票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/113668

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档