最終的需求是以預先錄制的視頻,替換攝像頭輸入,作為視頻聊天內容傳送給對端。
目前初步想法:
1)開發一個類似與pc上的虛擬攝像頭app,虛擬攝像頭app在后臺播放視頻,并以此屏蔽攝像頭;
2)現在手機大都支持OTG 外接USB攝像頭,能否修改安卓底層配置,讓OTG攝像頭成為默認的攝像頭?
請高手們給點建議,怎么做更合理?或者有沒有其它辦法?謝謝!
uj5u.com熱心網友回復:
你好,我正在研究系統視頻替換,不過我是想直接修改系統原始碼,重新編譯覆寫原先的庫,當然,兼容性可能是個問題。有機會加我QQ交流:3617 28654uj5u.com熱心網友回復:
你還在研究這個嗎?加你qq被拒了啊
uj5u.com熱心網友回復:
1,有一種幾乎不需要多少技術的方案,就是采用模擬器然后進行視頻聲音的替換,但是有些麻煩和繁瑣2,深入到程式底層,直接找到介面接收和發送視頻,需要一定的逆向作業
補充于2017.03.16:前后有3個朋友找到我交流這個事情,我終于決定徹底解決這個問題。理論上,我們可以分很多種情況很多種辦法來解決這個問題,就是對于任何app都能替換。
1:沒有root的機器,我們修改替換每一個app中的視頻相關介面jni層或者java層,這個費時費力,而且不通用。而且還有隨時有被宿主程式檢測到程式不完整的風險。
2,沒有root的機器,我們用第三方虛擬啟動app的方法,這方面類似LBE平行空間,前期需要做的作業量巨大,但是一旦做好框架,那么任意的app都能在此框架下運行,修改so,修改java方法,隨心所欲。
3,root后的機器,我們可以加載驅動或者重新編譯系統庫,最后我采用的就是這種辦法,這樣能保證最大程度地還原app真實運行場景,不造成任何干擾。測驗結果顯示效果良好,對于QQ視頻等應用可以替換,但是對于系統自帶的錄像卻沒能替換,所以我估計系統錄像有2-3條路徑。
補充于2017.03.23:經過多天查看原始碼,基本找到了90%的視頻介面。從中可以發現,android對于視頻錄制的一些設計:如果你只是想把正在播放的視頻錄制下來,那么android就完全拋棄速度的考量,而層層打包,你需要做的就是發出一個錄制并保存視頻的指令(至于檔案的保存是不是可以直接在service中完成不清楚)。如果你要在視頻播放的時候處理每一幀影像,甚至加上濾鏡,那么android給你準備的一套貼近底層的方式,因為影像的資料量太大了,所以盡量避免反復挪動和拷貝,android就選擇在影像繪制前夕的一些點作為插入,從而滿足你的需求,又保證整個播放的路徑還是那個路徑,不增添新的的路徑。
補充于2017.04.05:基本上已經解決了所有的視頻替換的問題,不過有一點遺憾的地方就是對于一些人臉認證的app雖然后臺的視頻已經替換了,但是顯示的還是真實的影像,后來我估計是因為這些認證app為了保證兼容性,而用了android錄像最古老的方式(系統自帶相機功能都不用這套機制了),用surface holder 來承載錄像的功能,雖然叫holder,但是卻沒能hold,整個視頻預覽的資料雖然經過了app,但是這絕對僅僅是路過而已,可以讓app窺探一下,但是絕不允許你修改,僅僅是能共享讀而已,但是話又說回來,既然僅僅是路過,就說明android完全沒有想過視頻資料被app修改而必須同步的問題,所以直接經過service與攝像頭打交道,保證最佳的預覽速度,那holder所hold的是什么,應該是hold了錄像的引數設定,就是說你可以hold攝像機的引數,hold拍攝的影像大小、幀率、格式,但是因為早期的硬體問題,這套機制就是用來快速預覽視頻的。要想替換這個預覽顯示,應該必須修改service的代碼,當然修改驅動也是可以的,但是對于沒有原始碼的機器這兩者的修改都要慎重,不僅僅是兼容性的問題,而且不小心就啟動不了機器。
這個是我花椒直播的射雕英雄傳,聲音也基本是同步的
http://www.huajiao.com/user/98039432
請加我的朋友寫明來意,發廣告的號太多了。
uj5u.com熱心網友回復:
請通過一下 謝謝uj5u.com熱心網友回復:
本人小白,對安卓構架一竅不通。但是,對于在安卓系統的視頻交友軟體上,使用非真實攝像頭,我有過實際操作。在PC端裝安卓虛擬機,PC系統用vcam之類的虛擬攝像頭,這樣就可以投射照片,桌面,或者視頻之類的。
我覺得,手機安卓硬體系統幾號沒有什么可可擴展性,所以,如果不root,虛擬攝像頭無法實作。即使實作,也要占用一個真實攝像頭的地址,改來改去的很容易出錯。
我的思路是,坐一個安卓系統下的安卓模擬器,用模擬器運行社交視頻軟體。加一個殼后,想怎么改都很容易了,同時可以繞過root。
安卓系統的安卓模擬器就是一個殼,只需鏈接軟體和系統,只是在鏈接攝像頭時,鏈接到虛擬攝像頭。
uj5u.com熱心網友回復:
這個技術已經實作了,有想繼續了解效果和用途的小伙伴可以加下企鵝3 2 9 0 3 8 9 2查看空間uj5u.com熱心網友回復:
目前已經實作了小米2虛擬視頻手機小米2s虛擬視頻手機小米4虛擬視頻手機小米手機攝像頭替換安卓系統攝像頭替換uj5u.com熱心網友回復:

