AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 28039
In Process
Alvar
Alvar
Asked: 2011-02-26 07:02:04 +0800 CST2011-02-26 07:02:04 +0800 CST 2011-02-26 07:02:04 +0800 CST

如何通过网络将音乐流式传输到多台计算机?

  • 772

结果

我希望能够从一个房间走到另一个房间,听到同样的歌曲播放。就像你在所有房间里听收音机一样。

我想要那种效果,但我想听自己的音乐,可以这样做吗?

材料

  • Ubuntu 笔记本电脑。
  • 麦克电脑。

第一种选择

  • 我已经根据这个答案找到并设置了软件
  • 计算机和服务器中的所有软件都已设置好我应该如何继续? http://www.pulseaudio.org/wiki/FirstSteps
music
  • 8 8 个回答
  • 153849 Views

8 个回答

  • Voted
  1. Takkat
    2011-02-26T07:24:57+08:002011-02-26T07:24:57+08:00

    是的,有了pulseaudio ,这很容易做到。您将需要安装并运行paprefs 安装文件以使您的声音设备可以通过网络使用。

    在此处输入图像描述

    在此处输入图像描述

    这些设置允许通过网络发布声源和接收器,最好是发布到另一个 pulseaudio 服务器。

    如果您的服务器设置没有桌面管理器,您需要先安装一个完善的系统(参见这个问题)。然后,您可以在“网络访问/etc/pulse/default.pa”部分编辑取消注释这些行:

    load-module module-esound-protocol-tcp
    load-module module-native-protocol-tcp
    load-module module-zeroconf-publish
    

    如果要使用 RTP 发送器,请取消注释RTP 发送器模块部分的这些行:

    load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 description="RTP Multicast Sink"
    load-module module-rtp-send source=rtp.monitor
    

    pulseaudio 服务器需要作为守护进程启动pulseaudio -D,以防它尚未运行。为了优化音质设置,/etc/pulse/daemon.conf可以根据个人需要进行调整。

    在网络中流式传输音频的另一种方法是设置 Icecast 服务器(请参阅此问题)。

    • 50
  2. lazyPower
    2011-09-18T23:28:24+08:002011-09-18T23:28:24+08:00

    我不必做任何不寻常的事情。我有双上网本,既有 PulseAudio,也有来自英特尔的相当无名的硬件。我如何设置它有点像这样。

    在您的服务器和客户端上运行 paprefs。在服务器上,确保启用了多播设置,并检查了服务器位。像这样 在此处输入图像描述

    和多播位 在此处输入图像描述

    在客户端,启用关于查找启用网络的设备的位, 在此处输入图像描述 并通过 pavucontrol 将输出设备设置为虚拟网络设备 在此处输入图像描述

    中提琴 你现在应该有一些魔法

    • 12
  3. loxs
    2011-02-26T12:41:50+08:002011-02-26T12:41:50+08:00

    您最好的选择称为音乐播放器守护程序 (mpd)。

    https://secure.wikimedia.org/wikipedia/en/wiki/Music_Player_Daemon

    它是一个客户端服务器应用程序。您将音乐存储在服务器上,然后与您的客户端连接(很多人可以同时进行)并控制服务器。

    它已经在 ubuntu 中,只需 apt-get install mpd

    还有一些很好的文档: https ://wiki.archlinux.org/index.php/Mpd

    MPD 可以流式传输音乐,因此您可以有很多客户端(或扬声器,如果您愿意的话)来播放音乐。

    但不要真的期望任何好的质量。流媒体破坏听起来很糟糕(无论您使用 mpd 还是 pulseaudio)。将真正的扬声器连接到服务器并仅使用笔记本电脑来控制它是一个更好的主意。

    • 11
  4. laplasz
    2017-03-20T10:39:48+08:002017-03-20T10:39:48+08:00

    使用此解决方案,您可以随时随地传输系统音频。
    这里的关键是 ALSA 环回功能。所以首先你需要在 ALSA 中启用环回设备,它将作为输入设备(以及输出设备)出现在 PulseAudio 音量控制中。

    sudo modprobe snd_aloop
    

    然后可以将此设备添加到 mpd 服务器:

    mpc add alsa://hw:1,1
    

    其中 hw:1,1 是环回输入设备,可以使用命令列出aplay -l

    那么你需要为mpd配置一个http输出插件。下面的例子看起来像/etc/mpd.conf

     audio_output {
        type            "httpd"
        name            "My HTTP Stream"
        encoder         "vorbis"          # optional, vorbis or lame
        port            "8000"
        bind_to_address "192.168.1.38"               # optional, IPv4 or IPv6
        quality         "5.0"                   # do not define if bitrate is d$
    #   bitrate         "128"                   # do not define if quality is d$
        format          "44100:16:1"
        max_clients     "0"                     # optional 0=no limit
     }  
    

    这就对了。在音量控制播放选项卡中为您的音频源选择回送设备。
    最后,您可以使用 httpd url 地址在目标点使用 VLC 或任何其他流渲染器:http://192.168.1.38:8000
    此答案也可在此处获得

    • 1
  5. Jaime
    2021-11-03T09:50:51+08:002021-11-03T09:50:51+08:00

    为了添加到lazyPower的答案,我想评论一下“pulseaudio服务器”是音频设备所在的位置(在我的情况下,它是连接到笔记本电脑的蓝牙耳机),而“pulseaudio客户端”是音频播放到的位置网络选择音频接收设备。我花了几个小时才意识到这一点。

    • 1
  6. Ilari Kajaste
    2011-06-11T03:19:04+08:002011-06-11T03:19:04+08:00

    我不确定是否可以使用 DLNA/UPnP 实现这样的事情,因为我自己并不熟悉它,但是在这里抛出一些链接以防它有帮助:

    • UPnP AV 媒体服务器(维基百科)
    • 数字生活网络联盟/规范(维基百科)
    • DLNA 开源项目 (elinux)
    • 开源 DLNA/UPnP AV 软件设备列表 (jorgenmodin.net)
    • UPnP AV 媒体服务器和客户端/Linux 客户端列表(维基百科)

    尽管快速搜索结果表明无法同步...

    • 0
  7. themihai
    2016-09-07T13:01:05+08:002016-09-07T13:01:05+08:00

    没有好的解决方案(还)。有AVB,但它对 802.11 的支持仅限于时间同步。

    • 0
  8. Janus Troelsen
    2013-05-04T11:53:01+08:002013-05-04T11:53:01+08:00

    如果您想流式传输到 Android 手机,您可以在服务器上使用 Foobar2000,在客户端使用BubbleUPnP(付费软件)。

    1. 得到酒
    2. 得到foobar_v1.2.5.exe
    3. $ wine foobar2000_v1.2.5.exe
    4. 下一个,下一个,下一个... :)
    5. 获取foo_upnp
    6. 在 foobar2000 的 components 文件夹中提取(可能在~/.wine/drive_c/Program Files/)
    7. 启动 foobar2000
    8. 转到库→配置→播放→输出→设备并选择“空输出”
    9. 确保ufw没有阻塞相关流量
    10. 在 BubbleUPnP 中:
      1. 转到设备→库并选择 foobar2000 服务器
      2. 在“库”中,选择“播放流捕获”

    该方法的优点是,如果您在 Android 上暂停,它将累积一个缓冲区(因为服务器仍在发送)。

    在 Ubuntu(Wine 版本1.5.28-0ubuntu1~ppa1)和 Windows 上测试。

    • -2

相关问题

  • 您可以在 Ubuntu 上使用哪些 CD 翻录程序?

  • 如何将音乐流式传输到我的 AirTunes?

  • 鸣鸟替代品[关闭]

  • 如何将我的 Ubuntu One 音乐同步到 mp3 播放器?

  • 如何与我的 iPhone 3G 同步音乐?[关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    我需要什么命令来解压缩/提取 .tar.gz 文件?

    • 8 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Marko Smith

    如何使用命令行将用户添加为新的 sudoer?

    • 7 个回答
  • Marko Smith

    更改文件夹权限和所有权

    • 9 个回答
  • Martin Hope
    EmmyS 我需要什么命令来解压缩/提取 .tar.gz 文件? 2011-02-09 14:50:41 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve