首页 > 解决方案 > C++ LibVLC 广播音频

问题描述

在创建帖子之前,我一直在寻找,但找不到解决问题的方法。

我正在尝试直播我的麦克风的默认输出。

如果您粘贴替换 ip 的 cmd,它将开始从您的麦克风传输声音。

"C:\Program Files\VideoLAN\VLC\vlc.exe" --qt-start-minimized dshow:// :dshow-vdev=none :dshow-adev= :sout=#transcode{vcodec=none,acodec=mp3,ab=128}:standard{access=http,mux=mp3,dst=192.168.1.253:8080}

所以我决定将该命令从 cmd 移动到 c++

        std::cout<<"BEGIN BROADCAST"<<std::endl;
        libvlc_instance_t *vlc;
        const char *url = "dshow://";
        const char *sout = "#transcode{vcodec=none,acodec=mp3,ab=128}:http{mux=mp3,dst=192.168.1.253:8080}";
        const char *media_name = "Radio";
        vlc = libvlc_new(0, NULL);
        std::cout<< libvlc_vlm_add_broadcast(vlc, media_name, url, sout, 0, NULL, true, false);
        std::cout<<"END BROADCAST"<<std::endl;

根据官方文档,如果传输成功,它会返回一个 int -> int libvlc_vlm_add_broadcast
https://videolan.videolan.me/vlc-3.0/group__libvlc__vlm.html#gaa8d58569f07229edabe9fdaab41b1c3d

它返回 0 给我。

但是当我打开另一个 VLC 访问时:http://192.168.1.253:8080它不会连接...

有人可以帮助我吗?我真的很感激,问候。

最接近的帖子之一是: Use libvlc to stream mp3 to network

标签: c++vlc

解决方案


推荐阅读