1、 KSKSKSKSKSKSKSK KSKSKS KSKSK KSKS KSK KS KS X ISO/IEC 14496 21 21:MPEG J (GFX)KS X ISO/IEC 14496 21:2008 2008 6 30 http:/www.kats.go.krKS X ISO/IEC 14496 21:2008 : e- ( ) ( ) () () ( ) : (JTC1/SC29) () ( ) KBS LG () ETRI () KS X ISO/IEC 14496 21:2008 : (http:/www.standard.go.kr) : : 2008 6 30 2008-
2、0365 : e- :e- (JTC1/SC29) ( 025097262) (http:/www.kats.go.kr). 10 5 , . KS X ISO/IEC 14496 21:2008 i ii 1 1 2 1 3 1 4 2 5 MPEG J 2 5.1 .2 5.2 .3 5.3 .5 5.4 .20 5.5 .23 5.6 MPEG J .24 5.7 25 5.8 26 5.9 ( ).26 A( ) GFX API 34 B( ) , , .36 B.1 .36 B.2 36 B.3 36 37 .38 KS X ISO/IEC 14496 21:2008 ii ISO/
3、IEC 14496 21 , , (hypermedia) ISO/IEC JTC 1, , SC 29 . ISO/IEC 14496 . 1: 2: 3: 4: 5: 6: (DMIF) 7: MPEG 4 8: IP KS X ISO/IEC 14496 9: 10: (AVC) 11: 12: ISO 13: (IPMP) 14: MP4 15: (AVC) 16: (AFX) 17: 18: 19: 20: (LASeR) (SAF) 21: MPEG J (GFX) 22: KS X ISO/IEC 14496 21:2008 21:MPEG J (GFX) Information
4、 technology Coding of audio-visual objects Part 21: MPEG J Graphics Framework eXtensions(GFX) 2006 1 ISO/IEC 14496 21, Information technology Coding of audio-visual objects Part 21: MPEG J Graphics Framework eXtensions(GFX) , . 1 MPEG J (GFX) . . 2 . . ( ) . KS X ISO/IEC 14496 1:2005, 1: KS X ISO/IE
5、C 14496 11:2005, 11: JSR 135, Mobile Media API (MMAPI) http:/jcp.org/aboutJava/communityprocess/final/jsr135/index.html 3 API Application Programming Interface BIFS Binary Format for Scenes ES Elementary Stream IOD Initial Object Descriptor JCP Java Community Process JSR Java Specification Request M
6、3G Mobile 3D Graphics API for Java KS X ISO/IEC 14496 21:2008 2 MPEG J MPEG 4 Java Application Engine OD Object Descriptor 4 UML(Unified Modelling Language) 18 , , , . 5 MPEG J 5.1 MPEG 4 . . . KS X ISO/IEC 14496 11 BIFS . , . , . . , BIFS . KS X ISO/IEC 14496 21 KS X ISO/IEC 14496 11 . API . API JS
7、R 239 Java Bindings to OpenGL ES13 , JSR 184 Mobile 3D Graphics API for Java4 API . API . API . , JSR 239 JSR 184 API . 1 MPEG 4 API . 1 MPEG J MPEG 4 (KS X ISO/IEC 14496 21) KS X ISO/IEC 14496 21:2008 3 1 JSR 239, JSR 184 API OpenGL ES . OpenGL ES M3G . 2 MPEGlet API . JSR 239 KS X ISO/IEC 14496 11
8、 BIFS API JSR 184 API . . MPEG J API MPEG . 5.2 5.2.1 2 KS X ISO/IEC 14496 1 KS X ISO/IEC 14496 11 MPEG 4 . , . , . MPEG 4 MPEG J . MPEG J MPEGlet . MPEGlet . KS X ISO/IEC 14496 11 MPEGlet BIFS , MPEGlet . API . API . . 3D . , . 2 5.2.2 , KS X ISO/IEC 14496 21:2008 4 . MPEG 4 . . ( , , , ) . , Java
9、Media Framework 7 Mobile Media API DataSource, Player, Control . DataSource Player Control 3 DataSource, Player, Renderer MPEGlet, DataSource, Player . MPEGlet Control . 3 BufferInfo GLBuffer . (ES) BufferInfo . GLBuffer . BufferInfo 5.2.3 . . , . . KS X ISO/IEC 14496 21:2008 5 MPEGletContext ( MPEG
10、let) ( OpenGL driver) . . 5.3 5.3.1 GFX MPEGlet 4 GFX MPEGlet . MPEGlet MPEGlet.init (MPEGletContext ctx) . MPEGlet MPEGlet MPEGlet Runnable . MPEGlet . MPEGlet . Void init(MPEGletContext context) MPEGLet . . Void pause(), stop(), run(), destroy() MPEGlet . Run() Runnable , “ ” . MPEGlet 5.4.1 . MPE
11、GletContext . Object getDisplay() MIDP javax.microedition.lcdui.Display , java.awt.Frame . . Canvas, Graphics, Image . DisplayNotAvailableException . String getProperty(String Key) property (5.7 ). Key NULL . . Int checkPermission(string permission) . API . . 0 , 1 . TerminalContext getTerminalConte
12、xt() TerminalContext . MPEG 4 , TerminalContext MPEGContext . Void requestResume() (5.4.2 ). Void requestPause() (5.4.2 ). KS X ISO/IEC 14496 21:2008 6 4 GFX MPEGlet 5.3.2 EG.Terminal Contexts 5.3.2.1 TerminalContext TerminalContext ResourceManagerBase . ResourceManagerBase getResourceManager() MPEG
13、let ResourceManagerBase . ResourceManager MPEGResourceManager . 5.3.2.2 MPEG4Context MPEG4Context MPEG 4 TerminalContext . ObjectDescriptor getInitOD() . Vector getODs() . SceneManager getSceneManager() BIFS . NetworkManager getNetworkManager() DMIF KS X ISO/IEC 14496 21:2008 7 5.3.3 Resource manage
14、r ResourceManagerBase ResourceManager MPEGResourceManager . ResourceManager MPEGlet . MPEGResourceManager MPEG 4 . ResourceManager DataSource . RecordStore . Javax.microedition.media.Manager ResourceManager javax.microedition. media.Manager . ResourceManager MPEGlet javax.microedition.media.Manager
15、. 5 ResourceManager 5.3.3.1 ResourceManagerBase ResourceManagerBase . DecoderBase getDecoderBase(ElementaryStream stream) ElementaryStream void addUserDataListener(UserDataListener listener) Java UserDataListener (5.6 ). KS X ISO/IEC 14496 21:2008 8 void removeUserDataListener(UserDataListener liste
16、ner) UserDataListener (5.6 ). Object getCapability(String capability) capability (0 ). DynamicCapabilityManager getDynamicCapabilityManager() capability (0 ). Renderer getRenderer() (5.3.4 ). 5.3.3.2 ResourceManager Player createPlayer(String locator) http:/ :/ Uniform Resource Identifier14 . , “od:
17、/” . . RTP RFC 1889 13. Player createPlayer(DataSource source) DataSource . Player createPlayer(InputStream stream, String content_type) content_type . String getSupportedProtocols(String content_type) content_type . String getSupportedContentTypes(String protocol) HTTP, RTP content type . Content t
18、ypes MIME type (RFC 204513, RFC 204616) . MIME Internet Assigned Numbers Authority(IANA) http:/www.iana.org/assignments/media types/ . TimeBase getSystemTimeBase() . RecordStore getRecordStore() RecordStore . Renderer createRenderer(String name) (5.3.4 ). . GLRENDERER “org.iso.mpeg.mpegj.renderer.GL
19、Renderer” M3GRENDERER “org.iso.mpeg.mpegj.renderer.M3GRenderer” 5.3.3.3 MPEGResourceManager MPEGResourceManager MPEG 4 . API 5.3.7 . API KS X ISO/IEC 14496 11 ResourceManager . MPDecorder getAvilableDecoder(DecoderType type) . void changeDecoder(MPDecoder dec, ES_Descriptor esd, ObjectDescriptor od)
20、 ES_Descriptor OjbectDesciptor . MPDecoder ( ). MPDecoder getDecoder(ES_Descriptor esd, ObjectDescriptor od) ES_Descriptor ObjectDescriptor MPdecoder . Int getDecPriority(MPDecoder dec) MPDecoder . KS X ISO/IEC 14496 21:2008 9 void setDecPriority(MPDecoder dec,int priority) MPDecoder . 5.3.4 5.3.4.1
21、 Renderer ResourceManager.createRenderer(String rendererName) . 6 OpenGL ES(GLRenderer) M3G(M3GRenderer) . RendererName 5.7 Renderer Class 5.8 Terminal Renderers . OpenGL ES M3G . M3G org.iso.mpeg.mpegj.gfx.M3GRenderer OpenGL ES org.iso.mpeg.mpegj.gfx.GLRenderer , ResourceManager.createRenderer() Re
22、ndererExceiption . Renderer , (5.7 ). . pure Java ones . 6 5.3.4.2 MPEGlet . ResourceManager. createRenderer() , . KS X ISO/IEC 14496 21:2008 10 MPEGlet . , , , (5.3.4.3 ). KS X ISO/IEC 14496 11 BIFS Compositor BIFS . compositor . KS X ISO/IEC 14496 11 MPEGlet compositor . , KS X ISO/IEC 14496 11 MPEGlet BIFS compositor . BIFS Scene . MPEGlet KS X ISO/IEC 14496 11 BIFS ResourceManager. createRenderer() , MPEGlet . , . BIFS . MPEGlet compositor KS X ISO/IEC 14496 11 MPEGlet , . 5.3.4.3 .