国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

google vr 入門之制作簡易的VR播放器(三)

這篇具有很好參考價值的文章主要介紹了google vr 入門之制作簡易的VR播放器(三)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

先看一下效果圖,如果對google vr有一定了解的朋友,會對這種效果感興趣的!(將我們的控制界面添加到VR模式中,目前單純的集成google vr肯定是做不了這種效果的)

google vr視頻播放共有三種模式,我們可控制的只有第一種模式,其它兩種模式我們可以調(diào)用api進(jìn)入這種模式,僅此而已。

三種模式的官網(wǎng)鏈接

我的前兩篇google vr入門博客中使用的就是第一種模式,它不是全屏的,從它的命名EMBEDDED,我們知道它是用來嵌入到某一個布局頁面中的,雖然我們可以用這種模式做出全屏的效果,但這不是我們想要的VR!!!真正的VR是2、3這兩種模式。

讀者可能會想,我們可以通過setDisplayMode (int newDisplayMode)方法進(jìn)入2、3模式啊!沒錯,可以(之前的兩篇博客中都是這么做的),這種做法與我今天給出的效果有以下區(qū)別:

1.全屏模式(2或者3)中沒有控制界面,即不能在全屏模式下控制視頻的暫停,進(jìn)度等;

2.由模式1切換到全屏模式(2或者3)屏幕會閃一下,黑閃一下,切換很不流暢;

3.不能從全屏模式(2或者3)直接退出播放,默認(rèn)從全屏退出只能退到模式1。

以上三點(diǎn)我們之前的兩篇博客中都做不了,但是現(xiàn)在我們可以做到了,并不是又發(fā)現(xiàn)了什么新的api,而是我經(jīng)過研究分析之后反編譯了google vr其中一個包中的源碼,目前來看,不改源碼上面的三點(diǎn)還是實(shí)現(xiàn)不了的。

我們先看看我們使用google vr在build.gradle文件中添加了哪些依賴包

// 使用google vr 添加的

compile ‘com.google.vr:sdk-base:1.40.0’

compile ‘com.google.vr:sdk-audio:1.40.0’

compile ‘com.google.vr:sdk-videowidget:1.40.0’

添加這些依賴包之后google給我們的生成了哪些library庫呢?

我們看到共生成了5個library庫,我們反編譯藍(lán)色背景的這個,并且做一系列的修改,再結(jié)合我們之前的播放器把播放控制頁面添加到VrWidgetView里面的一個innerWidgetView上便可以了。

下面是VrWidgetView中的init()方法(它是VrWidgetView的核心方法,也是我們主要需要改動的)

