1 /* 2 * Copyright (C) 2007-2008 ARM Limited 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 * 16 */ 17 /* ---------------------------------------------------------------- 18 * 19 * 20 * File Name: armVCM4P10_CAVLCTables.c 21 * OpenMAX DL: v1.0.2 22 * Revision: 9641 23 * Date: Thursday, February 7, 2008 24 * 25 * 26 * 27 * 28 * CAVLC tables for H.264 29 * 30 */ 31 32 #include "omxtypes.h" 33 #include "armOMX.h" 34 #include "omxVC.h" 35 36 #include "armCOMM_Bitstream.h" 37 #include "armVC.h" 38 #include "armVCM4P10_CAVLCTables.h" 39 40 /* Tables mapping a code to TrailingOnes and TotalCoeff */ 41 42 const OMX_U8 armVCM4P10_CAVLCTrailingOnes[62] = { 43 0, 44 0, 1, 45 0, 1, 2, 46 0, 1, 2, 3, 47 0, 1, 2, 3, 48 0, 1, 2, 3, 49 0, 1, 2, 3, 50 0, 1, 2, 3, 51 0, 1, 2, 3, 52 0, 1, 2, 3, 53 0, 1, 2, 3, 54 0, 1, 2, 3, 55 0, 1, 2, 3, 56 0, 1, 2, 3, 57 0, 1, 2, 3, 58 0, 1, 2, 3, 59 0, 1, 2, 3 60 }; 61 62 const OMX_U8 armVCM4P10_CAVLCTotalCoeff[62] = { 63 0, 64 1, 1, 65 2, 2, 2, 66 3, 3, 3, 3, 67 4, 4, 4, 4, 68 5, 5, 5, 5, 69 6, 6, 6, 6, 70 7, 7, 7, 7, 71 8, 8, 8, 8, 72 9, 9, 9, 9, 73 10, 10, 10, 10, 74 11, 11, 11, 11, 75 12, 12, 12, 12, 76 13, 13, 13, 13, 77 14, 14, 14, 14, 78 15, 15, 15, 15, 79 16, 16, 16, 16 80 }; 81 82 static const ARM_VLC32 armVCM4P10_CAVLCCoeffToken0[63] = { 83 { 1, 0x0001 }, 84 { 6, 0x0005 }, 85 { 2, 0x0001 }, 86 { 8, 0x0007 }, 87 { 6, 0x0004 }, 88 { 3, 0x0001 }, 89 { 9, 0x0007 }, 90 { 8, 0x0006 }, 91 { 7, 0x0005 }, 92 { 5, 0x0003 }, 93 { 10, 0x0007 }, 94 { 9, 0x0006 }, 95 { 8, 0x0005 }, 96 { 6, 0x0003 }, 97 { 11, 0x0007 }, 98 { 10, 0x0006 }, 99 { 9, 0x0005 }, 100 { 7, 0x0004 }, 101 { 13, 0x000f }, 102 { 11, 0x0006 }, 103 { 10, 0x0005 }, 104 { 8, 0x0004 }, 105 { 13, 0x000b }, 106 { 13, 0x000e }, 107 { 11, 0x0005 }, 108 { 9, 0x0004 }, 109 { 13, 0x0008 }, 110 { 13, 0x000a }, 111 { 13, 0x000d }, 112 { 10, 0x0004 }, 113 { 14, 0x000f }, 114 { 14, 0x000e }, 115 { 13, 0x0009 }, 116 { 11, 0x0004 }, 117 { 14, 0x000b }, 118 { 14, 0x000a }, 119 { 14, 0x000d }, 120 { 13, 0x000c }, 121 { 15, 0x000f }, 122 { 15, 0x000e }, 123 { 14, 0x0009 }, 124 { 14, 0x000c }, 125 { 15, 0x000b }, 126 { 15, 0x000a }, 127 { 15, 0x000d }, 128 { 14, 0x0008 }, 129 { 16, 0x000f }, 130 { 15, 0x0001 }, 131 { 15, 0x0009 }, 132 { 15, 0x000c }, 133 { 16, 0x000b }, 134 { 16, 0x000e }, 135 { 16, 0x000d }, 136 { 15, 0x0008 }, 137 { 16, 0x0007 }, 138 { 16, 0x000a }, 139 { 16, 0x0009 }, 140 { 16, 0x000c }, 141 { 16, 0x0004 }, 142 { 16, 0x0006 }, 143 { 16, 0x0005 }, 144 { 16, 0x0008 }, 145 { 0, 0x0000 } 146 }; 147 148 static const ARM_VLC32 armVCM4P10_CAVLCCoeffToken1[63] = { 149 { 2, 0x0003 }, 150 { 6, 0x000b }, 151 { 2, 0x0002 }, 152 { 6, 0x0007 }, 153 { 5, 0x0007 }, 154 { 3, 0x0003 }, 155 { 7, 0x0007 }, 156 { 6, 0x000a }, 157 { 6, 0x0009 }, 158 { 4, 0x0005 }, 159 { 8, 0x0007 }, 160 { 6, 0x0006 }, 161 { 6, 0x0005 }, 162 { 4, 0x0004 }, 163 { 8, 0x0004 }, 164 { 7, 0x0006 }, 165 { 7, 0x0005 }, 166 { 5, 0x0006 }, 167 { 9, 0x0007 }, 168 { 8, 0x0006 }, 169 { 8, 0x0005 }, 170 { 6, 0x0008 }, 171 { 11, 0x000f }, 172 { 9, 0x0006 }, 173 { 9, 0x0005 }, 174 { 6, 0x0004 }, 175 { 11, 0x000b }, 176 { 11, 0x000e }, 177 { 11, 0x000d }, 178 { 7, 0x0004 }, 179 { 12, 0x000f }, 180 { 11, 0x000a }, 181 { 11, 0x0009 }, 182 { 9, 0x0004 }, 183 { 12, 0x000b }, 184 { 12, 0x000e }, 185 { 12, 0x000d }, 186 { 11, 0x000c }, 187 { 12, 0x0008 }, 188 { 12, 0x000a }, 189 { 12, 0x0009 }, 190 { 11, 0x0008 }, 191 { 13, 0x000f }, 192 { 13, 0x000e }, 193 { 13, 0x000d }, 194 { 12, 0x000c }, 195 { 13, 0x000b }, 196 { 13, 0x000a }, 197 { 13, 0x0009 }, 198 { 13, 0x000c }, 199 { 13, 0x0007 }, 200 { 14, 0x000b }, 201 { 13, 0x0006 }, 202 { 13, 0x0008 }, 203 { 14, 0x0009 }, 204 { 14, 0x0008 }, 205 { 14, 0x000a }, 206 { 13, 0x0001 }, 207 { 14, 0x0007 }, 208 { 14, 0x0006 }, 209 { 14, 0x0005 }, 210 { 14, 0x0004 }, 211 { 0, 0x0000 } 212 }; 213 214 static const ARM_VLC32 armVCM4P10_CAVLCCoeffToken2[63] = { 215 { 4, 0x000f }, 216 { 6, 0x000f }, 217 { 4, 0x000e }, 218 { 6, 0x000b }, 219 { 5, 0x000f }, 220 { 4, 0x000d }, 221 { 6, 0x0008 }, 222 { 5, 0x000c }, 223 { 5, 0x000e }, 224 { 4, 0x000c }, 225 { 7, 0x000f }, 226 { 5, 0x000a }, 227 { 5, 0x000b }, 228 { 4, 0x000b }, 229 { 7, 0x000b }, 230 { 5, 0x0008 }, 231 { 5, 0x0009 }, 232 { 4, 0x000a }, 233 { 7, 0x0009 }, 234 { 6, 0x000e }, 235 { 6, 0x000d }, 236 { 4, 0x0009 }, 237 { 7, 0x0008 }, 238 { 6, 0x000a }, 239 { 6, 0x0009 }, 240 { 4, 0x0008 }, 241 { 8, 0x000f }, 242 { 7, 0x000e }, 243 { 7, 0x000d }, 244 { 5, 0x000d }, 245 { 8, 0x000b }, 246 { 8, 0x000e }, 247 { 7, 0x000a }, 248 { 6, 0x000c }, 249 { 9, 0x000f }, 250 { 8, 0x000a }, 251 { 8, 0x000d }, 252 { 7, 0x000c }, 253 { 9, 0x000b }, 254 { 9, 0x000e }, 255 { 8, 0x0009 }, 256 { 8, 0x000c }, 257 { 9, 0x0008 }, 258 { 9, 0x000a }, 259 { 9, 0x000d }, 260 { 8, 0x0008 }, 261 { 10, 0x000d }, 262 { 9, 0x0007 }, 263 { 9, 0x0009 }, 264 { 9, 0x000c }, 265 { 10, 0x0009 }, 266 { 10, 0x000c }, 267 { 10, 0x000b }, 268 { 10, 0x000a }, 269 { 10, 0x0005 }, 270 { 10, 0x0008 }, 271 { 10, 0x0007 }, 272 { 10, 0x0006 }, 273 { 10, 0x0001 }, 274 { 10, 0x0004 }, 275 { 10, 0x0003 }, 276 { 10, 0x0002 }, 277 { 0, 0x0000 } 278 }; 279 280 static const ARM_VLC32 armVCM4P10_CAVLCCoeffToken3[63] = { 281 { 6, 0x0003 }, 282 { 6, 0x0000 }, 283 { 6, 0x0001 }, 284 { 6, 0x0004 }, 285 { 6, 0x0005 }, 286 { 6, 0x0006 }, 287 { 6, 0x0008 }, 288 { 6, 0x0009 }, 289 { 6, 0x000a }, 290 { 6, 0x000b }, 291 { 6, 0x000c }, 292 { 6, 0x000d }, 293 { 6, 0x000e }, 294 { 6, 0x000f }, 295 { 6, 0x0010 }, 296 { 6, 0x0011 }, 297 { 6, 0x0012 }, 298 { 6, 0x0013 }, 299 { 6, 0x0014 }, 300 { 6, 0x0015 }, 301 { 6, 0x0016 }, 302 { 6, 0x0017 }, 303 { 6, 0x0018 }, 304 { 6, 0x0019 }, 305 { 6, 0x001a }, 306 { 6, 0x001b }, 307 { 6, 0x001c }, 308 { 6, 0x001d }, 309 { 6, 0x001e }, 310 { 6, 0x001f }, 311 { 6, 0x0020 }, 312 { 6, 0x0021 }, 313 { 6, 0x0022 }, 314 { 6, 0x0023 }, 315 { 6, 0x0024 }, 316 { 6, 0x0025 }, 317 { 6, 0x0026 }, 318 { 6, 0x0027 }, 319 { 6, 0x0028 }, 320 { 6, 0x0029 }, 321 { 6, 0x002a }, 322 { 6, 0x002b }, 323 { 6, 0x002c }, 324 { 6, 0x002d }, 325 { 6, 0x002e }, 326 { 6, 0x002f }, 327 { 6, 0x0030 }, 328 { 6, 0x0031 }, 329 { 6, 0x0032 }, 330 { 6, 0x0033 }, 331 { 6, 0x0034 }, 332 { 6, 0x0035 }, 333 { 6, 0x0036 }, 334 { 6, 0x0037 }, 335 { 6, 0x0038 }, 336 { 6, 0x0039 }, 337 { 6, 0x003a }, 338 { 6, 0x003b }, 339 { 6, 0x003c }, 340 { 6, 0x003d }, 341 { 6, 0x003e }, 342 { 6, 0x003f }, 343 { 0, 0x0000 } 344 }; 345 346 static const ARM_VLC32 armVCM4P10_CAVLCCoeffToken4[15] = { 347 { 2, 0x0001 }, 348 { 6, 0x0007 }, 349 { 1, 0x0001 }, 350 { 6, 0x0004 }, 351 { 6, 0x0006 }, 352 { 3, 0x0001 }, 353 { 6, 0x0003 }, 354 { 7, 0x0003 }, 355 { 7, 0x0002 }, 356 { 6, 0x0005 }, 357 { 6, 0x0002 }, 358 { 8, 0x0003 }, 359 { 8, 0x0002 }, 360 { 7, 0x0000 }, 361 { 0, 0x0000 } 362 }; 363 364 365 const ARM_VLC32 *armVCM4P10_CAVLCCoeffTokenTables[5] = { 366 armVCM4P10_CAVLCCoeffToken0, 367 armVCM4P10_CAVLCCoeffToken1, 368 armVCM4P10_CAVLCCoeffToken2, 369 armVCM4P10_CAVLCCoeffToken3, 370 armVCM4P10_CAVLCCoeffToken4 371 }; 372 373 /* Table for level_prefix */ 374 375 const ARM_VLC32 armVCM4P10_CAVLCLevelPrefix[17] = { 376 { 1, 1}, 377 { 2, 1}, 378 { 3, 1}, 379 { 4, 1}, 380 { 5, 1}, 381 { 6, 1}, 382 { 7, 1}, 383 { 8, 1}, 384 { 9, 1}, 385 { 10, 1}, 386 { 11, 1}, 387 { 12, 1}, 388 { 13, 1}, 389 { 14, 1}, 390 { 15, 1}, 391 { 16, 1}, 392 { 0, 0} 393 }; 394 395 /* Tables for total_zeros */ 396 397 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros1[17] = { 398 { 1, 0x0001 }, 399 { 3, 0x0003 }, 400 { 3, 0x0002 }, 401 { 4, 0x0003 }, 402 { 4, 0x0002 }, 403 { 5, 0x0003 }, 404 { 5, 0x0002 }, 405 { 6, 0x0003 }, 406 { 6, 0x0002 }, 407 { 7, 0x0003 }, 408 { 7, 0x0002 }, 409 { 8, 0x0003 }, 410 { 8, 0x0002 }, 411 { 9, 0x0003 }, 412 { 9, 0x0002 }, 413 { 9, 0x0001 }, 414 { 0, 0x0000 } 415 }; 416 417 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros2[16] = { 418 { 3, 0x0007 }, 419 { 3, 0x0006 }, 420 { 3, 0x0005 }, 421 { 3, 0x0004 }, 422 { 3, 0x0003 }, 423 { 4, 0x0005 }, 424 { 4, 0x0004 }, 425 { 4, 0x0003 }, 426 { 4, 0x0002 }, 427 { 5, 0x0003 }, 428 { 5, 0x0002 }, 429 { 6, 0x0003 }, 430 { 6, 0x0002 }, 431 { 6, 0x0001 }, 432 { 6, 0x0000 }, 433 { 0, 0x0000 } 434 }; 435 436 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros3[15] = { 437 { 4, 0x0005 }, 438 { 3, 0x0007 }, 439 { 3, 0x0006 }, 440 { 3, 0x0005 }, 441 { 4, 0x0004 }, 442 { 4, 0x0003 }, 443 { 3, 0x0004 }, 444 { 3, 0x0003 }, 445 { 4, 0x0002 }, 446 { 5, 0x0003 }, 447 { 5, 0x0002 }, 448 { 6, 0x0001 }, 449 { 5, 0x0001 }, 450 { 6, 0x0000 }, 451 { 0, 0x0000 } 452 }; 453 454 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros4[14] = { 455 { 5, 0x0003 }, 456 { 3, 0x0007 }, 457 { 4, 0x0005 }, 458 { 4, 0x0004 }, 459 { 3, 0x0006 }, 460 { 3, 0x0005 }, 461 { 3, 0x0004 }, 462 { 4, 0x0003 }, 463 { 3, 0x0003 }, 464 { 4, 0x0002 }, 465 { 5, 0x0002 }, 466 { 5, 0x0001 }, 467 { 5, 0x0000 }, 468 { 0, 0x0000 } 469 }; 470 471 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros5[13] = { 472 { 4, 0x0005 }, 473 { 4, 0x0004 }, 474 { 4, 0x0003 }, 475 { 3, 0x0007 }, 476 { 3, 0x0006 }, 477 { 3, 0x0005 }, 478 { 3, 0x0004 }, 479 { 3, 0x0003 }, 480 { 4, 0x0002 }, 481 { 5, 0x0001 }, 482 { 4, 0x0001 }, 483 { 5, 0x0000 }, 484 { 0, 0x0000 } 485 }; 486 487 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros6[12] = { 488 { 6, 0x0001 }, 489 { 5, 0x0001 }, 490 { 3, 0x0007 }, 491 { 3, 0x0006 }, 492 { 3, 0x0005 }, 493 { 3, 0x0004 }, 494 { 3, 0x0003 }, 495 { 3, 0x0002 }, 496 { 4, 0x0001 }, 497 { 3, 0x0001 }, 498 { 6, 0x0000 }, 499 { 0, 0x0000 } 500 }; 501 502 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros7[11] = { 503 { 6, 0x0001 }, 504 { 5, 0x0001 }, 505 { 3, 0x0005 }, 506 { 3, 0x0004 }, 507 { 3, 0x0003 }, 508 { 2, 0x0003 }, 509 { 3, 0x0002 }, 510 { 4, 0x0001 }, 511 { 3, 0x0001 }, 512 { 6, 0x0000 }, 513 { 0, 0x0000 } 514 }; 515 516 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros8[10] = { 517 { 6, 0x0001 }, 518 { 4, 0x0001 }, 519 { 5, 0x0001 }, 520 { 3, 0x0003 }, 521 { 2, 0x0003 }, 522 { 2, 0x0002 }, 523 { 3, 0x0002 }, 524 { 3, 0x0001 }, 525 { 6, 0x0000 }, 526 { 0, 0x0000 } 527 }; 528 529 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros9[9] = { 530 { 6, 0x0001 }, 531 { 6, 0x0000 }, 532 { 4, 0x0001 }, 533 { 2, 0x0003 }, 534 { 2, 0x0002 }, 535 { 3, 0x0001 }, 536 { 2, 0x0001 }, 537 { 5, 0x0001 }, 538 { 0, 0x0000 } 539 }; 540 541 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros10[8] = { 542 { 5, 0x0001 }, 543 { 5, 0x0000 }, 544 { 3, 0x0001 }, 545 { 2, 0x0003 }, 546 { 2, 0x0002 }, 547 { 2, 0x0001 }, 548 { 4, 0x0001 }, 549 { 0, 0x0000 } 550 }; 551 552 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros11[7] = { 553 { 4, 0x0000 }, 554 { 4, 0x0001 }, 555 { 3, 0x0001 }, 556 { 3, 0x0002 }, 557 { 1, 0x0001 }, 558 { 3, 0x0003 }, 559 { 0, 0x0000 } 560 }; 561 562 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros12[6] = { 563 { 4, 0x0000 }, 564 { 4, 0x0001 }, 565 { 2, 0x0001 }, 566 { 1, 0x0001 }, 567 { 3, 0x0001 }, 568 { 0, 0x0000 } 569 }; 570 571 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros13[5] = { 572 { 3, 0x0000 }, 573 { 3, 0x0001 }, 574 { 1, 0x0001 }, 575 { 2, 0x0001 }, 576 { 0, 0x0000 } 577 }; 578 579 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros14[4] = { 580 { 2, 0x0000 }, 581 { 2, 0x0001 }, 582 { 1, 0x0001 }, 583 { 0, 0x0000 } 584 }; 585 586 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros15[3] = { 587 { 1, 0x0000 }, 588 { 1, 0x0001 }, 589 { 0, 0x0000 } 590 }; 591 592 const ARM_VLC32 *armVCM4P10_CAVLCTotalZeroTables[15] = { 593 armVCM4P10_CAVLCTotalZeros1, 594 armVCM4P10_CAVLCTotalZeros2, 595 armVCM4P10_CAVLCTotalZeros3, 596 armVCM4P10_CAVLCTotalZeros4, 597 armVCM4P10_CAVLCTotalZeros5, 598 armVCM4P10_CAVLCTotalZeros6, 599 armVCM4P10_CAVLCTotalZeros7, 600 armVCM4P10_CAVLCTotalZeros8, 601 armVCM4P10_CAVLCTotalZeros9, 602 armVCM4P10_CAVLCTotalZeros10, 603 armVCM4P10_CAVLCTotalZeros11, 604 armVCM4P10_CAVLCTotalZeros12, 605 armVCM4P10_CAVLCTotalZeros13, 606 armVCM4P10_CAVLCTotalZeros14, 607 armVCM4P10_CAVLCTotalZeros15 608 }; 609 610 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros2x2_1[5] = { 611 { 1, 1 }, 612 { 2, 1 }, 613 { 3, 1 }, 614 { 3, 0 }, 615 { 0, 0 } 616 }; 617 618 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros2x2_2[4] = { 619 { 1, 1 }, 620 { 2, 1 }, 621 { 2, 0 }, 622 { 0, 0 } 623 }; 624 625 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros2x2_3[3] = { 626 { 1, 1 }, 627 { 1, 0 }, 628 { 0, 0 } 629 }; 630 631 const ARM_VLC32 *armVCM4P10_CAVLCTotalZeros2x2Tables[3] = { 632 armVCM4P10_CAVLCTotalZeros2x2_1, 633 armVCM4P10_CAVLCTotalZeros2x2_2, 634 armVCM4P10_CAVLCTotalZeros2x2_3 635 }; 636 637 638 /* Tables for run_before */ 639 640 static const ARM_VLC32 armVCM4P10_CAVLCRunBefore1[3] = { 641 { 1, 0x0001 }, 642 { 1, 0x0000 }, 643 { 0, 0x0000 } 644 }; 645 646 static const ARM_VLC32 armVCM4P10_CAVLCRunBefore2[4] = { 647 { 1, 0x0001 }, 648 { 2, 0x0001 }, 649 { 2, 0x0000 }, 650 { 0, 0x0000 } 651 }; 652 653 static const ARM_VLC32 armVCM4P10_CAVLCRunBefore3[5] = { 654 { 2, 0x0003 }, 655 { 2, 0x0002 }, 656 { 2, 0x0001 }, 657 { 2, 0x0000 }, 658 { 0, 0x0000 } 659 }; 660 661 static const ARM_VLC32 armVCM4P10_CAVLCRunBefore4[6] = { 662 { 2, 0x0003 }, 663 { 2, 0x0002 }, 664 { 2, 0x0001 }, 665 { 3, 0x0001 }, 666 { 3, 0x0000 }, 667 { 0, 0x0000 } 668 }; 669 670 static const ARM_VLC32 armVCM4P10_CAVLCRunBefore5[7] = { 671 { 2, 0x0003 }, 672 { 2, 0x0002 }, 673 { 3, 0x0003 }, 674 { 3, 0x0002 }, 675 { 3, 0x0001 }, 676 { 3, 0x0000 }, 677 { 0, 0x0000 } 678 }; 679 680 static const ARM_VLC32 armVCM4P10_CAVLCRunBefore6[8] = { 681 { 2, 0x0003 }, 682 { 3, 0x0000 }, 683 { 3, 0x0001 }, 684 { 3, 0x0003 }, 685 { 3, 0x0002 }, 686 { 3, 0x0005 }, 687 { 3, 0x0004 }, 688 { 0, 0x0000 } 689 }; 690 691 static const ARM_VLC32 armVCM4P10_CAVLCRunBefore7[16] = { 692 { 3, 0x0007 }, 693 { 3, 0x0006 }, 694 { 3, 0x0005 }, 695 { 3, 0x0004 }, 696 { 3, 0x0003 }, 697 { 3, 0x0002 }, 698 { 3, 0x0001 }, 699 { 4, 0x0001 }, 700 { 5, 0x0001 }, 701 { 6, 0x0001 }, 702 { 7, 0x0001 }, 703 { 8, 0x0001 }, 704 { 9, 0x0001 }, 705 { 10, 0x0001 }, 706 { 11, 0x0001 }, 707 { 0, 0x0000 } 708 }; 709 710 const ARM_VLC32 *armVCM4P10_CAVLCRunBeforeTables[7] = { 711 armVCM4P10_CAVLCRunBefore1, 712 armVCM4P10_CAVLCRunBefore2, 713 armVCM4P10_CAVLCRunBefore3, 714 armVCM4P10_CAVLCRunBefore4, 715 armVCM4P10_CAVLCRunBefore5, 716 armVCM4P10_CAVLCRunBefore6, 717 armVCM4P10_CAVLCRunBefore7 718 }; 719