1root { 2 module = "master"; 3 codec_config { 4 match_attr = "codec_component_capabilities"; 5 use_openmax = true; 6 // capsMask: 0x01, Adaptive playback; 0x02, Secure playback; 0x04, Tunnel playback. 7 // allocateMask: 0x01, Input buffer allocated within the Codec module; 8 // allocateMask: 0x02, Input buffer allocated by an external user; 9 // allocateMask: 0x04, Output buffer allocated within the Codec module; 10 // allocateMask: 0x08, Output buffer allocated by an external user. 11 12 VideoHwEncoders { 13 /* node name explanation -- HDF_video_hw_enc_avc_rk: 14 ** 15 ** HDF____________video__________________hw____________________enc____________avc_______rk 16 ** | | | | | | 17 ** HDF or OMX video or audio hardware or software encoder or decoder mime vendor 18 */ 19 HDF_video_hw_enc_avc_rk { 20 role = 1; 21 type = 1; 22 name = "OMX.rk.video_encoder.avc"; 23 supportProfiles = [1, 32768, 2, 32768, 8, 32768]; 24 maxInst = 4; 25 isSoftwareCodec = false; 26 processModeMask = []; 27 capsMask = [0x01]; 28 minBitRate = 1; 29 maxBitRate = 40000000; 30 minWidth = 176; 31 minHeight = 144; 32 maxWidth = 1920; 33 maxHeight = 1088; 34 widthAlignment = 16; 35 heightAlignment = 8; 36 minBlockCount = 0xFFFFFFFF; 37 maxBlockCount = 0xFFFFFFFF; 38 minBlocksPerSecond = 0xFFFFFFFF; 39 maxBlocksPerSecond = 0xFFFFFFFF; 40 blockSizeWidth = 0xFFFFFFFF; 41 blockSizeHeight = 0xFFFFFFFF; 42 supportPixelFmts = [28, 24, 20, 12]; 43 measuredFrameRate = [320, 240, 165, 165, 720, 480, 149, 149, 1280, 720, 73, 73, 1920, 1080, 18, 18]; 44 bitRateMode = [1, 2]; 45 minFrameRate = 0; 46 maxFrameRate = 0; 47 } 48 HDF_video_hw_enc_hevc_rk { 49 role = 2; 50 type = 1; 51 name = "OMX.rk.video_encoder.hevc"; 52 supportProfiles = [1, 4096, 2, 4096, 4096, 4096]; 53 maxInst = 4; 54 isSoftwareCodec = false; 55 processModeMask = []; 56 capsMask = [0x01]; 57 minBitRate = 1; 58 maxBitRate = 40000000; 59 minWidth = 176; 60 minHeight = 144; 61 maxWidth = 1920; 62 maxHeight = 1088; 63 widthAlignment = 16; 64 heightAlignment = 8; 65 minBlockCount = 0xFFFFFFFF; 66 maxBlockCount = 0xFFFFFFFF; 67 minBlocksPerSecond = 0xFFFFFFFF; 68 maxBlocksPerSecond = 0xFFFFFFFF; 69 blockSizeWidth = 0xFFFFFFFF; 70 blockSizeHeight = 0xFFFFFFFF; 71 supportPixelFmts = [28, 24, 20, 12]; 72 measuredFrameRate = [320, 240, 165, 165, 720, 480, 149, 149, 1280, 720, 73, 73, 1920, 1080, 18, 18]; 73 bitRateMode = [1, 2]; 74 minFrameRate = 0; 75 maxFrameRate = 0; 76 } 77 } 78 VideoHwDecoders { 79 HDF_video_hw_dec_avc_rk { 80 role = 1; 81 type = 0; 82 name = "OMX.rk.video_decoder.avc"; 83 supportProfiles = [1, 32768, 2, 32768, 8, 32768]; 84 maxInst = 6; 85 isSoftwareCodec = false; 86 processModeMask = []; 87 capsMask = [0x01]; 88 minBitRate = 1; 89 maxBitRate = 10000000; 90 minWidth = 176; 91 minHeight = 144; 92 maxWidth = 4096; 93 maxHeight = 2160; 94 widthAlignment = 8; 95 heightAlignment = 8; 96 minBlockCount = 0xFFFFFFFF; 97 maxBlockCount = 0xFFFFFFFF; 98 minBlocksPerSecond = 1; 99 maxBlocksPerSecond = 244800; 100 blockSizeWidth = 16; 101 blockSizeHeight = 16; 102 supportPixelFmts = [24, 12, 20]; 103 measuredFrameRate = [320, 240, 617, 617, 720, 480, 559, 559, 1280, 720, 276, 276, 1920, 1080, 164, 164, 3840, 2160, 30, 30]; 104 bitRateMode = []; 105 minFrameRate = 0; 106 maxFrameRate = 0; 107 } 108 HDF_video_hw_dec_mpeg2_rk { 109 role = 0xFFFFFFFF; 110 type = 0; 111 name = "OMX.rk.video_decoder.m2v"; 112 supportProfiles = [0, 3, 1, 3]; 113 maxInst = 6; 114 isSoftwareCodec = false; 115 processModeMask = []; 116 capsMask = [0x01]; 117 minBitRate = 1; 118 maxBitRate = 10000000; 119 minWidth = 176; 120 minHeight = 144; 121 maxWidth = 1920; 122 maxHeight = 1088; 123 widthAlignment = 8; 124 heightAlignment = 8; 125 minBlockCount = 0xFFFFFFFF; 126 maxBlockCount = 0xFFFFFFFF; 127 minBlocksPerSecond = 1; 128 maxBlocksPerSecond = 244800; 129 blockSizeWidth = 16; 130 blockSizeHeight = 8; 131 supportPixelFmts = [24, 12, 20]; 132 measuredFrameRate = []; 133 bitRateMode = []; 134 minFrameRate = 0; 135 maxFrameRate = 0; 136 } 137 HDF_video_hw_dec_v8p_rk { 138 role = 0xFFFFFFFF; 139 type = 0; 140 name = "OMX.rk.video_decoder.vp8"; 141 supportProfiles = []; 142 maxInst = 6; 143 isSoftwareCodec = false; 144 processModeMask = []; 145 capsMask = [0x01]; 146 minBitRate = 1; 147 maxBitRate = 10000000; 148 minWidth = 176; 149 minHeight = 144; 150 maxWidth = 1920; 151 maxHeight = 1088; 152 widthAlignment = 8; 153 heightAlignment = 8; 154 minBlockCount = 0xFFFFFFFF; 155 maxBlockCount = 0xFFFFFFFF; 156 minBlocksPerSecond = 1; 157 maxBlocksPerSecond = 244800; 158 blockSizeWidth = 16; 159 blockSizeHeight = 16; 160 supportPixelFmts = [24, 12, 20]; 161 measuredFrameRate = [320, 180, 500, 500, 640, 360, 387, 387, 1280, 720, 112, 112, 1920, 1080, 77, 77]; 162 bitRateMode = []; 163 minFrameRate = 0; 164 maxFrameRate = 0; 165 } 166 HDF_video_hw_dec_h263_rk { 167 role = 0xFFFFFFFF; 168 type = 0; 169 name = "OMX.rk.video_decoder.h263"; 170 supportProfiles = [1, 1, 1, 2, 1, 4, 1, 16, 8, 1, 8, 2, 8, 4, 8, 16]; 171 maxInst = 6; 172 isSoftwareCodec = false; 173 processModeMask = []; 174 capsMask = [0x01]; 175 minBitRate = 1; 176 maxBitRate = 10000000; 177 minWidth = 176; 178 minHeight = 144; 179 maxWidth = 1920; 180 maxHeight = 1088; 181 widthAlignment = 8; 182 heightAlignment = 8; 183 minBlockCount = 0xFFFFFFFF; 184 maxBlockCount = 0xFFFFFFFF; 185 minBlocksPerSecond = 1; 186 maxBlocksPerSecond = 244800; 187 blockSizeWidth = 16; 188 blockSizeHeight = 16; 189 supportPixelFmts = [24, 12, 20]; 190 measuredFrameRate = [176, 144, 600, 600, 352, 288, 600, 600]; 191 bitRateMode = []; 192 minFrameRate = 0; 193 maxFrameRate = 0; 194 } 195 HDF_video_hw_dec_m4v_rk { 196 role = 3; 197 type = 0; 198 name = "OMX.rk.video_decoder.m4v"; 199 supportProfiles = [1, 1, 1, 2, 1, 4, 1, 8, 1, 16]; 200 maxInst = 6; 201 isSoftwareCodec = false; 202 processModeMask = []; 203 capsMask = [0x01]; 204 minBitRate = 1; 205 maxBitRate = 10000000; 206 minWidth = 176; 207 minHeight = 144; 208 maxWidth = 1920; 209 maxHeight = 1088; 210 widthAlignment = 8; 211 heightAlignment = 8; 212 minBlockCount = 0xFFFFFFFF; 213 maxBlockCount = 0xFFFFFFFF; 214 minBlocksPerSecond = 1; 215 maxBlocksPerSecond = 244800; 216 blockSizeWidth = 16; 217 blockSizeHeight = 16; 218 supportPixelFmts = [24, 12, 20]; 219 measuredFrameRate = [176, 144, 600, 600]; 220 bitRateMode = []; 221 minFrameRate = 0; 222 maxFrameRate = 0; 223 } 224 HDF_video_hw_dec_flv_rk { 225 role = 0xFFFFFFFF; 226 type = 0; 227 name = "OMX.rk.video_decoder.flv1"; 228 supportProfiles = []; 229 maxInst = 6; 230 isSoftwareCodec = false; 231 processModeMask = []; 232 capsMask = [0x01]; 233 minBitRate = 1; 234 maxBitRate = 10000000; 235 minWidth = 176; 236 minHeight = 144; 237 maxWidth = 1920; 238 maxHeight = 1088; 239 widthAlignment = 8; 240 heightAlignment = 8; 241 minBlockCount = 0xFFFFFFFF; 242 maxBlockCount = 0xFFFFFFFF; 243 minBlocksPerSecond = 1; 244 maxBlocksPerSecond = 244800; 245 blockSizeWidth = 16; 246 blockSizeHeight = 16; 247 supportPixelFmts = [24, 12, 20]; 248 measuredFrameRate = []; 249 bitRateMode = []; 250 minFrameRate = 0; 251 maxFrameRate = 0; 252 } 253 HDF_video_hw_dec_mjpeg_rk { 254 role = 0; 255 type = 0; 256 name = "OMX.rk.video_decoder.mjpeg"; 257 supportProfiles = []; 258 maxInst = 6; 259 isSoftwareCodec = false; 260 processModeMask = []; 261 capsMask = [0x01]; 262 minBitRate = 1; 263 maxBitRate = 10000000; 264 minWidth = 176; 265 minHeight = 144; 266 maxWidth = 1920; 267 maxHeight = 1088; 268 widthAlignment = 8; 269 heightAlignment = 8; 270 minBlockCount = 0xFFFFFFFF; 271 maxBlockCount = 0xFFFFFFFF; 272 minBlocksPerSecond = 1; 273 maxBlocksPerSecond = 244800; 274 blockSizeWidth = 16; 275 blockSizeHeight = 16; 276 supportPixelFmts = [24, 12, 20]; 277 measuredFrameRate = []; 278 bitRateMode = []; 279 minFrameRate = 0; 280 maxFrameRate = 0; 281 } 282 HDF_video_hw_dec_hevc_rk { 283 role = 2; 284 type = 0; 285 name = "OMX.rk.video_decoder.hevc"; 286 supportProfiles = [1, 1, 1, 4, 1, 16, 1, 64, 1, 256, 1, 1024, 1, 4096, 1, 16384, 1, 65536, 2, 65536]; 287 maxInst = 6; 288 isSoftwareCodec = false; 289 processModeMask = []; 290 capsMask = [0x01]; 291 minBitRate = 1; 292 maxBitRate = 160000000; 293 minWidth = 176; 294 minHeight = 144; 295 maxWidth = 1920; 296 maxHeight = 1088; 297 widthAlignment = 2; 298 heightAlignment = 2; 299 minBlockCount = 0xFFFFFFFF; 300 maxBlockCount = 0xFFFFFFFF; 301 minBlocksPerSecond = 1; 302 maxBlocksPerSecond = 244800; 303 blockSizeWidth = 16; 304 blockSizeHeight = 16; 305 supportPixelFmts = [24, 12, 20]; 306 measuredFrameRate = [352, 288, 700, 700, 720, 480, 700, 700, 640, 360, 980, 980, 1280, 720, 600, 600, 1920, 1080, 130, 130, 3840, 2160, 130, 130]; 307 bitRateMode = []; 308 minFrameRate = 0; 309 maxFrameRate = 0; 310 } 311 HDF_video_hw_dec_vp9_rk { 312 role = 4; 313 type = 0; 314 name = "OMX.rk.video_decoder.vp9"; 315 supportProfiles = [1, 1, 1, 2, 1, 4, 1, 16, 1, 32, 1, 64, 1, 256, 1, 1024, 1, 2048, 1, 4096, 1, 8192]; 316 maxInst = 6; 317 isSoftwareCodec = false; 318 processModeMask = []; 319 capsMask = [0x01]; 320 minBitRate = 1; 321 maxBitRate = 300000000; 322 minWidth = 96; 323 minHeight = 96; 324 maxWidth = 4096; 325 maxHeight = 2160; 326 widthAlignment = 2; 327 heightAlignment = 2; 328 minBlockCount = 0xFFFFFFFF; 329 maxBlockCount = 0xFFFFFFFF; 330 minBlocksPerSecond = 1; 331 maxBlocksPerSecond = 972000; 332 blockSizeWidth = 16; 333 blockSizeHeight = 16; 334 supportPixelFmts = [24, 12, 20]; 335 measuredFrameRate = [320, 180, 500, 500, 640, 360, 387, 387, 1280, 720, 310, 318, 1920, 1080, 150, 200]; 336 bitRateMode = []; 337 minFrameRate = 0; 338 maxFrameRate = 0; 339 } 340 } 341 VideoSwEncoders { 342 } 343 VideoSwDecoders { 344 } 345 AudioHwEncoders { 346 } 347 AudioHwDecoders { 348 } 349 AudioSwEncoders { 350 } 351 AudioSwDecoders { 352 } 353 } 354} 355