[IOS/翻譯]Media Layer

來源:互聯網
上載者:User

[IOS/翻譯]Media Layer

Media layer包括映像,音像和視頻技術,在你的應用裡實現多媒體體驗。這些技術在這個層上能簡單使你建立的應用看起來更,聽起來更好。

圖形技術 Graphics Technologies

高品質的圖形式所有應用的重要部分之一,和IOS提供了許多技術來協助你自訂設計和圖形展示在螢幕上。IOS的圖形技術提供了廣泛的支援,無縫的運行在UIKit介面裡,和容易的展現出來。你可以快速的高品質的展示標準的介面裡,或者你可以建立你的個人化介面和使用以下技術來展示一個豐富的圖形體驗介面。

Graphics technologies in iOSUIKit圖形
UIKit支援進階別的繪製映像,Bézier路徑和應用中的動畫效果。另外,提供類實現繪製,UIKit介面提供一種快速和不同的方法來瀏覽圖片和基於文本的內容。應用可以使用動畫,不僅明確而且使用了UIKit的動力學。提供回調和提高使用者互動體驗。 Core Graphics framework 核心圖形庫 Core Animation 核心動畫 Core Image 核心映像 OpenGL ES and GLKit Metal TextKit and Core Text Image I/O Photos Library

IOS為啟動並執行應用,不論是Retina顯示,還是標準分辨路顯示,都提供內建方法。對於向量繪製,系統庫自動的使用了Retina螢幕像素顯示清晰的內容。如果你的應用中使用映像,UIKit提供支援自動載入高解析度的映像。在App Programming Guide for iOS裡的App-Related Resources。

Audio Technologies 音頻技術

IOS音頻與底層硬體為使用者提供一個豐富的音頻體驗。這個體驗包含顯示和記錄高品質的音頻,控制MIDI內容和為裝置播放內建的音效。
如果你想你的應用使用音頻,有許多技術提供給你使用,如以下

Audio technologies in iOSMedia Player framework AV Foundation OpenAL Core Audio

IOS支援許多工業標準和蘋果指定的音頻格式,包括

ACC 蘋果無損Apple Lossless(ALAC) A-law IMA/ADPCM (IMA4) Linear PCM μ-law DVI/Intel IMA ADPCM Microsoft GSM 6.10 AES3-2003Video Technologies 視頻技術

IOS視頻支援人員管理靜態視頻內容,和回放網路視頻流內容。具有記錄硬體的裝置,你可以記錄視頻和合并在應用裡。

Video technologies in iOSUIImagePickerController AVKit AV Foundation Core Media

IOS支援許多工業標準的視頻格式和壓縮標準

H.264 video, up to 1.5 Mbps, 640 by 480 pixels, 30 frames per second, Low-Complexity version of the H.264 Baseline Profile with AAC-LC audio up to 160 Kbps, 48 kHz, stereo audio in .m4v, .mp4, and .mov file formats H.264 video, up to 768 Kbps, 320 by 240 pixels, 30 frames per second, Baseline Profile up to Level 1.3 with AAC-LC audio up to 160 Kbps, 48 kHz, stereo audio in .m4v, .mp4, and .mov file formats MPEG-4 video, up to 2.5 Mbps, 640 by 480 pixels, 30 frames per second, Simple Profile with AAC-LC audio up to 160 Kbps, 48 kHz, stereo audio in .m4v, .mp4, and .mov file formatsAirPlayMedia Layer Frameworks

接下來的章節介紹的是媒體層的庫和它們提供的服務