private void init() {

this.displayMode = 1;

this.viewerParamsProvider = VrParamsProviderFactory.create(getContext());

this.sensorsHelper = new TrackingSensorsHelper(getContext().getPackageManager());

boolean z = (this.sensorsHelper.areTrackingSensorsAvailable() || this.sensorsHelper.showStereoModeButtonForTesting()) ? true : DEBUG;

this.isStereoModeButtonEnabled = z;

this.isFullscreenButtonEnabled = true;

this.isInfoButtonEnabled = true;

this.isTouchTrackingEnabled = true;

this.isTransitionViewEnabled = true;

this.screenOnFlagHelper = new ScreenOnFlagHelper(this.activity);

Display display = ((WindowManager) getContext().getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();

this.displayMetrics = new DisplayMetrics();

display.getRealMetrics(this.displayMetrics);

initializeRenderingView(display.getRotation());

this.innerWidgetView = new FrameLayout(getContext());

this.innerWidgetView.setId(R.id.vrwidget_inner_view);

this.innerWidgetView.addView(this.renderingView);

//播放器控制界面

View inflate = View.inflate(getContext(), R.layout.vr_player_control, null);

innerWidgetView.addView(inflate);

setPadding(0, 0, 0, 0);

addView(this.innerWidgetView);

this.orientationHelper = new OrientationHelper(this.activity);

this.fullScreenDialog = new FullScreenDialog(getContext(), this.innerWidgetView, this.renderer);

//為解決點(diǎn)擊系統(tǒng)back鍵退出播放器而加

this.fullScreenDialog.setOnKeyListener(new DialogInterface.OnKeyListener() {

@Override

public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) {

if (keyCode == KeyEvent.KEYCODE_BACK && mPlayerActivity != null) {//監(jiān)聽dialog返回鍵,并作相應(yīng)的處理

//解決播放視頻時,QQ來電后,進(jìn)入QQ界面,點(diǎn)擊返回退出播放的問題

boolean finish = fullScreenDialog.dialogIsFocus();

//是否退出播放器取決于dialog是否失去焦點(diǎn)(失去不退出)

mPlayerActivity.performBackPressed(finish);

if (!finish) {

//dialog失去焦點(diǎn)未退出播放器,將焦點(diǎn)標(biāo)記改為true,已經(jīng)從其他應(yīng)用返回到播放器界面了

fullScreenDialog.setDialogIsFocus(true);

return true;

}

}

return false;

}

});

this.uiView = inflate(getContext(), R.layout.ui_view_embed, null);

this.viewRotator = new ViewRotator(getContext(), this.uiView, getScreenRotationInDegrees(display.getRotation()), this.sensorsHelper.areTrackingSensorsAvailable());

this.innerWidgetView.addView(this.uiView);

this.innerWidgetView.addView(new View(getContext()));

this.vrUiLayer = new UiLayer(getContext());

this.vrUiLayer.setPortraitSupportEnabled(true);

this.vrUiLayer.setEnabled(true);

this.innerWidgetView.addView(this.vrUiLayer.getView());

自我介紹一下,小編13年上海交大畢業(yè),曾經(jīng)在小公司待過,也去過華為、OPPO等大廠,18年進(jìn)入阿里一直到現(xiàn)在。

深知大多數(shù)初中級Android工程師,想要提升技能,往往是自己摸索成長或者是報(bào)班學(xué)習(xí),但對于培訓(xùn)機(jī)構(gòu)動則近萬的學(xué)費(fèi),著實(shí)壓力不小。自己不成體系的自學(xué)效果低效又漫長,而且極易碰到天花板技術(shù)停滯不前!

因此收集整理了一份《2024年Android移動開發(fā)全套學(xué)習(xí)資料》,初衷也很簡單,就是希望能夠幫助到想自學(xué)提升又不知道該從何學(xué)起的朋友,同時減輕大家的負(fù)擔(dān)。

google vr 入門之制作簡易的VR播放器(三),程序員,vr,json

google vr 入門之制作簡易的VR播放器(三),程序員,vr,json

google vr 入門之制作簡易的VR播放器(三),程序員,vr,json

google vr 入門之制作簡易的VR播放器(三),程序員,vr,json

google vr 入門之制作簡易的VR播放器(三),程序員,vr,json

既有適合小白學(xué)習(xí)的零基礎(chǔ)資料,也有適合3年以上經(jīng)驗(yàn)的小伙伴深入學(xué)習(xí)提升的進(jìn)階課程,基本涵蓋了95%以上Android開發(fā)知識點(diǎn),真正體系化!

由于文件比較大,這里只是將部分目錄截圖出來,每個節(jié)點(diǎn)里面都包含大廠面經(jīng)、學(xué)習(xí)筆記、源碼講義、實(shí)戰(zhàn)項(xiàng)目、講解視頻,并且會持續(xù)更新!

如果你覺得這些內(nèi)容對你有幫助,可以掃碼獲?。。。▊渥ⅲ篈ndroid)

google vr 入門之制作簡易的VR播放器(三),程序員,vr,json

總結(jié)

我最近從朋友那里收集到了2020-2021BAT 面試真題解析,內(nèi)容很多也很系統(tǒng),包含了很多內(nèi)容:Android 基礎(chǔ)、Java 基礎(chǔ)、Android 源碼相關(guān)分析、常見的一些原理性問題等等,可以很好地幫助大家深刻理解Android相關(guān)知識點(diǎn)的原理以及面試相關(guān)知識

