1 /* 2 * Copyright (c) 2012-2015, 2018, The Linux Foundation. All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions are 6 * met: 7 * * Redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer. 9 * * Redistributions in binary form must reproduce the above 10 * copyright notice, this list of conditions and the following 11 * disclaimer in the documentation and/or other materials provided 12 * with the distribution. 13 * * Neither the name of The Linux Foundation nor the names of its 14 * contributors may be used to endorse or promote products derived 15 * from this software without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED 18 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 19 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS 21 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 22 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 23 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 24 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 25 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 26 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 27 * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 */ 29 30 #ifndef QC_META_DATA_H_ 31 32 #define QC_META_DATA_H_ 33 34 namespace android { 35 36 enum { 37 kKeyAacCodecSpecificData = 'nacc' , // for native aac files 38 39 kKeyRawCodecSpecificData = 'rcsd', // raw data - added to support mmParser 40 kKeyDivXVersion = 'DivX', // int32_t 41 kKeyDivXDrm = 'QDrm', // void * 42 kKeyWMAEncodeOpt = 'eopt', // int32_t 43 kKeyWMABlockAlign = 'blka', // int32_t 44 kKeyWMAVersion = 'wmav', // int32_t 45 kKeyWMAAdvEncOpt1 = 'ade1', // int16_t 46 kKeyWMAAdvEncOpt2 = 'ade2', // int32_t 47 kKeyWMAFormatTag = 'fmtt', // int64_t 48 kKeyWMABitspersample = 'bsps', // int64_t 49 kKeyWMAVirPktSize = 'vpks', // int64_t 50 kKeyWMAChannelMask = 'chmk', // int32_t 51 kKeyVorbisData = 'vdat', // raw data 52 kKeyMHAConfig = 'mhaC', // raw data 53 kKeyMHASceneInfo = 'mhaS', // raw data 54 55 kKeyFileFormat = 'ffmt', // cstring 56 57 kkeyAacFormatAdif = 'adif', // bool (int32_t) 58 kKeyInterlace = 'intL', // bool (int32_t) 59 kkeyAacFormatLtp = 'ltp ', 60 61 62 //DTS subtype 63 kKeyDTSSubtype = 'dtss', //int32_t 64 65 //Extractor sets this 66 kKeyUseArbitraryMode = 'ArbM', //bool (int32_t) 67 kKeySmoothStreaming = 'ESmS', //bool (int32_t) 68 kKeyHFR = 'hfr ', // int32_t 69 kKeyHSR = 'hsr ', // int32_t 70 71 kKeySampleBits = 'sbit', // int32_t (audio sample bit-width) 72 kKeyPcmFormat = 'pfmt', //int32_t (pcm format) 73 kKeyMinBlkSize = 'mibs', //int32_t 74 kKeyMaxBlkSize = 'mabs', //int32_t 75 kKeyMinFrmSize = 'mifs', //int32_t 76 kKeyMaxFrmSize = 'mafs', //int32_t 77 kKeyMd5Sum = 'md5s', //cstring 78 79 kKeyBatchSize = 'btch', //int32_t 80 kKeyIsByteMode = 'bytm', //int32_t 81 kKeyUseSetBuffers = 'setb', //bool (int32_t) 82 kKeyExtraFlag = 'extf', //int32_t 83 }; 84 85 enum { 86 kTypeDivXVer_3_11, 87 kTypeDivXVer_4, 88 kTypeDivXVer_5, 89 kTypeDivXVer_6, 90 }; 91 enum { 92 kTypeWMA, 93 kTypeWMAPro, 94 kTypeWMALossLess, 95 }; 96 97 //This enum should be keep in sync with "enum Flags" in MediaExtractor.h in AOSP, 98 //Value should reflect as last entry in the enum 99 enum { 100 CAN_SEEK_TO_ZERO = 16, // the "previous button" 101 }; 102 103 enum { 104 USE_SET_BUFFERS = 0x1, 105 USE_AUDIO_BIG_BUFFERS = 0x2, 106 }; 107 } // namespace android 108 109 #endif // QC_META_DATA_H_ 110