列表 4.0 相片視頻 AssetsLibrary.framework (AL) 2.2 視頻模組 _AVFoundation.framework
_ (AV) 8.0 視頻播放(新) _AVKit.framework
_ (AV) 2.0 核心音頻 _CoreAudio.framework
_(Audio) 8.0 核心音頻Kit _CoreAudioKit.framework
_ (CA) 2.0 核心圖形 _CoreGraphics.framework
_ ( Guide) (CG) 5.0 核心圖畫 _CoreImage.framework
_ (CI) 3.2 核心欄位 _CoreText.framework
_ ( Guide) (CT) 4.0 核心視頻 _CoreVideo.framework
_(CV) 7.0 遊戲裝置連結 _GameController.framework
_ ( Guide) (GC) 5.0 OpenGL ES _GLKit.framework
_ (GLK) 4.0 映像IO ImageIO.framework(CG) 7.0 字幕 MediaAccessibility.framework(MA) 2.0 媒體播放器 MediaPlayer.frameworkGuide)(MP) 8.0 GPU Metal.frameworkGuide)( Metal Shading Language Guide)(MTL) 2.0 OpenAL音效 OpenAL.framework(AL) 2.0 OpenGLES OpenGLES.frameworkGuide)(EAGL, GL) 8.0 相簿 Photos.framework (PH) 8.0 相簿UI PhotosUI.frameworkGuide)(PH) 2.0 動畫 QuartzCore.frameworkGuide)(CA) 8.0 情境 SceneKit.framework(SCN) 7.0 精靈 SpriteKit.frameworkGuide)(SK)

4.0 相片視頻 AssetsLibrary.framework
進入管理相片和視頻,使用這個庫可以儲存相簿或者把相片儲存在裝置裡面,同也可以把新的照片和視頻儲存到系統的相簿裡。(AL)

2.2 視頻模組 _AVFoundation.framework
_
提供一些列OBJ-c的管理音頻和視頻的工具,如播放,記錄,管理等。這個庫具有無縫整合音像的能力,並且提供許多進階處理功能。例如,同時播放多個不同的聲音,控制多方面的回訪或記錄的過程。(AV)

管理Audio session,包括支援從系統獲得音頻功能的聲明 管理應用的音像資源 編輯音像內容 具有捕捉音像的能力 回放功能 音像追蹤管理 媒體單元的資料管理 立體播放模式 聲音間的精密同步 擷取音頻檔案的屬性,如資料格式,位元速率和聲道等 支援流播放,AirPlay

8.0 視頻播放(新) _AVKit.framework
_
在裝置上利用存在於AV Foundation的對象來管理視頻的示範功能。當你使用MediaPlayer.Framework來播放視頻內容可以使用它來取而代之。(AV)

2.0 核心音頻 _CoreAudio.framework
_
定義音頻資料類型。 (Audio)

8.0核心音頻Kit _CoreAudioKit.framework
_
提供標準的介面來管理應用間的音頻。一個提供類似應用選取器的介面,並且顯示其他應用的音像,使用者可以通過主應用開操作他們。(CA)

2.0 核心圖形 _CoreGraphics.framework
_ (Guide)
提供Quartz 2D的介面繪畫Api。在OS X開發中,Quzrtz表現出的能力同樣優秀,向量化繪畫引擎。這個庫提供路徑繪畫,渲染,漸層,圖片,顏色,座標空間轉化,PDF文檔建立,顯示和剖析等。這個Api是以C語言為基礎的。它基於對象來展示基礎的描繪對象,使得對象更容易儲存和顯示。(CG)

5.0 核心圖畫 _CoreImage.framework
_
為可操作錄音和靜態圖片提供了一系列強大的過濾器。你可以在拍下的映像,當前的映像,故事片或者二維碼方向上使用過濾器。使用這個過濾器的優勢在雩都是無損處理的,使得你的原始圖片不受到任何處理。因為這些過濾器都是裝置硬體提供最佳的效果,並且他們即不同又快速。(CI)

3.2 核心欄位 _CoreText.framework
_ (Guide)
提供一個簡單的,搞笑的,基於C語言的借口,來畫制欄位和處理字型檔。這個庫可以協助一些單詞應用在TextKit庫的情況,仍然可以使提升對欄位的處理能力。這個庫提供了複雜的欄位排版引擎,包括有自動換行。並且可以支援使用多種進階的字型庫,和具有渲染能力。(CT)

