簡體   English   中英

在Java Applet中捕獲用戶的聲卡輸出

[英]Capturing the user's sound card output in a Java Applet

我正在尋找一種捕獲用戶聲卡輸出並通過RTMP實時將其流式傳輸到Red5服務器的方法。

不能選擇使用音頻重定向,例如Windows Stereo Mix,因為它很難配置,並且在配置和Windows版本之間無法始終如一地工作。

我願意朝這個方向提供各種解決方案-甚至使用JNI / JNA嗎?

感謝您的建議!

如果您願意使用JNI / JNA,為什么不通過C ++或C訪問聲音驅動程序,這會容易得多,因為無論如何您都將用Java編寫接口,但是它們的實現將在C ++或C中進行。

請參閱Java教程中的捕獲音頻

在可能截取聲線中的數據之前,必須對小程序進行數字簽名並得到最終用戶的信任。

如果未啟用任何軟件或硬件“音頻環回”,則它可能會完全失敗(即使在完全受信任的applet中)。

這看起來並不簡單。

您需要做什么[第1部分-創建一個存儲信息的地方]:

  • 描述服務器,文件存儲位置。 (例如:Google App Engine)
  • 描述您要如何存儲文件。 (例如:數據存儲)
  • 描述數據完整性的重要性。 (例如:使用現有的上載api上載文件然后流傳輸數據更容易。示例Apache FileUpload)

假設您要上傳到服務器數據庫的文件(例如.ogg)音頻文件的最大大小為1 mb。 如果要創建自動化上載器,則還可以創建一個可以手動使用的網頁前端。

如果您想回答問題,然后形成清晰的問題,人們可以回答。 如果您未指定限制,則說明它是IMO非專業人士,至少我永遠不會寫一個復雜的解決方案。


抱歉,我的最初答案對您沒有用。 我試圖簡化問題,但是我簡化了。 "Everything should be made as simple as possible, but not simpler." A. Einstein.

為了解決您的問題,我建議:

  • Screener-一個Java程序,它不僅流音頻,還包括截屏視頻。 在此處輸入圖片說明

如果它不能解決您的問題,那么我希望它至少對您有用。

好的-在Java中,絕對沒有本地方法可以捕獲從瀏覽器輸出的聲卡。 可以使用Java Native Interface編寫特定於平台的代碼來截取該行,並將原始音頻數據傳遞到applet進行進一步處理。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM