VLC 可以使用 Chromecast,但 Chromecast 不支援藍牙,我想將音訊傳送到藍牙揚聲器。我怎麼能這樣做呢?我試著畫這個:
Wifi +----------+
+---------->+Chromecast|
|Video +----------+
|
++----+
| VLC |
++----+
|
|
|Bluetooth +--------+
+---------->+Speakers|
Audio +--------+
我想https://superuser.com/a/1029986/41259會很有用,但似乎不可能為第二個檔案設定單獨的渲染器。如果有幫助的話,我可以輕鬆地預先提取音訊檔案。 ( ffmpeg -i foo.mkv -vn -acodec copy out.eac3
)
我使用的是 Windows 10,我熟悉命令列,並且已經啟動並運行了 WSL,如果某些需要伺服器的 Linux 可以作為解決方案。
答案1
又快又髒(想法)
你說
- 客戶1:使用
vlc
(或其他)您可以透過 Chromecast 將訊號傳送到您的電視 - 客戶2:您就
vlc
可以使用藍牙揚聲器
問題是它們很難同步。
因此,更快的解決方案是使用(如同步不同的字幕/語言)
- 伺服器1:
vlc
as local的另一個實例流光。
您可以先將兩個客戶端(最終是另外兩個實例vlc
)連接到該伺服器(連接到其串流媒體 IP 和連接埠),然後您可以開始播放或暫停串流媒體。
這就是解決方案遵循OP,在解決了他的作業系統、軟體、硬體特有的一些問題之後......
更少的路徑資源需求解決方案(想法)
只有那些試圖對更廣泛的受眾有用並涵蓋不同硬體集的想法。
任何主播節目都會有很多選擇。Vlc
有兩個選項清單。您可以用(還不夠,區分大小寫時大小很重要)
來詢問巨大的。 -H
-h
:-)
在這種情況下有很多有趣的選項,其中包括伺服器選項--無南顯示(預設啟用),--sout-顯示預設禁用,--南視頻... --no-sout-video 用於視頻,--sout-audio--無南音頻(預設啟用)...
這是一個很好的做法始終指定重要選項,以避免先前執行程序所儲存的選項最終出現意外幹擾。你明白這是怎麼回事“惡毒”: 一次發生,一次沒有…>>> 順便說一句 vlc
過去(現在仍然)用於記住上次 GUI 執行中修改的最後首選項並在退出時保存。 <<<
如果您指定選項,您將強制使用該選項執行。
這裡有一些嘗試節省資源的途徑:
再次假設您能夠透過 vlc 使用揚聲器,也許您可以透過儲存客戶2實例在串流媒體中停用(伺服器1)音訊重定向到串流並使用那裡的揚聲器(開始嘗試--無南音頻)。
我還沒有完全理解將信號傳送到電視的部分,但我覺得你可以嘗試儲存客戶1實例也。它依賴硬體。
- 在某些電視盒中,例如帶有 Kodi 的電視盒,可以添加應用程式將盒子直接連接到串流媒體,只需知道串流媒體的 IP(和連接埠)即可。你了解他們,因為你給予命令列/GUI。其中一些應用程式能夠掃描本地網路或一系列本地 IP(見下文)。甚至自動。
- 你的電視可以是DNA在許多方面都相容(因此您可以將 vlc 串流媒體設定為與特定電視功能相容)。
- Chromecast 硬體設備,我想你只需要串流媒體(伺服器1)在正確的 IP/連接埠和 codex 上。
- 透過 Chrome 進行 Chromecast(以及串流媒體(伺服器1) 和 Chrome 充當客戶1和電視的串流媒體,可能不需要)。
關於多播保留的 IP (IPv4) 的注意事項:
IP位址由 IANA 保留用於多播本地都在這個範圍內
239.0.0.0-239.255.255.255 組織-本地範圍 [David_Meyer][RFC2365] 1997-01-01
答案2
這不是我的主意,而是哈斯塔的主意回答。然而,我陷入了一些陷阱,所以我想我會分享我的問題和我找到的解決方案。其他人可能有更好的想法,但這可行。
VLC 似乎將設定儲存vlc-qt-interface.ini
到AppData\Roaming\vlc
.如果切換渲染器,它將切換兩個實例。因此,需要兩個Windows用戶,我新增了一個chromecast
用戶。
"C:\Program Files\VideoLAN\VLC\vlc.exe" movie.mkv --sout-all --sout="#rtp{dst=239.255.100.100,port=5004,mux=ts}"
。 IP 位址是不是你的wifi或類似的東西,它是一個多播位址。它需要在 224.0.0.0 到 239.255.255.255 的範圍內,否則您將無法連線到多個客戶端。看來您可以自由選擇您選擇的地址。"C:\Program Files\VideoLAN\VLC\vlc.exe" rtp://239.255.100.100:5004 --no-video
。這將在本地播放音訊。runas /user:chromecast "C:\Program Files\VideoLAN\VLC\vlc.exe rtp://239.255.100.100:5004 --sout "#chromecast" --sout-chromecast-ip=192.168.1.152 --demux-filter=demux_chromecast"
。我相信所有這些都是必需的,即使您只有一台 Chromecast。我不知道如何從 Chromecast 或 Chrome 獲取 IP——我從我的路由器找到了它。添加--no-audio
沒有任何效果,因為似乎整個音頻視頻都批發給了 Chromecast。將電視靜音。
.bat
要從中創建一個,這個答案有解決方案:在每個命令前面加上start /b
.
一個已知問題是暫停後 Chromecasting VLC 總是警告「此影片需要轉換」。這是一個主要缺點。
答案3
問題是透過Chromecast將視訊投射到電視上,但在藍牙揚聲器上單獨播放音訊。
解決方案 1:同步兩個應用程式
可以使用兩個應用程式播放同一視頻,一個用於視頻,另一個用於音頻,但這非常尷尬。雖然兩者一開始就可以輕鬆同步,但每次您暫停兩者時,它們都會不同步,因為您一次只能單擊一個。
VLC 在這裡很有用,因為它可以讓您跳到影片中的某個位置,這在同步兩個應用程式時至關重要。
這個設定非常簡單。詳細可以看文章
透過 Chromecast 播放影片並透過 PC 或 Mac 路由音訊。
解決方案 2:使用 HDMI 分配器
您可以使用 HDMI 音訊擷取器,其成本通常只有數十美元。該設備充當分離器,將 HDMI 分成單獨的視頻和音頻,以饋送兩套不同的設備。
設定如下:
- Chromecast 插入音訊擷取器的 HDMI 輸入端口
- 媒體透過無線方式從 PC 傳輸到 Chromecast
- 音訊擷取器透過 RCA 型電纜將音訊傳送至揚聲器,或與揚聲器共有的任何其他連接方法
- 音訊提取器透過其 HDMI 輸出連接埠或與電視共有的任何其他方法連接到電視。
這可能不適用於所有設定以及所有類型的電視和音訊設備,特別是某些舊系統。因此,在選擇這些設備之一之前請仔細檢查您的規格。
由於不了解您的材料,並且從未使用過此類 HDMI 音訊提取器,因此我無法推薦任何特定設備。您可以發出 在amazon.com上查詢 並根據需要對其進行完善。
答案4
開啟 Google Chrome,將螢幕投射到電視上。開啟VLC,播放視頻,工具,效果和濾鏡,同步,延遲音頻約0.61秒。這對我有用。