4.0 核心視頻 _CoreVideo.framework
_
包含最常規的可以操作的音頻和視頻。不要直接使用這個架構。(CV)

7.0 遊戲裝置連結 _GameController.framework
_ (Guide)
在你的應用,這個庫讓你發現和配置可以使用在iPhone,iPad,iPod的已經裝置上的遊戲硬體。這庫可以讓裝置物理性串連到一個IOS裝置上或者使用藍芽連結,當controllers可以使用,或者遊戲裝置輸入相關的命令, 設個庫會通知到你的應用。(GC)

5.0 OpenGL ES _GLKit.framework
_
包含一些列基於OBJ-c的聯合類,建立一個OpenGL ES app。(GLK)

GLKView 和GLKViewController類提供了一個標準可實現的OpenGL ES-enabled view,和渲染。這個View管理應用中的底層的幀緩衝,你的應用只是描繪他。 在應用中,GLKTextureLoader類提供了映像轉化和日常事件載入。允許載入紋理圖片到類容中。可以同步載入或者非同步載入紋理。當家在紋理同步時,紋理載入到內容中後,會發出完成通知Block。 GLKBaseEffect, GLKSkyboxEffect和 GLKReflectionMapEffect,提供已有的,可以配置的圖形著色器。使得使用一致的圖形操作。特別的是GLKBaseEffect類實現照明和材料模型在OpenGL ES 1.1 specification,這個效果能使用在1.1版本或以上的OpenGL ES。

4.0 映像IO ImageIO.framework
提供了介面匯入和匯出圖片資料,圖片中繼資料等。這個庫使用在核心映像資料處理,方法,支援所有顯示在IOS的標準圖片格式。同時你可以使用Exif和IPTC這兩映像格式。(CG)

7.0 字幕 MediaAccessibility.framework
在媒體檔案下管理字幕展示內容。這個庫工作在整合新設定下,使得使用者可以顯示字幕。(MA)

2.0 媒體播放器 MediaPlayer.frameworkGuide
在應用裡,播放高品質的音頻和視頻內容。(MP)

播放視頻的在使用者的介面上,或者通過AirPlay播放至裝置上。可以使用全屏或者調整比例大小的介面。 訪問使用者的iTune音樂庫。你可以播放音樂的軌道,列表,搜尋音樂,推出媒體Pircker到使用者介面。 配置和管理電影播放器 在鎖屏的介面上,顯示當前播放資訊。同時可以通過AirPlay在蘋果TV上顯示這些資訊。 在AirPlay 上檢測媒體流播放。