提供此技術,需要的可以加我VX:bmwxiaojian
uj5u.com熱心網友回復:
去年制作了刷機包,針對小米2s和米4,視頻是放在/sdcard/my/34.mp4 下的,后經轉手,網路上已經泛濫了。百度上的很多資訊已經被人復制拷貝放到比如百度經驗,百度問答上,個人網站上。算是一個小小的悲劇吧,現在僅有的一點訊息就是能從時間上看出端倪來。uj5u.com熱心網友回復:
后來又制作了一款虛擬視頻app,當然沒有做什么保護,被人改頭換面也放到了百度相關頁面上。這款app支持的手機多一些,不過還是有很多手機不能用,7.0及其以上系統都不能用。uj5u.com熱心網友回復:
這個我暫時只能實作一些手機上可用的app,兼容性不太好,也可以實時切換幾個準備好的視頻。但是無法有效檢測用戶使用狀態,如果被人用于刷臉等業務,可能會造成壞的影響。如果希望交流可以加我扣:3617 28654 加入請詳細注明來意,因為廣告太多。uj5u.com熱心網友回復:
貌似這個功能是做一些另類的用途uj5u.com熱心網友回復:
做這個用途值得懷疑uj5u.com熱心網友回復:
這個動機值得懷疑 , 非 root 不容易實作 ;例如 : 支付寶 刷臉 支付 , 各種刷臉 解鎖 的 應用 ;
uj5u.com熱心網友回復:
安卓上也有虛擬攝像頭軟體 最近才發現的,還能QQ視頻 給力www.jianshu.com/p/2a9af2918e11
uj5u.com熱心網友回復:
root的系統純軟體就能實作,可以看看這個 。https://pan.baidu.com/s/1bDlVKItp9clFFb7Je2WabAuj5u.com熱心網友回復:
很喜歡這款應用 有沒有更好的通用版的uj5u.com熱心網友回復:
可以加一下好友嗎?qq加你了uj5u.com熱心網友回復:
可以參考這個:https://blog.csdn.net/u011818582/article/details/106213237轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/30539.html
標籤:Android
