作者:Mark Liu
下載樣本代碼
簡介
vcPmyc+ypbfFoaM8L3A+CjxwPrjD06bTw9Do0qq94r72yP2088q1yqnOyszio7o8L3A+CjxvbD4KPGxpPsjnus65ub2otPrC69LU1qez1tPDu6fU2rKlt8XK08a1yrGx5Lj8IDNEIMa9w+ajvzxsaT7L5Mi7IEFuZHJvaWQg1tDErMjPtcQgTWVkaWFQbGF5ZXIgxeSxuMHLyKvD5rXEsqW3xbLZ1/ejrLWrysfE0dLUu/G1w8rTxrXNvM/xyv2+3bKi0tS2qNbGtcS3vcq9ttTG5L340NDk1si+oaM8bGk+yOe6zsnovMbNvNDO1+m8/tLU1rTQ0MrTxrXK/b7d5NbIvqO/CjxwPrTLzeKjrLjD06bTw7u5w+bB2cnosbi5psTctcTM9NW9o6zS8s6qy/zQ6NKqytPGtbrNzbzQzrbUz/PNrMqx1MvQ0KGjsb7OxL2rttS4w7/u06bTw7XEzNjQ1LrNyrnTw7340NC96cnco6zIu7rzttTG5MnovMa9+NDQvPLSqrXEvenJ3KGjPC9wPgo8aDI+CszY0NQ8L2gyPgo8cD64w9Om08O+37G40tTPwszY0NSjujwvcD4KPG9sPgo8bGk+y/zWp7PW08O7p7TTxuSxvrXYw73M5b/i1tDRodTxytPGtbz0vK2hozxsaT64w9Om08PWp7PWuuHP8rrN193P8sG91ta3vc/yo7u1sbe9z/LXqru7yrGjrMrTxrXE3Lm7s9bQ+LKlt8WhozxsaT7L/L/JzOG5qcj91taypbfFxKPKvaO6CjxvbD4KPGxpPsSsyM/Eo8q9o7rV4srHs6O55rKlt8XEo8q9o7vK08a1vPS8rcjnzazU2rOjuebDvczlsqW3xcb31tDSu9H5sqW3xaGjPGxpPsvmu/rQ/deqo7rK08a1tcTGvcPmv8nL5rrhz/K6zdfdz/LL5rv60P3XqqO7xuTR1cmr0rK/ydTauuzJq8mrtfe6zdX9s6PR1cmr1q685MfQu7uhozxsaT60pcP+0P3XqqO608O7p7/J0tTKudPDtKXD/rmmxNzP8tfzoaLT0rustq+yotD916rGvcPmo6y+38zlyKG+9tPay9m2yKGjPGxpPrWxvavTptPD0sa2r9bBuvPMqLvyudix1cqxo6y/yb2rtbHHsLXEytPGtbz0vK2xo7TmsqLU2tOm08PW2NDCvKS77sqxvfjQ0LKlt8WhowoKPHA+16KjutOm08PW0MO709DK08a1u+G7sL/Y1saju9LytMvTw7unzt63qM2j1rmhor/svfi78rvYt8XK08a1oaPI57n7vavTptPD0sa2r9bBuvPMqLvyudix1aOsytPGtda7xNy00823v6rKvLKlt8WhozwvcD4KPGgyPgrKudPDxKPKvTwvaDI+CjxoND4Kv6rKvLKlt8XK08a1vPS8rTwvaDQ+CjxwPrjD06bTw860sPy6rMjOus7K08a1o6zS8rTL08O7p7/J0tTRodTxIEFuZHJvaWQgxr3MqNans9a1xMjO0uLK08a1vPS8rb340NCypbfFoaO1q8rHo6y9qNLpyrnTw7LJ08MgSC4yNjRBVkMgseC94sLrxvfS1CBNUEVHLTQgserXvLSmwO21xMrTxrWx4Lyto6zS8s6qztLDx9Tav6q3osqxyseyydPD1eLW1iYjMjY2ODQ7yr2ho9Om08PK17TOxvS2r8qxo6y9q7vhz9TKvs7EvP7RodTxxve958Pmo6jH67z7yc/Su9KztcS92M28o6mhozwvcD4KPHA+08O7p9Gh1PHK19GhtcTOxLz+0aHU8cb3uvOjrM+1zbO9q7vhzOG5qcbBxLvWuMq+oaPRodTxytPGtbz0vK2686Osvau/qsq8sqW3xaGjPGJyPgrXoqO609DKsaOsytPGtb+qyrzHsNDo0qq1yLT90ru2zsqxvOQgoaog1LwgNSB+IDEwIMProaM8L3A+CjxoND4K0aHU8bK7zay1xMSjyr08L2g0Pgo8cD7TptPDv6rKvLKlt8XKscrHyrnTw7OjuebEo8q9oaPI59KquPy4xMSjyr2jrNPDu6e/ybXju/cgVUkgyc+1xNGhz+6wtMWlo6zG9Lav0aHP7rLLtaWhozwvcD4KPHA+0aHP7rLLtaXT0MvEuPbRoc/uo7rHsMj9uPbKx7Klt8XEo8q90aHP7qO71+6689K7uPbRoc/uv8nWp7PW08O7p9Gh1PGyu82stcTK08a1vPS8raGjPC9wPgoKPHA+PGltZyBoc3BhY2U9"10" src="http://www.bkjia.com/uploads/allimg/140525/0123434I4-1.jpg" alt="\">
隨機旋轉
該選擇可支援渲染視頻的平面隨著橫、縱軸呈 3D 效果隨機旋轉。此外,它還可定期在螢幕上呈現紅色色調。
觸摸旋轉
在觸摸旋轉模式中,使用者可以向左、右滑動,從而讓平面沿著縱軸左、右旋轉。當滑動更快時,旋轉將會加快;當使用者停止滑動時,旋轉將會隨之減速。
設計
該應用中的三個主要組件包括:為使用者提供互動式應用示範的 UI 組件;進行視頻播放的視頻組件;渲染視訊框架緩衝區並在特殊模式下建立 3D 效果的OpenGL* 平面。
該視頻播放組件有兩個線程。視頻引擎線程使用MediaCodec 類。該類在 Android JellyBean 版本(API 16)中推出。它可以提供低層級的 Android 媒體架構 API,因此您可以在幀層面控制播放。在每個視訊框架上,圖形組件可以控製圖像資料,並更改渲染映像的方式。
此外,播放組件還可執行播放視訊剪輯音軌的音頻引擎線程。為使視頻和音頻線程同步,從而讓人物的口型與其說出的聲音相匹配,我們實施了 AV 同步演算法。視頻播放可使其時間戳記與音頻時間戳記時刻保持一致。它可以對播放速度進行微調,以便將視訊框架控制在 30 毫秒的時間範圍內。
圖形組件可添加一個 GLSurfaceView,從而在該類中嵌入一個定製的渲染類。渲染類可實施渲染器介面來執行 OpenGL 渲染演算法。該演算法可在紋理平面上實施 3D 旋轉效果,還可根據使用者的輸入將模式更改為其他演算法。
在渲染器中,對視訊框架旋轉和著色是通過一個簡單的頂點和像素著色器來控制的。視頻平面的旋轉通過應用一系列的歐拉角旋轉來實現。幀的著色通過將視訊框架內容與固定顏色(在本案例中為紅色)在像素著色器中進行線性混合來實現。
此外,圖形組件還可用作視頻引擎的視訊框架監聽器,並可在實施過程中傳送至 MediaCodec 對象,這樣每當有可用幀時便可調用渲染功能。圖形組件可在 UI 組件中提供一個選項,這樣使用者便能夠更改播放模式。
MediaCodec 編解碼流程與視訊框架保持同步,圖形組件中的渲染器功能與圖形幀保持同步。因此,當訪問框架緩衝區時,兩個組件中的功能必須保持同步。
相關連結與資源:
- 將 OpenGL* 遊戲移植到基於英特爾淩動處理器的 Android* 系統
- 英特爾架構上的 Android* MediaPlayer 樣本代碼走查
- 英特爾處理器顯卡上的 3D 遊戲
- 英特爾 Android* 開發人員專區
如要瞭解更多為 Android 開發人員提供的英特爾工具,請訪問:。
作者簡介Mark Liu 是英特爾超可攜式裝置事業部 (Intel Ultra-Mobile Group) 的軟體工程師,負責開發基於 Android 裝置的驗證架構。此外,他還參與英特爾超可攜式裝置事業部的多個其他 Android 項目,包括智能手機和平板電腦裝置。他所做的大部分工作都與媒體播放、視頻會議和軟體棧效能調優相關。
加入英特爾軟體和裝置事業部基於英特爾? 淩動? 處理器的裝置軟體支援小組後,他負責多項不同的任務,包括 Android 樣本媒體應用的開發、Windows* 8 媒體架構的系統最佳化以及用於編寫媒體應用的文檔。
Chris Kirkpatrick 是英特爾軟體與服務事業部的軟體工程師,負責為視覺與互動式計算工程設計團隊提供英特爾圖形解決方案開發支援。他擁有俄勒岡州立大學電腦科學理學士學位。
分類:
| video3d.zip (115.71 KB)Download Now |