8.0 GPU Metal.frameworkGuide)(Metal Shading Language Guide
在極低消耗A7 CPU的情況下,能夠繪製出複雜的圖形和計算任務。這庫減少了很多效能瓶頸,例如,昂貴的狀態驗證–傳統的繪畫APIs。這個庫是專門針對這個問題設計的,彙編操作避開許多敏感代碼編寫的路徑代碼。提供了著色器先行編譯,對象狀態,和明確的指令來確定你的應用可以高品質和高效能上去使用你的GPU繪圖和計算任務。這個設計思想延展到工具上去建設你的引用。當你的應用正在Built,Xcode會整合庫的著色器到項目裡面的預設的庫裡,排除許多在運行上的準備成本。
繪圖,計算和位元運算都被設計在一起,使得運行時無縫與高效。Metal特別為現在的架構而設計的,例如多重處理和共用記憶體,使得他容易的執行GPU的命令。
在Metal下,你可以獲得一個流的API,一個統一的繪圖和計算紋理的語言,和Xcode的基礎工具,以至於你不需要要學習許多庫,語言和工具就可以在遊戲和應用裡提高GPU效能。(MTL)

2.0 OpenAL音效 OpenAL.framework
庫裡的介面提供了跨平台的音頻標準。你可以使用這開個庫在遊戲中來建立高品質,高效率的音效。或者其他程式需要輸出音頻。因為OpenAL是跨平台標準,在IOS上寫OpenAL代碼模組,很容易的移植到其他平台上。(AL)

2.0 OpenGLES OpenGLES.frameworkGuide
提供工具繪畫2D和3D內容,這是基於C語言的庫,工作時,與硬體裝置非常緊密,可以提供非常細微的紋理控制和高幀率的全屏應用,例如遊戲。這個庫可以與EAGL並行使用。EAGL介面給提供的介面在OpenGL ES drawing calls和介面之間。
這個庫支援OpenGL ES1.1,2.0,3.0等。2.0標準支援片段和頂點著色器和3.0標準增加了許多特性,包括多點描繪和變化反饋等。(EAGL, GL)

8.0 相簿 Photos.framework
提供新的APIs為圖片和視頻工作,包括iCloud相簿, 管理相簿的應用。這個庫可以替換 Assets Library framework。關鍵的特性是包含一個安全現成的驗證來捕捉,緩衝,原始大小的相簿,請求修改相簿,從其他應用注意到變化和可修複修改的相簿內容。
(PH)

8.0 相簿UI PhotosUI.frameworkGuide
在相簿應用裡,修改圖片和視頻相簿。(PH)

2.0 動畫 QuartzCore.frameworkGuide
包含了核心的動畫介面。核心動畫是一個進階的影像合成技術。能容易的建立以View為基礎的動畫,動畫效果流暢並且可以有不同複雜的組合。影像合成引擎在硬體的協助下,使得動畫內容不同並且即時運行。指定了動畫的開始和結束的關鍵點,也可以使核心動畫暫停。核心動畫是在建立在UIView下一層次,所以能總是運行。(CA)

8.0 情境 SceneKit.framework
SceneKit是一個OBJ-c庫,為簡單的遊戲,豐富的3D映像使用者介面提供進階高效能的閱讀引擎,描寫性API。SceneKit面向OS X v10.8和IOS。比較低層級的APIs,如OpenGL ES 需要你實現精確表現演算法來顯示一個情境。和SceneKit對比,SceneKit可以讓你描述自己的情境,依據自己的情境內容—幾何學,物件,光源和角度—使其生動有趣來描述對象的變化。
SceneKit的3D物理引擎是你的應用或者遊戲變得生動來類比重力,攻擊,硬質物體的碰撞,和關節連結。添加進階別的行為,來使得更加容易的使用物體移動,如會車輪轉動汽車在一個情境裡面行駛,和添加一個物理地區使得物體有重力的效果,電磁學,或者在一個地區裡流淌的物體的影響。(SCN)
使用OpenGL ES新增內容到一個情境裡面,或者提供GLSL工具來替換或正大SceneKit的表現。你還可以增加基於著色的後處理技術到SceneKit的表現裡,例如顏色分層,介面的空間環境遮罩。

7.0 精靈 SpriteKit.frameworkGuide
([Media Layer Frameworks][4])
提供一個為2D和2.5D的硬體加速的動畫系統。SpriteKit提供許多遊戲的基本控制項,包括動畫引擎,映像渲染,音效,和物理引擎等。使用SpriteKit你可以免去自己建立這些,是你更專心與你設計的遊戲內容,和遊戲中的進階別遊戲互動。
遊戲內容在SpriteKit裡,會組織成為一個情境。情境包括紋理對象,視頻,路徑,核心圖片檔案和別的特別效果。SpriteKit把這些東西以最好的效果展現在螢幕上。當在你的情境上使用這些,你可以使用SpriteKit可以明確的設定你想要的動作或者使用物理引擎來定義特定的物理效果。
除了這個庫以外,也提供建立粒子效果和紋理地圖的Xcode工具。你可以使用這些工具來管理應用的資源和快速升級SpriteKit的情境。(SK)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.