Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> 基於 Android 的 3D 視頻樣本代碼

基於 Android 的 3D 視頻樣本代碼

編輯:關於Android編程

作者: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="/uploadfile/Collfiles/20140522/20140522091910189.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

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved