1*4882a593Smuzhiyun /* 2*4882a593Smuzhiyun * Copyright 2018 Rockchip Electronics Co. LTD 3*4882a593Smuzhiyun * 4*4882a593Smuzhiyun * Licensed under the Apache License, Version 2.0 (the "License"); 5*4882a593Smuzhiyun * you may not use this file except in compliance with the License. 6*4882a593Smuzhiyun * You may obtain a copy of the License at 7*4882a593Smuzhiyun * 8*4882a593Smuzhiyun * http://www.apache.org/licenses/LICENSE-2.0 9*4882a593Smuzhiyun * 10*4882a593Smuzhiyun * Unless required by applicable law or agreed to in writing, software 11*4882a593Smuzhiyun * distributed under the License is distributed on an "AS IS" BASIS, 12*4882a593Smuzhiyun * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13*4882a593Smuzhiyun * See the License for the specific language governing permissions and 14*4882a593Smuzhiyun * limitations under the License. 15*4882a593Smuzhiyun * 16*4882a593Smuzhiyun * author: martin.cheng@rock-chips.com 17*4882a593Smuzhiyun * date: 20181226 18*4882a593Smuzhiyun * Module: audio/video/subtitle track's kKeys for metadata. 19*4882a593Smuzhiyun */ 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun #ifndef INCLUDE_RT_MEDIA_RTMEDIAMETAKEYS_H_ 22*4882a593Smuzhiyun #define INCLUDE_RT_MEDIA_RTMEDIAMETAKEYS_H_ 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun enum { 25*4882a593Smuzhiyun /* media format features */ 26*4882a593Smuzhiyun kKeyFormatDuration = MKTAG('f', 'd', 'u', 'r'), // UINT64 27*4882a593Smuzhiyun kKeyFormatEOS = MKTAG('f', 'e', 'o', 's'), 28*4882a593Smuzhiyun kKeyFormatUri = MKTAG('f', 'u', 'r', 'i'), 29*4882a593Smuzhiyun kKeyUriHeaders = MKTAG('u', 'r', 'h', 'd'), 30*4882a593Smuzhiyun kKeyProtocol = MKTAG('p', 't', 'c', 'l'), 31*4882a593Smuzhiyun kKeyTimeBaseNum = MKTAG('t', 'i', 'b', 'n'), 32*4882a593Smuzhiyun kKeyTimeBaseDen = MKTAG('t', 'i', 'b', 'd'), 33*4882a593Smuzhiyun kKeyPlaySpeed = MKTAG('p', 'l', 's', 'p'), // float 34*4882a593Smuzhiyun kKeyStartTime = MKTAG('s', 't', 't', 'm'), // INT64 35*4882a593Smuzhiyun 36*4882a593Smuzhiyun /* common track features*/ 37*4882a593Smuzhiyun kKeyCodecType = MKTAG('c', 't', 'y', 'p'), 38*4882a593Smuzhiyun kKeyCodecID = MKTAG('c', 'c', 'i', 'd'), 39*4882a593Smuzhiyun kKeyCodecOriginID = MKTAG('c', 'o', 'i', 'd'), 40*4882a593Smuzhiyun kKeyCodecProfile = MKTAG('c', 'p', 'r', 'o'), 41*4882a593Smuzhiyun kKeyCodecLevel = MKTAG('c', 'l', 'e', 'v'), 42*4882a593Smuzhiyun kKeyCodecFormat = MKTAG('c', 'f', 'o', 'r'), 43*4882a593Smuzhiyun kKeyCodecTag = MKTAG('c', 't', 'a', 'g'), 44*4882a593Smuzhiyun kKeyCodecBitrate = MKTAG('c', 'b', 'i', 't'), // INT64 45*4882a593Smuzhiyun kKeyCodecExtraData = MKTAG('v', 'd', 'a', 't'), // void * 46*4882a593Smuzhiyun kKeyCodecExtraSize = MKTAG('v', 's', 'i', 'z'), // INT32 47*4882a593Smuzhiyun kKeyCodecError = MKTAG('c', 'e', 'r', 'r'), 48*4882a593Smuzhiyun 49*4882a593Smuzhiyun /* video track features*/ 50*4882a593Smuzhiyun kKeyVCodecWidth = MKTAG('v', 'w', 'i', 'd'), 51*4882a593Smuzhiyun kKeyVCodecHeight = MKTAG('v', 'h', 'e', 'i'), 52*4882a593Smuzhiyun kKeyVCodecVideoDelay = MKTAG('v', 'v', 'd', 'e'), // INT32 53*4882a593Smuzhiyun kKeyVCodecFrameRate = MKTAG('v', 'f', 'r', 'a'), // INT32 23.976 x 1000 54*4882a593Smuzhiyun kKeyVCodecFieldOrder = MKTAG('v', 'f', 'i', 'e'), // INT32 55*4882a593Smuzhiyun kKeyVCodecColorRange = MKTAG('v', 'c', 'r', 'a'), // INT32 56*4882a593Smuzhiyun kKeyVCodecColorPrimary = MKTAG('v', 'c', 'p', 'r'), // INT32 57*4882a593Smuzhiyun kKeyVCodecColorTransfer = MKTAG('v', 'c', 't', 'r'), // INT32 58*4882a593Smuzhiyun kKeyVCodecColorSpace = MKTAG('v', 'c', 's', 'p'), // INT32 59*4882a593Smuzhiyun kKeyVCodecChromaLocation = MKTAG('v', 'c', 'l', 'o'), // INT32 60*4882a593Smuzhiyun kKeyVCodecBufferCount = MKTAG('v', 'c', 'b', 'c'), // INT32 61*4882a593Smuzhiyun kKeyVCodecBufferSize = MKTAG('v', 'c', 'b', 's'), // INT32 62*4882a593Smuzhiyun 63*4882a593Smuzhiyun /* video extra features*/ 64*4882a593Smuzhiyun kKeyVCodecGopSize = MKTAG('g', 'p', 's', 'z'), // INT32 encoder feature 65*4882a593Smuzhiyun kKeyVCodecMaxBFrames = MKTAG('m', 'b', 'f', 'm'), // INT32 encoder feature 66*4882a593Smuzhiyun kKeyVCodecRCMode = MKTAG('v', 'r', 'c', 'm'), // INT32 encoder feature 67*4882a593Smuzhiyun kKeyVCodecQP = MKTAG('v', 'c', 'q', 'p'), // INT32 encoder feature 68*4882a593Smuzhiyun kKeyVCodecSurfaceCB = MKTAG('v', 'c', 's', 'b'), // void * 69*4882a593Smuzhiyun kKeyVCodecRotation = MKTAG('v', 'r', 't', 'e'), // INT32 70*4882a593Smuzhiyun kKeyVCodecFlagExtractor = MKTAG('v', 'c', 'f', 'e'), // INT32 71*4882a593Smuzhiyun kKeyVMaxInputBufferCnt = MKTAG('v', 'x', 'i', 'b'), // INT32 72*4882a593Smuzhiyun kKeyVMaxOutputBufferCnt = MKTAG('v', 'x', 'o', 'b'), // INT32 73*4882a593Smuzhiyun kKeyVMinOutputBufferCnt = MKTAG('v', 'n', 'o', 'b'), // INT32 74*4882a593Smuzhiyun 75*4882a593Smuzhiyun /* audio track features*/ 76*4882a593Smuzhiyun kKeyACodecChanneLayout = MKTAG('a', 'c', 'l', 't'), 77*4882a593Smuzhiyun kKeyACodecChannels = MKTAG('a', 'd', 'h', 's'), 78*4882a593Smuzhiyun kKeyACodecSampleRate = MKTAG('a', 's', 'r', 'e'), 79*4882a593Smuzhiyun kKeyACodecBlockAlign = MKTAG('a', 'e', 'b', 'n'), 80*4882a593Smuzhiyun kKeyACodecFrameSize = MKTAG('a', 'd', 'f', 'e'), 81*4882a593Smuzhiyun kKeyACodecInitialPadding = MKTAG('a', 's', 'r', 'g'), 82*4882a593Smuzhiyun kKeyACodecTrailinglPadding = MKTAG('a', 'e', 't', 'p'), 83*4882a593Smuzhiyun kKeyACodecBitPerCodedSample = MKTAG('a', 'b', 'p', 'c'), 84*4882a593Smuzhiyun kKeyAUseSoftVol = MKTAG('a', 'u', 's', 'd'), 85*4882a593Smuzhiyun kKeyAudioFormat = MKTAG('a', 'f', 'm', 't'), 86*4882a593Smuzhiyun kkeyAudioAECTrans = MKTAG('a', 'a', 't', 's'), 87*4882a593Smuzhiyun 88*4882a593Smuzhiyun /* subtitle track features */ 89*4882a593Smuzhiyun kKeySCodecLanguage = MKTAG('s', 'l', 'a', 'n'), // char* 90*4882a593Smuzhiyun kKeySCodecEncoding = MKTAG('s', 'e', 'n', 'g'), // INT32 91*4882a593Smuzhiyun kKeyCharsetName = MKTAG('s', 'c', 's', 'n'), // char* 92*4882a593Smuzhiyun kKeySSourceFrom = MKTAG('s', 'f', 'r', 'm'), // INT32 93*4882a593Smuzhiyun kKeySubVisible = MKTAG('s', 'v', 'b', 'l'), // INT32 94*4882a593Smuzhiyun 95*4882a593Smuzhiyun /* RTFrame */ 96*4882a593Smuzhiyun kKeyFrameType = MKTAG('f', 't', 'y', 'e'), // INT32 97*4882a593Smuzhiyun kKeyFieldOrder = MKTAG('f', 'f', 'o', 'r'), // INT32 98*4882a593Smuzhiyun kKeyFrameW = MKTAG('f', 'w', 'i', 'd'), // INT32 99*4882a593Smuzhiyun kKeyFrameH = MKTAG('f', 'h', 'e', 'i'), // INT32 100*4882a593Smuzhiyun kKeyFramePts = MKTAG('f', 'p', 't', 's'), // INT64 AVPacket pts 101*4882a593Smuzhiyun kKeyFrameDts = MKTAG('f', 'd', 't', 's'), // INT64 AVPacket dts 102*4882a593Smuzhiyun kKeyFrameEOS = MKTAG('p', 'e', 'o', 's'), // INT32 EOS 103*4882a593Smuzhiyun kKeyFrameDuration = MKTAG('d', 'u', 'r', 't'), // INT32 104*4882a593Smuzhiyun kKeyFrameError = MKTAG('f', 'e', 'r', 'r'), // INT32 Frame Error 105*4882a593Smuzhiyun kKeyFrameSequence = MKTAG('f', 's', 'e', 'q'), // INT32 Frame Sequence 106*4882a593Smuzhiyun kKeyDisplayW = MKTAG('d', 'w', 'i', 'd'), // INT32 107*4882a593Smuzhiyun kKeyDisplayH = MKTAG('d', 'h', 'e', 'i'), // INT32 108*4882a593Smuzhiyun 109*4882a593Smuzhiyun /* RTPacket */ 110*4882a593Smuzhiyun kKeyPacketPtr = MKTAG('a', 'v', 'p', 't'), // AVPacket 111*4882a593Smuzhiyun kKeyPacketPts = MKTAG('p', 'p', 't', 's'), // INT64 AVPacket dts 112*4882a593Smuzhiyun kKeyPacketDts = MKTAG('p', 'd', 't', 's'), // INT64 AVPacket pts 113*4882a593Smuzhiyun kKeyPacketPos = MKTAG('p', 'p', 'o', 's'), // INT64 AVPacket pos 114*4882a593Smuzhiyun kKeyPacketSize = MKTAG('p', 's', 'i', 'z'), // INT32 AVPacket size 115*4882a593Smuzhiyun kKeyPacketFlag = MKTAG('p', 'f', 'l', 'g'), // INT32 AVPacket flag 116*4882a593Smuzhiyun kKeyPacketIndex = MKTAG('p', 'i', 'd', 'x'), // INT32 AVPacket index 117*4882a593Smuzhiyun kKeyPacketData = MKTAG('p', 'd', 'a', 't'), // AVPacket data 118*4882a593Smuzhiyun kKeyPacketEOS = MKTAG('p', 'e', 'o', 's'), // INT32 EOS 119*4882a593Smuzhiyun kKeyPacketIsExtra = MKTAG('p', 'i', 'e', 'e'), // INT32 is extradata 120*4882a593Smuzhiyun kKeyPacketSerial = MKTAG('p', 's', 'e', 'r'), // INT32 AVPacket serial 121*4882a593Smuzhiyun kKeyPacketDuration = MKTAG('p', 'd', 'u', 'r'), // INT32 AVPacket duration 122*4882a593Smuzhiyun // memory features 123*4882a593Smuzhiyun kKeyMemAlign = MKTAG('m', 'e', 'a', 'l'), // INT32 124*4882a593Smuzhiyun kKeyMemMapFlags = MKTAG('m', 'm', 'f', 'g'), // INT32 125*4882a593Smuzhiyun kKeyMemHeapFlags = MKTAG('m', 'h', 'f', 'g'), // INT32 126*4882a593Smuzhiyun kKeyMemUsage = MKTAG('m', 'e', 'u', 's'), // INT32 127*4882a593Smuzhiyun 128*4882a593Smuzhiyun /* command options */ 129*4882a593Smuzhiyun kKeySeekTimeUs = MKTAG('s', 't', 'u', 's'), // INT64 130*4882a593Smuzhiyun kKeySeekMode = MKTAG('s', 'm', 'o', 'd'), // INT32 131*4882a593Smuzhiyun 132*4882a593Smuzhiyun /* media cache options */ 133*4882a593Smuzhiyun kKeyMaxCacheSize = MKTAG('m', 'c', 's', 'z'), // INT32 134*4882a593Smuzhiyun kKeyHighCacheUs = MKTAG('h', 'c', 'u', 's'), // INT64 135*4882a593Smuzhiyun kKeyLowCacheUs = MKTAG('l', 'c', 'u', 's'), // INT64 136*4882a593Smuzhiyun kKeyResumeCacheUs = MKTAG('r', 'c', 'u', 's'), // INT64 137*4882a593Smuzhiyun kKeyAudioBitrate = MKTAG('a', 'b', 't', 'r'), // INT32 138*4882a593Smuzhiyun kKeyVideoBitrate = MKTAG('v', 'b', 't', 'r'), // INT32 139*4882a593Smuzhiyun 140*4882a593Smuzhiyun /*audio setting features*/ 141*4882a593Smuzhiyun kKeyASettingDecoderPtr = MKTAG('a', 's', 'd', 'p'), // void * 142*4882a593Smuzhiyun kKeyASettingBistreamPtr = MKTAG('a', 's', 'b', 'r'), // void * 143*4882a593Smuzhiyun kKeyACodecOutputMode = MKTAG('a', 'c', 'o', 'm'), // INT32 144*4882a593Smuzhiyun kKeyACodecBufferDelay = MKTAG('a', 'c', 'd', 't'), // INT32 145*4882a593Smuzhiyun 146*4882a593Smuzhiyun /*video setting features*/ 147*4882a593Smuzhiyun kKeyVSettingResolutionPtr = MKTAG('v', 's', 'r', 'p'), // void * 148*4882a593Smuzhiyun kKeyVSettingBitdepth = MKTAG('v', 's', 'b', 'h'), // INT32 149*4882a593Smuzhiyun kKeyVSettingHdr = MKTAG('v', 's', 'h', 'r'), // INT32 150*4882a593Smuzhiyun kKeyVSettingCodecPtr = MKTAG('v', 's', 'c', 't'), // void * 151*4882a593Smuzhiyun 152*4882a593Smuzhiyun /* tracks infor for cache features*/ 153*4882a593Smuzhiyun kKeyTrackNum = MKTAG('t', 'n', 'u', 'm'), // INT32 the default number of tracks 154*4882a593Smuzhiyun kKeyTrackCacheSize = MKTAG('t', 'c', 's', 'z'), // INT32 the max cache size of every track 155*4882a593Smuzhiyun 156*4882a593Smuzhiyun /* user's invoke/getparameter/setparameter command*/ 157*4882a593Smuzhiyun kUserInvokeCmd = MKTAG('u', 'c', 'm', 'd'), 158*4882a593Smuzhiyun kUserInvokeTracksCount = MKTAG('t', 'c', 'n', 't'), 159*4882a593Smuzhiyun kUserInvokeTracksInfor = MKTAG('t', 'i', 'n', 'f'), 160*4882a593Smuzhiyun kUserInvokeTracksIdx = MKTAG('t', 'i', 'd', 'x'), 161*4882a593Smuzhiyun kUserInvokeGetSelectTrack = MKTAG('t', 's', 'l', 'e'), 162*4882a593Smuzhiyun kUserInvokeVideoScallingMode = MKTAG('v', 's', 'm', 'd'), 163*4882a593Smuzhiyun kUserInvokeSetPlaybackRate = MKTAG('i', 'p', 'b', 'r'), // float 164*4882a593Smuzhiyun 165*4882a593Smuzhiyun /* user's notify command*/ 166*4882a593Smuzhiyun kUserNotifyPts = MKTAG('u', 'n', 'p', 's'), 167*4882a593Smuzhiyun kUserNotifySize = MKTAG('u', 'n', 's', 'e'), 168*4882a593Smuzhiyun kUserNotifyData = MKTAG('u', 'n', 'd', 'a'), 169*4882a593Smuzhiyun kKeyDataSource = MKTAG('v', 'd', 's', 'c'), 170*4882a593Smuzhiyun /* post-processing */ 171*4882a593Smuzhiyun kKeyIepI4O2 = MKTAG('f', 'i', 'i', 't'), // INT32 is iep I4O2 172*4882a593Smuzhiyun 173*4882a593Smuzhiyun /* for android media */ 174*4882a593Smuzhiyun kKeyFrameIndex = MKTAG('f', 'i', 'd', 'x'), // INT32 175*4882a593Smuzhiyun 176*4882a593Smuzhiyun /* setting command */ 177*4882a593Smuzhiyun kKeySettingQueryCmd = MKTAG('s', 'q', 'u', 'y'), 178*4882a593Smuzhiyun 179*4882a593Smuzhiyun /* meta data retriever*/ 180*4882a593Smuzhiyun kRetrieverKey = MKTAG('r', 'k', 'e', 'y'), 181*4882a593Smuzhiyun kRetrieverFrameAtTime = MKTAG('r', 'f', 'a', 't'), 182*4882a593Smuzhiyun kRetrieverFrameOption = MKTAG('r', 'f', 'f', 'o'), 183*4882a593Smuzhiyun kRetrieverDstColorFormat = MKTAG('r', 'd', 'c', 'f'), 184*4882a593Smuzhiyun kRetrieverFrameMetaOnly = MKTAG('r', 'f', 'm', 'o'), 185*4882a593Smuzhiyun kRetrieverFrameNumber = MKTAG('r', 'f', 'n', 'u'), 186*4882a593Smuzhiyun kRetrieverReadMaxTime = MKTAG('r', 'r', 'm', 't'), 187*4882a593Smuzhiyun kRetrieverAlbumArtData = MKTAG('r', 'a', 'a', 'd'), 188*4882a593Smuzhiyun kRetrieverAlbumArtDataSize = MKTAG('r', 'a', 'a', 's'), 189*4882a593Smuzhiyun kRetrieverCallbackContext = MKTAG('r', 'c', 'b', 'c'), 190*4882a593Smuzhiyun kRetrieverBufferAddress = MKTAG('r', 'b', 'a', 'r'), 191*4882a593Smuzhiyun 192*4882a593Smuzhiyun kRetrieverKeyMIMEType = MKTAG('r', 'm', 'i', 't'), 193*4882a593Smuzhiyun kRetrieverKeyCDTrackNumber = MKTAG('r', 'c', 't', 'n'), 194*4882a593Smuzhiyun kRetrieverKeyDiscNumber = MKTAG('r', 'd', 'i', 'n'), 195*4882a593Smuzhiyun kRetrieverKeyAlbum = MKTAG('r', 'a', 'l', 'b'), 196*4882a593Smuzhiyun kRetrieverKeyArtist = MKTAG('r', 'a', 'r', 't'), 197*4882a593Smuzhiyun kRetrieverKeyAlbumArtist = MKTAG('r', 'a', 'a', 't'), 198*4882a593Smuzhiyun kRetrieverKeyAuthor = MKTAG('r', 'a', 'u', 't'), 199*4882a593Smuzhiyun kRetrieverKeyComposer = MKTAG('r', 'c', 'o', 'm'), 200*4882a593Smuzhiyun kRetrieverKeyDate = MKTAG('r', 'd', 'a', 't'), 201*4882a593Smuzhiyun kRetrieverKeyGenre = MKTAG('r', 'g', 'e', 'n'), 202*4882a593Smuzhiyun kRetrieverKeyTitle = MKTAG('r', 't', 'i', 't'), 203*4882a593Smuzhiyun kRetrieverKeyYear = MKTAG('r', 'y', 'e', 'r'), 204*4882a593Smuzhiyun kRetrieverKeyWriter = MKTAG('r', 'w', 'r', 'i'), 205*4882a593Smuzhiyun kRetrieverKeyCompilation = MKTAG('r', 'c', 'p', 'l'), 206*4882a593Smuzhiyun kRetrieverKeyLocation = MKTAG('r', 'l', 'o', 'c'), 207*4882a593Smuzhiyun kRetrieverKeyDuration = MKTAG('r', 'd', 'u', 'r'), 208*4882a593Smuzhiyun 209*4882a593Smuzhiyun /* for new pipeline */ 210*4882a593Smuzhiyun kKeyPipeInvokeCmd = MKTAG('p', 'c', 'm', 'd'), // const char * 211*4882a593Smuzhiyun kKeyTaskNodeId = MKTAG('t', 'n', 'i', 'd'), // INT32 212*4882a593Smuzhiyun kKeyMediaConfig = MKTAG('m', 'c', 'f', 'g'), // INT32 213*4882a593Smuzhiyun }; 214*4882a593Smuzhiyun 215*4882a593Smuzhiyun enum { 216*4882a593Smuzhiyun /* user-level configuration for Media(AV) development and debugging */ 217*4882a593Smuzhiyun kKeyUserMediaSync = MKTAG('u', 'r', 'm', 's'), // UINT32 218*4882a593Smuzhiyun kKeyUserMediaLastFrame = MKTAG('u', 'm', 'l', 'f'), // UINT32 219*4882a593Smuzhiyun kKeyUserMediaSyncNone = MKTAG('u', 'm', 's', 'n'), // UINT32 220*4882a593Smuzhiyun 221*4882a593Smuzhiyun /* user-level configuration for audio development and debugging */ 222*4882a593Smuzhiyun kKeyUserAudioCodecNone = MKTAG('u', 'a', 'c', 'n'), // UINT32 223*4882a593Smuzhiyun 224*4882a593Smuzhiyun /* user-level configuration for video development and debugging */ 225*4882a593Smuzhiyun kKeyUserVideoCodecPrior = MKTAG('u', 'v', 'c', 'p'), // UINT32 226*4882a593Smuzhiyun kKeyUserVideoCodecNone = MKTAG('u', 'v', 'h', 'n'), // UINT32 227*4882a593Smuzhiyun kKeyUserVideoRefFrameMIN = MKTAG('u', 'v', 'r', 'f'), // UINT32 228*4882a593Smuzhiyun kKeyUserVideoRefFrameIN = MKTAG('u', 'v', 'f', 'i'), // UINT32 229*4882a593Smuzhiyun kKeyUserVideoRefFrameNum = MKTAG('u', 'v', 'f', 'o'), // UINT32 230*4882a593Smuzhiyun 231*4882a593Smuzhiyun /* system-level persistent configuration */ 232*4882a593Smuzhiyun kKeySysVideoDecoderSupport = MKTAG('s', 'v', 'd', 's'), // UINT32 233*4882a593Smuzhiyun kKeySysVideoEncoderSupport = MKTAG('s', 'v', 'e', 's'), // UINT32 234*4882a593Smuzhiyun kKeySysAudioOutputMode = MKTAG('s', 'a', 'o', 'm'), // UINT32 235*4882a593Smuzhiyun kKeySysChipName = MKTAG('s', 'c', 'p', 'n'), // UINT32 236*4882a593Smuzhiyun }; 237*4882a593Smuzhiyun 238*4882a593Smuzhiyun enum { 239*4882a593Smuzhiyun kKeyReadSize = MKTAG('r', 'd', 's', 'z'), 240*4882a593Smuzhiyun }; 241*4882a593Smuzhiyun 242*4882a593Smuzhiyun enum { 243*4882a593Smuzhiyun kKeyTestInt32 = MKTAG('t', 'i', '3', '2'), 244*4882a593Smuzhiyun kKeyTestInt64 = MKTAG('t', 'i', '6', '4'), 245*4882a593Smuzhiyun kKeyTestString = MKTAG('t', 's', 't', 'r'), 246*4882a593Smuzhiyun kKeyTestFloat = MKTAG('t', 'f', 'l', 't'), 247*4882a593Smuzhiyun kKeyTestPtr = MKTAG('t', 'p', 't', 'r'), 248*4882a593Smuzhiyun kKeyTestNone = MKTAG('t', 'n', 'o', 'e'), 249*4882a593Smuzhiyun }; 250*4882a593Smuzhiyun 251*4882a593Smuzhiyun #endif // INCLUDE_RT_MEDIA_RTMEDIAMETAKEYS_H_ 252*4882a593Smuzhiyun 253*4882a593Smuzhiyun 254