APU13: Details und Roadmap für AMDs Media SDK

Kurz vor der Ent­wick­ler­kon­fe­renz APU13 hat­te AMD nicht nur die neue Ver­si­on 2.9 sei­nes Acce­le­ra­ted Par­al­lel Pro­ces­sing Soft­ware Deve­lo­p­ment Kit (APP SDK) ver­öf­fent­licht, son­dern par­al­lel dazu auch eine ers­te öffent­li­che Beta des neu­en Media SDK. Ursprüng­lich wur­de das Media SDK bereits ein Jahr zuvor auf der damals noch AFDS2012 genann­ten Ver­an­stal­tung ange­kün­digt, wobei eine öffent­li­che Beta für 2012 und die ers­te sta­bi­le Ver­si­on im Jahr 2013 in Aus­sicht gestellt wur­de. Offen­sicht­lich konn­ten bei­de Ter­mi­ne nicht ein­ge­hal­ten wer­den. Immer­hin sind in der Zwi­schen­zeit mit AMDs Screen­Mir­ror und Wire­less-Dis­play Lösun­gen ver­füg­bar, die auf der Arbei­ten am Media SDK basie­ren. Als wei­te­res Bei­spiel wird noch die Strea­ming-Anwen­dung Splash­top ange­führt, mit der sich bei­spiels­wei­se Com­pu­ter­spie­le vom Desk­top-Rech­ner auf ein Tablet strea­men las­sen. Amit Moo­ker­jee, Seni­or Mana­ger für Media Soft­ware Solu­ti­ons, hat die­ses Jahr erneut das Media SDK vor­ge­stellt und eine Road­map für die wei­te­re Ent­wick­lung gezeigt.

Mit dem Media SDK möch­te AMD den Ent­wick­lern eine ein­fa­che Pro­gram­mier­schnitt­stel­le (API: Appli­ca­ti­on Pro­gramming Inter­face) bereit­stel­len, mit der sich Mul­ti­me­dia-Anwen­dun­gen erstel­len las­sen, die dank hete­ro­ge­nem Com­pu­ting effi­zi­ent die haus­ei­ge­nen GPUs und APUs nut­zen. Dabei ste­hen nicht nur Schnitt­stel­len für die Ver­wen­dung der fest­ver­drah­te­ten Funk­ti­ons­blö­cke Uni­fied Video Deco­der (UVD) und Video Codec Engi­ne (VCE) bereit, son­dern auch Soft­ware­lö­sun­gen bei­spiels­wei­se für die Nach­be­ar­bei­tung von Vide­os (Ent­rau­schen, Kan­ten­an­he­bung, Bild­sta­bi­li­sie­rung, usw.).

Das Fun­da­ment inner­halb des Media SDK bil­det dabei das AMD Media Frame­work (AMF), was eine platt­form­un­ab­hän­gi­ge C++ API ist. Zunächst liegt der Fokus aller­dings auf der Unter­stüt­zung von Win­dows 7, 8 und 8.1, was auch die “Metro-Apps” ein­schließt. Hier­zu stellt das SDK auf dem AMF basie­ren­de Media Foun­da­ti­on Trans­forms (MFTs) für bestimm­te Anwen­dungs­fäl­le (bei­spiels­wei­se zum Deko­die­ren oder Enko­die­ren eines Video­streams) bereit, was der von Micro­soft defi­nier­te Indus­trie­stan­dard für Mul­ti­me­dia-Anwen­dun­gen inner­halb der Win­dows-Betriebs­sys­te­me ist. Soft­ware­her­stel­ler (ISVs) kön­nen dann für ihre Anwen­dun­gen belie­bi­ge MFTs mit­ein­an­der kom­bi­nie­ren. Wenn ein Ent­wick­ler sein eige­nes Mul­ti­me­dia Frame­work erstellt oder AMD-spe­zi­fi­sche Funk­tio­na­li­tä­ten nut­zen kön­nen möch­te, ist auch eine direk­te Ver­wen­dung des AMF möglich.