這份資料把大廠面試中常被問到的技術(shù)點(diǎn)整理成了PDF,包知識脈絡(luò) + 諸多細(xì)節(jié);還有 高級架構(gòu)技術(shù)進(jìn)階腦圖 幫助大家學(xué)習(xí)提升進(jìn)階,也節(jié)省大家在網(wǎng)上搜索資料的時間來學(xué)習(xí),也可以分享給身邊好友一起學(xué)習(xí)。

這里也分享給廣大面試同胞們,希望每位程序猿們都能面試成功~

Android 基礎(chǔ)知識點(diǎn)

google vr 入門之制作簡易的VR播放器(三),程序員,vr,json

Java 基礎(chǔ)知識點(diǎn)

google vr 入門之制作簡易的VR播放器(三),程序員,vr,json

Android 源碼相關(guān)分析

google vr 入門之制作簡易的VR播放器(三),程序員,vr,json

常見的一些原理性問題

google vr 入門之制作簡易的VR播放器(三),程序員,vr,json

騰訊、字節(jié)跳動、阿里、百度等BAT大廠 2019-2020面試真題解析

google vr 入門之制作簡易的VR播放器(三),程序員,vr,json

《Android學(xué)習(xí)筆記總結(jié)+移動架構(gòu)視頻+大廠面試真題+項(xiàng)目實(shí)戰(zhàn)源碼》,點(diǎn)擊傳送門即可獲??!

[外鏈圖片轉(zhuǎn)存中…(img-EHxHHlBA-1711858907567)]

騰訊、字節(jié)跳動、阿里、百度等BAT大廠 2019-2020面試真題解析

[外鏈圖片轉(zhuǎn)存中…(img-j2Vlojgr-1711858907567)]文章來源地址http://www.zghlxwxcb.cn/news/detail-849274.html

《Android學(xué)習(xí)筆記總結(jié)+移動架構(gòu)視頻+大廠面試真題+項(xiàng)目實(shí)戰(zhàn)源碼》,點(diǎn)擊傳送門即可獲取!

到了這里,關(guān)于google vr 入門之制作簡易的VR播放器(三)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 分享VR眼鏡加密播放器OEM方案

    分享VR眼鏡加密播放器OEM方案

    隨著科技的發(fā)展,電子成品更新?lián)Q代很快,用戶的娛樂工具也更加多樣化,從電腦、手機(jī)、平板在到現(xiàn)在使用越來越多的 VR眼鏡 ,給用戶的體驗(yàn)也越來越多樣。而對于內(nèi)容提供商來說,內(nèi)容是其競爭優(yōu)勢所在。那么如何做好視頻在VR眼鏡中的安全播放呢? 考慮VR眼鏡的特殊性

    2024年02月07日
    瀏覽(21)
  • C#制作簡易視頻播放器

    C#制作簡易視頻播放器

    1.打開vs2019新建一個窗體項(xiàng)目,選用框架.net framework4.7.2 2.在【工具箱】里隨便選中一個控件,右鍵單擊它 看到圖片中的【選擇項(xiàng)】了嘛,單擊它,打開添加組件的一個窗體 在添加組件窗體中的【COM組件】中找到【W(wǎng)indow Media Player】組件并勾選,然后【確定】 3.可以看到我們的

    2024年02月12日
    瀏覽(27)
  • 測試C#調(diào)用Aplayer播放視頻(3:編寫簡易播放器)

    測試C#調(diào)用Aplayer播放視頻(3:編寫簡易播放器)

    ??學(xué)習(xí)了參考文獻(xiàn)1中的示例代碼,也找出了前一篇文章中自己測試控件但無法播放視頻的問題(沒有將解碼庫文件復(fù)制到可執(zhí)行程序所在的codecs文件夾內(nèi)),本文基于APlayer組件編寫簡單的視頻播放器,主要實(shí)現(xiàn)以下功能: 序號 功能 說明 1 自定義logo 調(diào)用SetCustomLogo函數(shù)設(shè)

    2024年02月05日
    瀏覽(39)
  • PyQt5實(shí)現(xiàn)簡易音樂播放器

    PyQt5實(shí)現(xiàn)簡易音樂播放器

    環(huán)境 vscode python 3.10.0 PyQt5 5.15.4 功能目標(biāo) 能夠讀取本地的音樂文件,并實(shí)現(xiàn)播放的開關(guān)、曲目的切換和音量的加減 具體實(shí)現(xiàn) 新建一個文件夾,在文件夾下再新建一個文件夾,命名為music,將歌曲放入其中。在vscode中打開該文件夾。 在QtDesigner中搭建出UI界面,并使用pyuic工具轉(zhuǎn)

    2024年02月13日
    瀏覽(17)
  • ChatGpt+人工修正 PyQt5 實(shí)現(xiàn)簡易視頻播放器

    支持功能: 1. 視頻播放速度調(diào)整 2. 視頻聲音調(diào)整 3. 視頻當(dāng)前播放幀截幀(用的ffmpeg 怎么裝自己百度去,截取準(zhǔn)確度很高,QT自帶的截幀那玩意信號不觸發(fā),不好使) 4. 視頻暫停

    2024年02月16日
    瀏覽(20)
  • 【Harmony OS】【ArkUI】ets開發(fā) 簡易視頻播放器

    前言:這一次我們來使用ets 的Swiper 組件、List 組件和Video 組件制作一個簡易的視頻播放器。本篇是以HarmonyOS 官網(wǎng)的codelab 簡易視頻播放器(eTS )為基礎(chǔ)進(jìn)行編寫。本篇最主要的內(nèi)容就是一個主界面包括頂部的視頻海報(bào)輪播,中部的視頻播放列表,以及點(diǎn)擊海報(bào)和播放列表進(jìn)

    2023年04月27日
    瀏覽(22)
  • 簡易但很實(shí)用的javaswing/gui音樂播放器

    簡易但很實(shí)用的javaswing/gui音樂播放器

    視頻瀏覽地址 很實(shí)用的一個javaswing音樂播放器??梢哉故靖杳弦磺乱磺?。 源碼下載地址 支持:遠(yuǎn)程部署/安裝/調(diào)試、講解、二次開發(fā)/修改/定制

    2024年02月08日
    瀏覽(12)
  • 【OpenCV+Qt】實(shí)現(xiàn)簡易視頻播放器——支持進(jìn)度條拖動

    【OpenCV+Qt】實(shí)現(xiàn)簡易視頻播放器——支持進(jìn)度條拖動

    OpenCV實(shí)現(xiàn)視頻播放器,其思路大致就是在線程中使用OpenCV中的VideoCapture循環(huán)讀取本地視頻的每一幀Mat,然后發(fā)送到界面轉(zhuǎn)換成QImage進(jìn)行顯示,而進(jìn)度條拖動則用到了VideoCapture中的set函數(shù),進(jìn)度條則是使用Qslider;并且通過自定義新的進(jìn)度條類實(shí)現(xiàn)點(diǎn)擊跳轉(zhuǎn)功能; 效果: 1.進(jìn)行

    2023年04月08日
    瀏覽(25)
  • Qt 實(shí)現(xiàn)簡易的視頻播放器,功能選擇視頻,播放,暫停,前進(jìn),后退,進(jìn)度條拖拉,視頻時長顯示
  • 038-第三代軟件開發(fā)-簡易視頻播放器-自定義Slider (二)

    038-第三代軟件開發(fā)-簡易視頻播放器-自定義Slider (二)

    : Qt 、 Qml 、 3 、 4 、 5 歡迎來到我們的 QML C++ 項(xiàng)目!這個項(xiàng)目結(jié)合了 QML(Qt Meta-Object Language)和 C++ 的強(qiáng)大功能,旨在開發(fā)出色的用戶界面和高性能的后端邏輯。 在項(xiàng)目中,我們利用 QML 的聲明式語法和可視化設(shè)計(jì)能力創(chuàng)建出現(xiàn)代化的用戶界面。

    2024年02月07日
    瀏覽(29)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包