Laut AMD kann die­ses Frame­work prin­zi­pi­ell auch für ande­re Betriebs­sys­te­me genutzt wer­den, um bei­spiels­wei­se unter Linux ent­spre­chen­de Kom­po­nen­ten für Open­MAX oder GStrea­mer zu ent­wi­ckeln. Zu Android wur­de kei­ne spe­zi­el­le Aus­sa­ge getätigt.

Mit dem ers­ten Release stellt AMD MFTs bereit, mit denen UVD und VCE zur De- und Enko­die­rung von Vide­os ver­wen­det wer­den kön­nen. Außer­dem ist das Video Qua­li­ty MFT ent­hal­ten, mit denen sich die vom Cata­lyst Con­trol Cen­ter bekann­ten Algo­rith­men zur Vor-/Nach­be­ar­bei­tung des Video­ma­te­ri­als zuschal­ten las­sen. Zusätz­lich steht für Anwen­dungs­fäl­le, wo eine beson­ders nied­ri­ge Latenz wich­tig ist, die AMF-DEM-Biblio­thek bereit. DEM steht dabei für Dis­play Encode Mode. Die­se Biblio­thek nutzt die Hard­ware­funk­tio­na­li­tät eini­ger APUs und dedi­zier­ter Gra­fik­kar­ten (VCE-DEM), mit der die VCE-Ein­heit direkt auf die Daten der Dis­play-Con­trol­ler zugrei­fen kann. Dadurch ste­hen die Daten sofort für die Enko­die­rung bereit, was die Latenz stark redu­ziert. Anwen­dungs­fäl­le für VCE-DEM sind bei­spiels­wei­se Screen­Mir­ror, Wire­less Dis­play und Remo­te­de­sk­top­ver­bin­dun­gen, aber auch ande­re Strea­ming-Anwen­dun­gen kön­nen davon profitieren.

Auf sei­ner Ent­wick­ler­sei­te stellt AMD eine Samm­lung an Pro­gram­mier­bei­spie­len für die Nut­zung des Media SDKs bereit. Die Pro­dukt­sei­te ist hier zu fin­den: AMD Media SDK

Den aktu­el­len Pla­nun­gen zufol­ge soll noch im ers­ten Quar­tal 2014 die sta­bi­le Ver­si­on 1.0 des Media SDK ver­öf­fent­licht wer­den. Im drit­ten Quar­tal soll dann Ver­si­on 1.1 fol­gen, mit der dann auch direkt das AMF fürs De-/En­ko­die­ren sowie Bear­bei­ten von Videosstreams genutzt wer­den kön­nen soll. Außer­dem stellt AMD die Unter­stüt­zung von Mul­ti-GPU-Sys­te­men und Cloud Gam­ing in Aus­sicht. Wann wel­che zusätz­li­chen Betriebs­sys­te­me unter­stützt wer­den sol­len, will das Unter­neh­men erst zu einem spä­te­ren Zeit­punkt bekanntgeben.

Bezüg­lich der Lizenz­kos­ten für die Nut­zung des Media SDKs hat sich Amit Moo­ker­jee dahin­ge­hend geäu­ßert, dass AMD kei­ne ver­langt. Für Soft­ware­her­stel­ler fal­len aller­dings die übli­chen Abga­ben für die Nut­zung der Codecs (MPEGLA) an. In dem Inter­view mit Semi­Ac­cu­ra­te mach­te Moo­ker­jee zudem die Andeu­tung, UVD und VCE wür­den künf­tig signi­fi­kan­te Ver­bes­se­run­gen erfah­ren, um Unter­stüt­zung für neue Codecs und eine höhe­re Per­for­mance zu bie­ten. Näher ins Detail woll­te er aber auch hier­zu noch nicht gehen.

Quel­len:

Links zum Thema: