| @@ -481,6 +481,515 @@ RLTable ff_rl_table[NB_RL_TABLES] = { · 480 unmodified lines |
| 481 | | 481 | |
| 482 | /* motion vector table 0 */ | 482 | /* motion vector table 0 */ |
| 483 | | 483 | |
| | 484 | #define E(mvx, mvy) ((mvx << 8) | mvy) |
| | 485 | #define ESCAPE 0 |
| | 486 | |
| | 487 | const uint16_t ff_msmp4_mv_table0[MSMPEG4_MV_TABLES_NB_ELEMS] = { |
| | 488 | ESCAPE, E(31, 39), E(38, 31), E(24, 32), E(23, 30), E(34, 20), |
| | 489 | E(33, 22), E(21, 29), E(28, 34), E(33, 24), E(49, 32), E(27, 41), |
| | 490 | E(32, 2), E(40, 33), E(34, 39), E(37, 25), E(29, 26), E(38, 28), |
| | 491 | E(43, 31), E(37, 33), E(31, 35), E(32, 35), E(25, 29), E(26, 28), |
| | 492 | E(32, 42), E(33, 23), E(42, 31), E(35, 36), E(27, 31), E(36, 30), |
| | 493 | E(21, 32), E(23, 32), E(43, 32), E(36, 32), E(39, 29), E(38, 30), |
| | 494 | E(36, 34), E(34, 36), E(19, 30), E(20, 38), E(41, 41), E(26, 44), |
| | 495 | E(41, 53), E(42, 11), E(42, 20), E(42, 25), E(26, 45), E(26, 46), |
| | 496 | E(26, 47), E(26, 48), E( 1, 39), E(26, 52), E(37, 46), E(37, 49), |
| | 497 | E(37, 63), E(23, 55), E(34, 44), E(42, 38), E(27, 13), E(43, 13), |
| | 498 | E(34, 57), E(27, 22), E(31, 51), E(24, 16), E(33, 12), E(16, 28), |
| | 499 | E( 3, 35), E(31, 57), E(24, 25), E(31, 33), E(33, 33), E(34, 32), |
| | 500 | E(31, 34), E(34, 31), E(33, 20), E(24, 26), E( 4, 28), E(44, 28), |
| | 501 | E(44, 29), E(11, 32), E(44, 31), E(31, 62), E(13, 34), E(13, 35), |
| | 502 | E(44, 35), E(45, 19), E(13, 49), E(25, 48), E(22, 39), E(38, 40), |
| | 503 | E(26, 18), E(38, 43), E(38, 46), E(39, 11), E(32, 6), E(30, 48), |
| | 504 | E(39, 19), E(30, 49), E(22, 41), E(32, 10), E(26, 23), E(30, 58), |
| | 505 | E(47, 17), E(47, 21), E(47, 23), E(19, 34), E(47, 30), E(30, 60), |
| | 506 | E(31, 0), E(35, 44), E( 8, 34), E(23, 26), E(47, 37), E(47, 46), |
| | 507 | E(27, 43), E(35, 49), E(47, 59), E(31, 4), E(48, 34), E(35, 59), |
| | 508 | E(19, 37), E(36, 22), E(49, 25), E(49, 28), E(33, 46), E(31, 6), |
| | 509 | E(39, 40), E(27, 59), E(39, 42), E(49, 36), E(49, 61), E(50, 28), |
| | 510 | E(50, 30), E(50, 31), E(39, 43), E(31, 10), E(51, 22), E(51, 23), |
| | 511 | E(39, 47), E(28, 20), E(33, 52), E(33, 55), E(21, 36), E(40, 25), |
| | 512 | E(31, 16), E(52, 1), E(53, 11), E(40, 27), E(53, 29), E( 9, 5), |
| | 513 | E(33, 63), E(31, 18), E(53, 41), E(54, 31), E(54, 34), E(54, 38), |
| | 514 | E(55, 1), E(55, 5), E(34, 13), E(15, 28), E(56, 31), E(25, 17), |
| | 515 | E(56, 38), E(21, 39), E(21, 41), E(40, 36), E(40, 37), E(25, 22), |
| | 516 | E(40, 39), E(58, 33), E(36, 43), E( 5, 43), E(41, 15), E(41, 17), |
| | 517 | E(12, 49), E(60, 30), E(41, 21), E(41, 22), E(37, 20), E(22, 10), |
| | 518 | E(61, 17), E(18, 25), E(29, 54), E(29, 57), E(30, 3), E(61, 34), |
| | 519 | E(30, 8), E(61, 36), E(62, 25), E(62, 31), E(30, 14), E(30, 15), |
| | 520 | E(63, 19), E(18, 29), E(13, 25), E(30, 18), E(45, 30), E( 1, 63), |
| | 521 | E(34, 16), E(31, 42), E(22, 28), E(35, 13), E(15, 33), E(46, 33), |
| | 522 | E(46, 35), E(35, 19), E(31, 46), E(28, 43), E(29, 17), E(29, 19), |
| | 523 | E(23, 36), E(41, 39), E(27, 24), E(14, 31), E(53, 32), E(53, 33), |
| | 524 | E(27, 26), E(24, 28), E(32, 62), E(57, 33), E(32, 63), E(17, 33), |
| | 525 | E(42, 39), E(37, 19), E(29, 49), E(33, 17), E( 1, 31), E(25, 43), |
| | 526 | E(32, 13), E(32, 15), E(63, 29), E(26, 25), E(40, 35), E(23, 34), |
| | 527 | E(27, 25), E(22, 33), E(24, 29), E(22, 31), E(39, 39), E(43, 35), |
| | 528 | E(27, 36), E(37, 24), E( 6, 32), E(42, 30), E(24, 33), E(40, 31), |
| | 529 | E(28, 39), E(32, 1), E(32, 41), E(41, 32), E(36, 31), E(28, 32), |
| | 530 | E(35, 31), E(29, 31), E(38, 32), E(23, 31), E(27, 30), E(32, 59), |
| | 531 | E(32, 22), E(32, 21), E(30, 39), E(35, 25), E(26, 34), E(34, 38), |
| | 532 | E(30, 28), E(44, 33), E(36, 23), E(47, 33), E(26, 27), E(30, 44), |
| | 533 | E(31, 60), E(41, 30), E(39, 36), E(33, 19), E(33, 29), E(32, 36), |
| | 534 | E(22, 34), E(45, 31), E(36, 24), E(32, 16), E(45, 35), E(19, 32), |
| | 535 | E(36, 27), E(32, 4), E(43, 33), E(60, 32), E(37, 31), E(35, 33), |
| | 536 | E(35, 32), E(34, 29), E(33, 28), E(25, 33), E(25, 34), E(21, 33), |
| | 537 | E(36, 35), E(37, 32), E(29, 39), E(31, 24), E(30, 41), E(31, 3), |
| | 538 | E(41, 35), E(22, 32), E(32, 39), E(32, 30), E(33, 32), E(32, 29), |
| | 539 | E(33, 35), E(31, 28), E(28, 30), E(26, 33), E(31, 49), E(39, 41), |
| | 540 | E(20, 28), E(20, 29), E(44, 34), E(23, 38), E(33, 7), E(34, 61), |
| | 541 | E(29, 29), E(31, 38), E(35, 11), E(33, 50), E(33, 13), E(28, 41), |
| | 542 | E(41, 19), E(23, 47), E(41, 25), E(41, 26), E(29, 15), E(25, 42), |
| | 543 | E(26, 41), E(49, 29), E(29, 45), E(24, 27), E(37, 17), E(49, 35), |
| | 544 | E(34, 33), E(30, 35), E(50, 32), E(51, 29), E(51, 32), E(26, 24), |
| | 545 | E(39, 13), E(25, 26), E(26, 26), E(15, 31), E(39, 24), E(18, 33), |
| | 546 | E(42, 28), E(17, 30), E( 4, 31), E(31, 11), E(32, 45), E(32, 46), |
| | 547 | E(60, 33), E( 1, 33), E(42, 35), E(32, 57), E( 0, 32), E(12, 32), |
| | 548 | E(19, 35), E(35, 45), E(22, 38), E(30, 21), E( 5, 33), E( 5, 31), |
| | 549 | E(17, 31), E(29, 21), E(22, 35), E(31, 5), E(31, 17), E(43, 29), |
| | 550 | E(37, 38), E(27, 38), E(32, 18), E(32, 58), E(32, 19), E(33, 43), |
| | 551 | E(29, 41), E(33, 41), E(31, 37), E(30, 37), E(41, 33), E( 7, 32), |
| | 552 | E(28, 31), E(34, 27), E(30, 27), E(37, 28), E(26, 36), E(34, 30), |
| | 553 | E(31, 29), E(33, 30), E(27, 32), E(38, 29), E(30, 25), E(36, 28), |
| | 554 | E(37, 36), E(21, 34), E(23, 39), E(19, 53), E(34, 41), E(36, 33), |
| | 555 | E(32, 28), E(25, 32), E(29, 32), E(29, 33), E(33, 27), E(29, 27), |
| | 556 | E(43, 30), E(35, 41), E(29, 43), E(26, 39), E(22, 29), E(32, 7), |
| | 557 | E(19, 29), E(32, 17), E(25, 28), E(31, 19), E(41, 28), E(49, 31), |
| | 558 | E(28, 25), E(34, 19), E(28, 40), E(39, 26), E(34, 21), E(19, 33), |
| | 559 | E(37, 39), E(38, 23), E(29, 40), E(21, 30), E(36, 39), E(42, 34), |
| | 560 | E(27, 28), E(59, 33), E(38, 33), E(35, 28), E(33, 34), E(30, 32), |
| | 561 | E(30, 36), E(23, 35), E(33, 21), E(35, 23), E(31, 21), E(30, 26), |
| | 562 | E(41, 31), E(39, 32), E(32, 27), E(26, 30), E(31, 22), E(37, 37), |
| | 563 | E(38, 27), E(39, 27), E(32, 43), E(23, 29), E(32, 60), E(27, 39), |
| | 564 | E(25, 35), E(61, 32), E(30, 33), E(30, 34), E(34, 28), E(33, 36), |
| | 565 | E(37, 27), E(20, 22), E(20, 27), E(41, 20), E(13, 29), E( 2, 33), |
| | 566 | E( 5, 41), E( 5, 42), E( 1, 35), E(32, 24), E(34, 24), E( 5, 62), |
| | 567 | E(32, 50), E( 6, 29), E(32, 53), E(35, 50), E(20, 35), E(35, 55), |
| | 568 | E(27, 42), E(35, 61), E(35, 63), E(36, 4), E(36, 7), E(13, 42), |
| | 569 | E(36, 21), E(41, 46), E(41, 47), E(33, 37), E(28, 33), E(41, 49), |
| | 570 | E( 3, 27), E(30, 46), E(42, 17), E(27, 55), E(20, 41), E(30, 50), |
| | 571 | E(27, 63), E(28, 4), E(30, 56), E(21, 18), E(33, 8), E(33, 10), |
| | 572 | E(14, 18), E(24, 51), E(30, 63), E(42, 36), E(24, 55), E(33, 18), |
| | 573 | E(25, 5), E(42, 55), E(43, 9), E(14, 29), E(43, 17), E(43, 21), |
| | 574 | E(14, 30), E(43, 27), E( 7, 1), E(36, 59), E(37, 7), E(37, 11), |
| | 575 | E(37, 12), E(37, 15), E( 7, 5), E(14, 42), E(25, 24), E(43, 41), |
| | 576 | E(43, 43), E(44, 7), E(15, 27), E(37, 22), E( 7, 25), E( 7, 31), |
| | 577 | E( 3, 30), E( 1, 37), E( 8, 22), E(15, 39), E(15, 53), E( 8, 29), |
| | 578 | E(44, 36), E(44, 37), E(44, 48), E(45, 0), E(45, 5), E(45, 13), |
| | 579 | E(45, 17), E( 8, 31), E( 8, 32), E(45, 26), E(21, 46), E(45, 28), |
| | 580 | E(28, 44), E(28, 45), E(28, 46), E(21, 53), E(28, 49), E(28, 51), |
| | 581 | E(22, 3), E(37, 41), E(46, 3), E(46, 22), E(37, 42), E( 8, 33), |
| | 582 | E(29, 5), E(37, 45), E(29, 7), E(22, 22), E(46, 40), E(37, 53), |
| | 583 | E(22, 24), E(29, 14), E(47, 25), E(47, 27), E(38, 10), E(38, 12), |
| | 584 | E(16, 34), E(38, 16), E(38, 17), E(33, 53), E(38, 20), E(22, 26), |
| | 585 | E(47, 39), E(47, 45), E(29, 18), E(25, 45), E(16, 35), E( 0, 33), |
| | 586 | E(48, 31), E( 1, 49), E(34, 4), E(48, 39), E(48, 42), E(34, 11), |
| | 587 | E(25, 51), E(26, 5), E(26, 13), E(49, 26), E(49, 27), E(26, 17), |
| | 588 | E( 1, 52), E(49, 30), E( 4, 0), E(26, 22), E( 4, 12), E(49, 34), |
| | 589 | E( 1, 62), E( 9, 36), E(49, 38), E(49, 41), E(49, 47), E(10, 30), |
| | 590 | E(49, 63), E(17, 38), E(38, 41), E(17, 43), E(17, 59), E(50, 33), |
| | 591 | E(38, 45), E(50, 37), E(50, 38), E(22, 40), E(38, 47), E(51, 24), |
| | 592 | E(38, 48), E(38, 49), E(51, 30), E(39, 1), E(39, 10), E(18, 22), |
| | 593 | E(22, 49), E(39, 15), E(51, 39), E(22, 59), E(52, 31), E(52, 32), |
| | 594 | E(52, 33), E(39, 18), E(53, 13), E(53, 15), E(10, 31), E(23, 21), |
| | 595 | E(18, 27), E(29, 44), E(10, 42), E(53, 39), E(29, 46), E(54, 17), |
| | 596 | E(11, 26), E(54, 32), E(11, 30), E(11, 31), E(55, 0), E( 1, 30), |
| | 597 | E(18, 34), E(55, 9), E(55, 12), E(55, 13), E(55, 25), E(55, 31), |
| | 598 | E(55, 32), E(29, 55), E(34, 43), E(18, 35), E(29, 61), E(56, 33), |
| | 599 | E(56, 35), E(34, 46), E(57, 25), E(34, 47), E(34, 48), E(29, 62), |
| | 600 | E(29, 63), E(57, 38), E(57, 61), E(35, 1), E(35, 2), E(35, 5), |
| | 601 | E(35, 7), E(35, 9), E(39, 46), E(35, 10), E(59, 34), E(59, 35), |
| | 602 | E(18, 36), E(59, 55), E(39, 51), E(30, 7), E(18, 40), E(40, 23), |
| | 603 | E(60, 34), E(60, 37), E(61, 5), E(30, 13), E(18, 42), E(61, 18), |
| | 604 | E(61, 25), E(19, 27), E(19, 28), E(41, 11), E(17, 37), E(26, 42), |
| | 605 | E(20, 39), E(45, 37), E(46, 31), E(32, 49), E(37, 21), E(22, 27), |
| | 606 | E(47, 29), E(29, 47), E(31, 53), E(27, 40), E(29, 51), E(30, 16), |
| | 607 | E(21, 26), E(33, 1), E(35, 40), E(18, 30), E(25, 41), E(33, 44), |
| | 608 | E(50, 34), E(51, 25), E(42, 27), E( 2, 31), E(15, 35), E(51, 35), |
| | 609 | E(53, 31), E(33, 15), E(25, 49), E(29, 1), E(55, 35), E(37, 40), |
| | 610 | E(38, 5), E(33, 58), E(38, 21), E(59, 29), E(38, 22), E(33, 59), |
| | 611 | E(39, 45), E(13, 31), E(32, 9), E(40, 26), E(61, 9), E(61, 29), |
| | 612 | E(32, 11), E( 9, 32), E(44, 30), E( 3, 3), E(31, 13), E(29, 20), |
| | 613 | E(25, 18), E(24, 35), E(48, 32), E(16, 32), E(28, 24), E(49, 33), |
| | 614 | E(22, 30), E(34, 40), E(31, 47), E(38, 39), E(39, 37), E(44, 32), |
| | 615 | E(11, 33), E(35, 24), E(30, 23), E(33, 45), E(33, 47), E(36, 25), |
| | 616 | E(31, 59), E(40, 34), E(25, 27), E(27, 27), E(38, 26), E(31, 40), |
| | 617 | E(36, 37), E(28, 27), E(32, 31), E(31, 31), E(34, 35), E(32, 37), |
| | 618 | E(34, 34), E(24, 31), E(39, 34), E(34, 37), E(27, 33), E(28, 35), |
| | 619 | E(31, 61), E(36, 26), E(25, 39), E(45, 33), E(25, 31), E(35, 34), |
| | 620 | E( 3, 31), E(34, 22), E(38, 37), E(39, 25), E(40, 30), E(38, 25), |
| | 621 | E( 1, 32), E(25, 30), E(39, 35), E(30, 38), E(37, 29), E(32, 40), |
| | 622 | E(28, 28), E(29, 38), E(32, 5), E(37, 34), E(31, 27), E(35, 27), |
| | 623 | E(27, 29), E(23, 27), E(28, 23), E(33, 42), E(46, 32), E(15, 32), |
| | 624 | E(13, 33), E(24, 36), E(41, 37), E(24, 37), E(34, 17), E(34, 18), |
| | 625 | E(30, 22), E(26, 40), E(24, 38), E(14, 32), E(60, 31), E(21, 35), |
| | 626 | E(29, 24), E(39, 17), E(23, 25), E(35, 17), E(37, 23), E(30, 24), |
| | 627 | E(32, 61), E(19, 31), E(24, 34), E(25, 25), E(26, 38), E(45, 32), |
| | 628 | E(38, 35), E(36, 29), E( 3, 32), E(26, 29), E(36, 36), E(30, 31), |
| | 629 | E(59, 32), E(28, 36), E(63, 32), E(26, 32), E(38, 34), E(63, 33), |
| | 630 | E(31, 20), E(27, 11), E(20, 32), E(24, 30), E(33, 3), E(37, 35), |
| | 631 | E(28, 38), E(39, 30), E(32, 3), E(31, 26), E(39, 31), E(35, 29), |
| | 632 | E(31, 30), E(32, 38), E(23, 33), E(23, 3), E( 9, 29), E(25, 40), |
| | 633 | E( 9, 31), E(29, 53), E(20, 30), E(30, 17), E(30, 20), E(42, 37), |
| | 634 | E(18, 31), E(28, 42), E(25, 47), E(28, 47), E(28, 54), E(21, 38), |
| | 635 | E(29, 9), E(43, 34), E(29, 13), E(43, 37), E(26, 21), E(44, 25), |
| | 636 | E(44, 27), E(21, 43), E(38, 42), E(35, 30), E(21, 45), E(24, 40), |
| | 637 | E(45, 25), E(45, 27), E(35, 46), E(39, 22), E(22, 25), E(35, 53), |
| | 638 | E(36, 20), E(34, 2), E(34, 14), E(45, 39), E(34, 15), E(29, 22), |
| | 639 | E(31, 44), E(46, 34), E(25, 21), E(46, 38), E(16, 33), E(17, 27), |
| | 640 | E(31, 48), E(20, 34), E(32, 52), E(47, 35), E(47, 47), E(47, 49), |
| | 641 | E(32, 54), E(49, 2), E(49, 13), E(49, 23), E(31, 52), E( 1, 29), |
| | 642 | E(27, 45), E(28, 22), E(39, 49), E(39, 54), E(21, 21), E(36, 40), |
| | 643 | E(23, 42), E(51, 31), E( 2, 30), E(40, 29), E(51, 34), E(32, 0), |
| | 644 | E(53, 25), E(24, 23), E(30, 51), E(24, 24), E(30, 59), E(21, 28), |
| | 645 | E(40, 38), E(57, 29), E(57, 31), E(31, 2), E(41, 13), E(58, 31), |
| | 646 | E(32, 8), E(12, 31), E( 4, 33), E(32, 12), E(34, 45), E(59, 41), |
| | 647 | E(31, 7), E(32, 14), E(13, 30), E( 9, 25), E(35, 18), E(26, 43), |
| | 648 | E(35, 20), E(37, 43), E(61, 35), E(37, 44), E(63, 1), E(26, 49), |
| | 649 | E(29, 42), E(41, 42), E(45, 34), E(33, 51), E(34, 42), E(47, 31), |
| | 650 | E(41, 36), E(22, 36), E(42, 29), E(35, 21), E(35, 22), E(23, 37), |
| | 651 | E(32, 44), E(35, 43), E(43, 25), E(32, 47), E( 7, 33), E(31, 45), |
| | 652 | E(41, 27), E(20, 31), E(31, 58), E(16, 31), E(13, 32), E(63, 31), |
| | 653 | E(25, 38), E(30, 43), E(33, 61), E(31, 43), E(41, 29), E(34, 23), |
| | 654 | E(39, 28), E(47, 32), E(40, 28), E(58, 32), E(59, 31), E(41, 34), |
| | 655 | E(33, 5), E( 3, 33), E(17, 32), E(61, 33), E(42, 33), E(21, 31), |
| | 656 | E(26, 35), E(35, 26), E(29, 36), E(26, 31), E(33, 38), E(30, 30), |
| | 657 | E(31, 32), E(33, 31), E(37, 30), E(31, 23), E(30, 42), E(26, 37), |
| | 658 | E(33, 26), E(27, 35), E(31, 36), E(27, 34), E(35, 37), E(29, 23), |
| | 659 | E(36, 38), E(61, 31), E(33, 40), E(37, 26), E(62, 32), E(35, 38), |
| | 660 | E(57, 32), E(31, 41), E(34, 26), E(34, 25), E(40, 32), E(35, 35), |
| | 661 | E(29, 34), E(32, 25), E(29, 30), E(28, 26), E(38, 18), E(23, 41), |
| | 662 | E(32, 20), E(29, 28), E(29, 25), E(28, 37), E(42, 32), E(33, 39), |
| | 663 | E(32, 26), E(31, 25), E(30, 40), E(35, 47), E(30, 45), E(30, 54), |
| | 664 | E(31, 1), E(32, 23), E(33, 25), E(42, 26), E(47, 34), E(39, 38), |
| | 665 | E(38, 14), E(40, 22), E(40, 24), E(51, 33), E(55, 34), E(56, 32), |
| | 666 | E(18, 32), E(21, 37), E(39, 21), E(39, 23), E(33, 49), E(17, 35), |
| | 667 | E(41, 23), E(23, 28), E(24, 39), E(43, 39), E(25, 23), E(31, 55), |
| | 668 | E(20, 33), E(25, 37), E(38, 38), E(25, 36), E(27, 37), E(29, 37), |
| | 669 | E( 4, 32), E(39, 33), E( 5, 32), E(28, 29), E(38, 24), E(17, 29), |
| | 670 | E(35, 39), E( 2, 32), E(38, 36), E(30, 29), E(29, 35), E(32, 34), |
| | 671 | E(32, 33), E(32, 32), |
| | 672 | }; |
| | 673 | |
| | 674 | const uint8_t ff_msmp4_mv_table0_lens[MSMPEG4_MV_TABLES_NB_ELEMS] = { |
| | 675 | 8, 12, 12, 13, 15, 15, 15, 15, 12, 15, 15, 15, 15, 14, 14, 14, 14, 14, |
| | 676 | 14, 11, 9, 8, 13, 14, 14, 14, 14, 13, 11, 12, 12, 12, 12, 10, 13, 13, |
| | 677 | 12, 12, 16, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 678 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 6, 6, 7, |
| | 679 | 8, 8, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 680 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 681 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 682 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 683 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 684 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 685 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 16, 16, |
| | 686 | 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| | 687 | 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 15, |
| | 688 | 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 14, 14, 14, 14, 13, 12, 11, 10, |
| | 689 | 9, 9, 11, 13, 13, 14, 14, 13, 13, 13, 13, 13, 12, 16, 16, 15, 15, 15, |
| | 690 | 15, 15, 15, 15, 9, 10, 15, 15, 15, 15, 15, 15, 14, 14, 14, 13, 11, 9, |
| | 691 | 8, 10, 11, 12, 14, 14, 13, 10, 13, 14, 14, 14, 14, 13, 11, 7, 5, 8, |
| | 692 | 9, 11, 12, 13, 16, 16, 16, 16, 16, 16, 16, 16, 11, 12, 16, 16, 16, 16, |
| | 693 | 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 8, 10, 16, 16, 16, 16, |
| | 694 | 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| | 695 | 16, 16, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, |
| | 696 | 14, 14, 11, 12, 13, 13, 11, 12, 13, 14, 14, 9, 9, 8, 10, 13, 13, 13, |
| | 697 | 14, 16, 17, 17, 15, 11, 10, 10, 8, 9, 11, 13, 15, 15, 15, 15, 15, 15, |
| | 698 | 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, |
| | 699 | 14, 14, 12, 12, 8, 7, 11, 14, 14, 14, 14, 13, 13, 10, 10, 13, 14, 14, |
| | 700 | 14, 14, 14, 14, 14, 14, 13, 12, 8, 9, 11, 11, 14, 17, 17, 17, 17, 17, |
| | 701 | 17, 17, 17, 13, 13, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 702 | 17, 17, 17, 11, 11, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 703 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 704 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 705 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 706 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 707 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 708 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 709 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 710 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 711 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 712 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| | 713 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 16, 16, 16, |
| | 714 | 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| | 715 | 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| | 716 | 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15, |
| | 717 | 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, |
| | 718 | 14, 14, 4, 5, 10, 10, 9, 13, 13, 12, 11, 12, 14, 14, 14, 14, 11, 10, |
| | 719 | 14, 14, 14, 14, 14, 14, 13, 13, 13, 12, 12, 13, 13, 13, 13, 12, 11, 12, |
| | 720 | 12, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, |
| | 721 | 15, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 13, 12, 12, 13, 13, 8, |
| | 722 | 12, 13, 13, 11, 12, 15, 16, 16, 14, 14, 14, 12, 13, 13, 12, 12, 11, 10, |
| | 723 | 8, 11, 13, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| | 724 | 16, 16, 16, 16, 16, 16, 16, 16, 16, 10, 16, 16, 16, 16, 16, 16, 16, 16, |
| | 725 | 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| | 726 | 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| | 727 | 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| | 728 | 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15, |
| | 729 | 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, |
| | 730 | 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 13, |
| | 731 | 13, 13, 12, 12, 12, 9, 4, 5, 12, 13, 14, 14, 12, 12, 10, 12, 12, 14, |
| | 732 | 14, 14, 14, 14, 14, 13, 13, 13, 12, 12, 12, 10, 10, 10, 10, 14, 16, 16, |
| | 733 | 15, 13, 13, 13, 12, 12, 11, 11, 13, 15, 15, 15, 15, 12, 11, 15, 15, 15, |
| | 734 | 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, |
| | 735 | 15, 14, 14, 14, 13, 12, 12, 11, 12, 12, 14, 14, 13, 13, 13, 10, 10, 6, |
| | 736 | 4, 1, |
| | 737 | }; |
| | 738 | |
| | 739 | /* motion vector table 1 */ |
| | 740 | |
| | 741 | const uint16_t ff_msmp4_mv_table1[MSMPEG4_MV_TABLES_NB_ELEMS] = { |
| | 742 | E(32, 32), E(42, 39), E(35, 53), E( 3, 28), E(51, 39), E(35, 57), |
| | 743 | E(16, 46), E(35, 10), E(30, 52), E(63, 27), E(57, 35), E(39, 42), |
| | 744 | E(39, 45), E(25, 59), E(35, 15), E(51, 34), E(31, 9), E(48, 34), |
| | 745 | E( 2, 33), E( 6, 31), E(34, 49), E(30, 43), E(28, 42), E(33, 51), |
| | 746 | E(39, 27), E(33, 42), E(37, 25), E(60, 34), E(38, 60), E( 9, 38), |
| | 747 | E(38, 33), E(51, 32), E(30, 22), E(33, 23), E(32, 24), E(32, 26), |
| | 748 | E(32, 29), E(40, 29), E(27, 23), E(46, 29), E(31, 14), E( 9, 30), |
| | 749 | E(35, 45), E(29, 49), E(31, 11), E(47, 32), E(32, 48), E(39, 35), |
| | 750 | E(37, 31), E(25, 34), E(30, 25), E(24, 30), E(35, 25), E(61, 32), |
| | 751 | E(39, 24), E(16, 24), E(36, 23), E(50, 32), E(32, 45), E(19, 33), |
| | 752 | E(59, 33), E(29, 25), E(30, 36), E(63, 33), E(45, 39), E(31, 12), |
| | 753 | E(60, 29), E(14, 24), E(34, 0), E(42, 20), E(24, 16), E( 0, 28), |
| | 754 | E(37, 43), E(18, 35), E(61, 28), E(57, 1), E(30, 30), E(31, 33), |
| | 755 | E(31, 35), E(26, 32), E(37, 49), E(28, 4), E(53, 21), E(20, 42), |
| | 756 | E(46, 39), E(14, 29), E(47, 3), E(38, 44), E(38, 21), E(38, 53), |
| | 757 | E( 9, 55), E(34, 11), E(39, 5), E(43, 3), E(17, 39), E(39, 53), |
| | 758 | E(59, 28), E( 5, 25), E(27, 19), E( 0, 34), E(55, 31), E(46, 28), |
| | 759 | E(19, 35), E(37, 41), E(62, 30), E(34, 44), E(30, 18), E(16, 29), |
| | 760 | E(19, 34), E(49, 35), E(30, 41), E(25, 27), E(43, 32), E( 4, 32), |
| | 761 | E(34, 25), E(27, 25), E(33, 19), E(32, 41), E(25, 29), E(62, 31), |
| | 762 | E(24, 35), E(32, 38), E(30, 32), E(34, 33), E(34, 29), E(41, 36), |
| | 763 | E(12, 28), E(27, 21), E(41, 25), E(39, 26), E(30, 24), E(37, 21), |
| | 764 | E(14, 31), E( 5, 30), E(13, 34), E(35, 19), E(55, 34), E(30, 44), |
| | 765 | E(40, 36), E(40, 38), E(42, 25), E(31, 19), E(27, 36), E(30, 42), |
| | 766 | E(37, 27), E(31, 17), E(21, 33), E(45, 31), E(32, 44), E(39, 28), |
| | 767 | E(20, 33), E(46, 33), E(47, 31), E(35, 23), E(19, 31), E(33, 30), |
| | 768 | E(28, 32), E(36, 32), E(33, 32), E(34, 40), E( 8, 31), E(20, 28), |
| | 769 | E(35, 39), E(43, 33), E(25, 23), E(45, 37), E(35, 3), E(33, 55), |
| | 770 | E(35, 29), E(36, 41), E(54, 30), E(38, 22), E(27, 41), E(37, 24), |
| | 771 | E(62, 33), E(40, 26), E(15, 35), E(59, 35), E(49, 30), E( 1, 33), |
| | 772 | E(40, 33), E(32, 0), E(29, 37), E(32, 2), E( 3, 32), E(42, 32), |
| | 773 | E(49, 31), E(21, 34), E(21, 30), E(14, 32), E( 5, 31), E(28, 36), |
| | 774 | E(31, 21), E(51, 33), E(31, 55), E(29, 51), E(31, 38), E(62, 32), |
| | 775 | E(34, 47), E(34, 48), E(39, 38), E(24, 24), E(32, 30), E(29, 32), |
| | 776 | E(30, 34), E(35, 34), E(29, 15), E(25, 21), E(26, 36), E(33, 61), |
| | 777 | E(31, 26), E(32, 34), E(30, 33), E(27, 31), E(23, 35), E(29, 50), |
| | 778 | E(21, 25), E(31, 47), E(36, 37), E(35, 41), E(58, 31), E(29, 23), |
| | 779 | E(29, 41), E(21, 29), E(20, 30), E(33, 24), E(32, 22), E(42, 35), |
| | 780 | E(29, 46), E(10, 30), E(61, 29), E(33, 10), E(49, 34), E(35, 42), |
| | 781 | E(34, 45), E( 3, 29), E(38, 42), E(39, 22), E(29, 3), E( 7, 33), |
| | 782 | E(41, 27), E( 1, 34), E(30, 31), E(13, 32), E(28, 25), E(12, 32), |
| | 783 | E(40, 28), E(25, 35), E(31, 61), E(28, 31), E(29, 34), E(34, 35), |
| | 784 | E(28, 33), E(26, 33), E(35, 1), E( 4, 34), E(31, 58), E(33, 2), |
| | 785 | E(39, 37), E(21, 31), E(60, 33), E(23, 28), E(15, 34), E(38, 30), |
| | 786 | E(37, 33), E(34, 34), E(31, 28), E(23, 36), E(11, 35), E(37, 23), |
| | 787 | E(28, 23), E(35, 13), E(30, 58), E(30, 3), E(24, 26), E( 1, 63), |
| | 788 | E(43, 25), E(56, 31), E( 8, 34), E(32, 14), E(44, 33), E(32, 35), |
| | 789 | E(26, 31), E(31, 5), E(33, 49), E(31, 20), E(36, 33), E(32, 1), |
| | 790 | E(27, 33), E(31, 34), E(31, 30), E(28, 39), E(37, 36), E(43, 31), |
| | 791 | E(31, 59), E(34, 39), E(31, 27), E(34, 61), E(42, 38), E(24, 39), |
| | 792 | E(45, 25), E(30, 61), E(20, 29), E(23, 37), E( 8, 30), E(38, 41), |
| | 793 | E(22, 26), E(33, 48), E(17, 28), E(52, 33), E(34, 50), E(29, 21), |
| | 794 | E(32, 9), E(30, 23), E(49, 33), E(43, 35), E(28, 24), E(39, 39), |
| | 795 | E(33, 21), E(33, 34), E(32, 28), E(30, 29), E(25, 37), E(32, 11), |
| | 796 | E(48, 33), E( 2, 30), E(15, 31), E(20, 31), E(22, 35), E(53, 30), |
| | 797 | E(43, 37), E(44, 29), E(29, 30), E( 1, 29), E(27, 40), E(31, 6), |
| | 798 | E(41, 39), E(43, 28), E(41, 28), E(30, 19), E(31, 8), E(36, 22), |
| | 799 | E(30, 45), E(25, 28), E(31, 51), E(28, 40), E(32, 25), E(21, 35), |
| | 800 | E(24, 29), E(25, 25), E(15, 33), E(20, 32), E(40, 30), E(39, 34), |
| | 801 | E(31, 46), E(17, 35), E(22, 32), E(39, 31), E(33, 28), E(29, 29), |
| | 802 | E(21, 32), E(37, 37), E(43, 30), E(18, 30), E(32, 8), E(37, 32), |
| | 803 | E(31, 32), E(31, 22), E(31, 40), E(57, 32), E(38, 29), E(33, 37), |
| | 804 | E(35, 35), E(33, 63), E( 5, 34), E(55, 35), E(31, 10), E(33, 58), |
| | 805 | E(30, 17), E(40, 37), E(23, 39), E(15, 30), E(29, 18), E(34, 54), |
| | 806 | E(34, 14), E(59, 29), E(34, 16), E(30, 59), E(11, 30), E(13, 35), |
| | 807 | E(38, 23), E( 5, 35), E(24, 28), E(33, 15), E(37, 30), E(25, 31), |
| | 808 | E(36, 40), E(13, 33), E(33, 45), E(31, 49), E(32, 16), E(42, 31), |
| | 809 | E(25, 33), E(32, 36), E(39, 25), E(11, 32), E(33, 5), E(61, 31), |
| | 810 | E(63, 32), E(31, 4), E( 0, 30), E(30, 47), E(32, 62), E(37, 29), |
| | 811 | E(31, 2), E(42, 36), E( 5, 29), E(30, 55), E(29, 20), E(29, 35), |
| | 812 | E(34, 12), E(10, 31), E(44, 35), E(30, 14), E(63, 29), E(35, 18), |
| | 813 | E(12, 34), E( 3, 34), E(33, 47), E(32, 51), E(39, 36), E(37, 39), |
| | 814 | E(32, 53), E(32, 10), E(29, 24), E(17, 29), E(32, 20), E(29, 39), |
| | 815 | E(33, 27), E(31, 36), E(32, 27), E(31, 3), E(30, 39), E(44, 32), |
| | 816 | E(31, 37), E( 5, 33), E(44, 30), E(46, 31), E(32, 40), E(36, 25), |
| | 817 | E(35, 40), E(26, 38), E(37, 38), E(33, 38), E(25, 32), E( 2, 32), |
| | 818 | E(58, 33), E(26, 24), E(15, 29), E(31, 1), E(31, 25), E(17, 26), |
| | 819 | E(25, 22), E(34, 2), E(43, 27), E(39, 23), E(34, 8), E(56, 30), |
| | 820 | E(29, 55), E(23, 38), E(30, 60), E(12, 31), E(30, 4), E(10, 34), |
| | 821 | E(35, 49), E( 9, 34), E(24, 27), E(58, 34), E(10, 33), E(12, 30), |
| | 822 | E(54, 31), E(32, 56), E(34, 23), E(38, 27), E( 8, 32), E(22, 31), |
| | 823 | E(34, 24), E(36, 36), E(17, 32), E(38, 36), E(33, 25), E(32, 33), |
| | 824 | E(32, 31), E(58, 32), E(38, 28), E(38, 37), E(38, 26), E(22, 29), |
| | 825 | E(29, 43), E(32, 61), E(25, 36), E(16, 33), E(35, 24), E(32, 55), |
| | 826 | E(35, 43), E(33, 9), E(43, 29), E(18, 34), E(46, 34), E(38, 24), |
| | 827 | E(35, 26), E(32, 6), E(60, 31), E( 1, 32), E(23, 33), E(30, 35), |
| | 828 | E(27, 32), E(33, 26), E(41, 31), E(35, 38), E(33, 54), E(37, 42), |
| | 829 | E(20, 35), E(41, 38), E(35, 46), E(29, 44), E(18, 26), E(61, 27), |
| | 830 | E(30, 9), E(40, 39), E(24, 25), E(39, 21), E(39, 32), E(53, 29), |
| | 831 | E(62, 28), E(26, 42), E(29, 13), E(33, 0), E(34, 5), E(53, 34), |
| | 832 | E(49, 37), E(21, 28), E(27, 24), E(11, 29), E(63, 63), E(50, 33), |
| | 833 | E(33, 18), E(18, 33), E(53, 33), E(60, 30), E(13, 31), E(32, 50), |
| | 834 | E(36, 24), E(24, 34), E(27, 34), E(32, 58), E(38, 35), E(35, 28), |
| | 835 | E(16, 32), E(33, 60), E(51, 30), E(32, 4), E(36, 39), E(43, 34), |
| | 836 | E(45, 30), E(27, 39), E(45, 33), E(42, 33), E(30, 38), E(32, 17), |
| | 837 | E(31, 43), E(20, 26), E(26, 22), E(23, 27), E( 7, 29), E(13, 25), |
| | 838 | E( 6, 33), E(47, 25), E(29, 61), E(30, 0), E( 9, 35), E(51, 25), |
| | 839 | E(22, 36), E(34, 15), E(21, 27), E(25, 40), E(33, 53), E(32, 37), |
| | 840 | E(56, 33), E(57, 3), E(30, 10), E(38, 16), E(51, 37), E(51, 38), |
| | 841 | E(38, 18), E(63, 30), E(28, 46), E(40, 27), E(35, 9), E(33, 6), |
| | 842 | E(42, 28), E(29, 22), E(24, 38), E(30, 2), E(25, 26), E(31, 63), |
| | 843 | E(52, 32), E(31, 57), E(29, 26), E(35, 31), E(32, 5), E(41, 32), |
| | 844 | E(35, 21), E(38, 39), E( 4, 31), E(30, 40), E(17, 31), E( 9, 33), |
| | 845 | E(22, 28), E(34, 18), E( 4, 30), E(17, 34), E(28, 22), E(55, 33), |
| | 846 | E(42, 29), E(40, 34), E(46, 32), E(38, 34), E(48, 32), E(63, 31), |
| | 847 | E(23, 31), E(39, 33), E(33, 3), E( 3, 31), E(18, 29), E(33, 62), |
| | 848 | E(33, 8), E(24, 42), E(58, 28), E(58, 29), E(34, 3), E(49, 25), |
| | 849 | E(29, 16), E(43, 26), E( 4, 29), E( 1, 35), E( 4, 28), E(42, 27), |
| | 850 | E(35, 51), E(35, 61), E(30, 48), E(17, 37), E( 5, 9), E(56, 34), |
| | 851 | E(25, 41), E(17, 30), E(20, 34), E(47, 35), E(34, 21), E(33, 13), |
| | 852 | E(16, 34), E(40, 35), E(32, 19), E(28, 35), E(33, 36), E(36, 30), |
| | 853 | E(25, 39), E(16, 30), E(42, 30), E(19, 32), E(30, 46), E(53, 32), |
| | 854 | E(32, 23), E(29, 42), E(10, 32), E(11, 31), E(14, 33), E(34, 38), |
| | 855 | E(32, 39), E(41, 29), E(26, 26), E(61, 7), E(25, 49), E(22, 33), |
| | 856 | E(28, 38), E(36, 38), E(45, 32), E(34, 27), E(28, 30), E(34, 28), |
| | 857 | E(33, 59), E(37, 45), E(36, 20), E(55, 29), E(28, 21), E(35, 5), |
| | 858 | E(29, 5), E(50, 29), E(48, 28), E(52, 34), E( 2, 29), E(42, 24), |
| | 859 | E(34, 10), E(40, 24), E(46, 35), E(46, 36), E(43, 38), E(33, 11), |
| | 860 | E( 4, 33), E(33, 40), E(32, 18), E(36, 34), E(27, 35), E(35, 22), |
| | 861 | E(35, 55), E(29, 11), E(29, 38), E(41, 33), E(29, 28), E( 7, 32), |
| | 862 | E(44, 31), E(26, 25), E(39, 29), E(32, 3), E(16, 31), E(31, 53), |
| | 863 | E(26, 27), E(34, 43), E(38, 25), E(29, 40), E(41, 35), E(35, 27), |
| | 864 | E(36, 29), E(38, 31), E(29, 27), E(32, 43), E(27, 29), E(30, 37), |
| | 865 | E(24, 32), ESCAPE, E(32, 63), E(24, 31), E(42, 34), E(48, 36), |
| | 866 | E(20, 38), E(29, 53), E(31, 54), E(61, 33), E(41, 26), E( 7, 30), |
| | 867 | E(30, 49), E(35, 20), E(19, 27), E(14, 30), E(21, 39), E( 8, 33), |
| | 868 | E(39, 41), E(39, 49), E(40, 22), E(46, 38), E(55, 38), E(34, 4), |
| | 869 | E( 6, 30), E(30, 8), E(34, 9), E(37, 3), E(25, 24), E(37, 22), |
| | 870 | E(33, 50), E(22, 37), E(44, 36), E(52, 31), E(17, 27), E(35, 2), |
| | 871 | E(31, 50), E(30, 21), E(24, 36), E(35, 33), E(22, 38), E(61, 30), |
| | 872 | E(32, 12), E( 9, 31), E(45, 34), E(34, 20), E(31, 15), E(19, 29), |
| | 873 | E( 9, 32), E(31, 62), E(18, 32), E(33, 17), E(33, 1), E(37, 34), |
| | 874 | E(32, 15), E(22, 30), E(26, 30), E(59, 31), E(29, 9), E(36, 42), |
| | 875 | E(46, 30), E(31, 13), E(35, 17), E(54, 32), E(29, 19), E(57, 31), |
| | 876 | E(30, 20), E(50, 31), E( 3, 30), E(31, 7), E(63, 1), E(34, 17), |
| | 877 | E(47, 34), E(41, 37), E(35, 63), E(40, 25), E(25, 30), E(37, 28), |
| | 878 | E( 1, 31), E(26, 28), E(22, 34), E(35, 37), E(34, 32), E(60, 32), |
| | 879 | E(27, 30), E(37, 19), E(28, 44), E(30, 1), E(50, 28), E(14, 28), |
| | 880 | E(28, 48), E(55, 30), E( 6, 34), E(23, 41), E(19, 41), E(14, 38), |
| | 881 | E(30, 12), E( 3, 27), E(30, 15), E(28, 0), E(28, 16), E(61, 34), |
| | 882 | E(61, 35), E(47, 38), E(45, 28), E(48, 29), E(40, 40), E(40, 42), |
| | 883 | E(34, 51), E(34, 52), E(25, 45), E(30, 54), E(29, 59), E(35, 59), |
| | 884 | E( 4, 42), E(51, 31), E(18, 31), E(31, 44), E(14, 34), E(37, 26), |
| | 885 | E(36, 35), E(37, 35), E(30, 26), E(31, 41), E(31, 39), E(23, 32), |
| | 886 | E(23, 29), E(38, 40), E(31, 16), E(24, 37), E(32, 52), E(31, 48), |
| | 887 | E(50, 30), E(28, 34), E(32, 21), E(33, 20), E(31, 18), E(49, 32), |
| | 888 | E(34, 37), E(33, 29), E(31, 29), E(40, 31), E( 3, 33), E(28, 27), |
| | 889 | E(26, 35), E(28, 28), E(33, 39), E(34, 26), E(26, 44), E(53, 37), |
| | 890 | E(50, 26), E(26, 46), E(41, 24), E(27, 15), E(59, 39), E(27, 22), |
| | 891 | E(29, 31), E(38, 46), E(39, 19), E( 3, 35), E(50, 38), E(43, 17), |
| | 892 | E(47, 37), E(23, 23), E(33, 52), E(55, 55), E(35, 50), E(21, 37), |
| | 893 | E(23, 26), E(35, 11), E(61, 37), E(33, 12), E(46, 24), E(52, 30), |
| | 894 | E(35, 16), E(34, 13), E(24, 22), E(30, 13), E(43, 36), E(16, 35), |
| | 895 | E(37, 40), E(21, 41), E( 2, 34), E(54, 33), E(27, 38), E( 9, 29), |
| | 896 | E(33, 7), E(23, 25), E(19, 30), E(32, 54), E(29, 45), E(29, 47), |
| | 897 | E(33, 46), E(28, 41), E(27, 27), E(32, 49), E(39, 30), E(33, 31), |
| | 898 | E(59, 32), E(32, 42), E(33, 22), E(47, 29), E(49, 29), E(32, 59), |
| | 899 | E(40, 32), E(31, 24), E(27, 37), E(23, 34), E(28, 37), E(36, 26), |
| | 900 | E(32, 7), E(38, 32), E(29, 33), E(15, 32), E(30, 16), E(47, 30), |
| | 901 | E(33, 14), E(27, 26), E(25, 38), E(54, 34), E(44, 34), E(45, 29), |
| | 902 | E(50, 34), E(58, 30), E(51, 29), E(48, 30), E(33, 57), E(59, 30), |
| | 903 | E( 6, 32), E(34, 22), E(27, 28), E(31, 45), E(30, 27), E(24, 33), |
| | 904 | E(26, 29), E(33, 4), E(24, 41), E(45, 26), E(23, 30), E( 2, 31), |
| | 905 | E(28, 29), E(35, 36), E(30, 28), E(34, 53), E(30, 51), E(55, 5), |
| | 906 | E(55, 21), E( 1, 30), E(29, 2), E(29, 63), E(26, 41), E(28, 20), |
| | 907 | E(25, 1), E(31, 56), E(36, 21), E(22, 24), E(17, 25), E(30, 5), |
| | 908 | E(52, 28), E( 2, 35), E(44, 26), E(44, 28), E(57, 30), E(26, 18), |
| | 909 | E(62, 29), E(41, 23), E(39, 40), E(57, 34), E(26, 20), E(46, 42), |
| | 910 | E(49, 39), E(11, 34), E(16, 28), E(19, 61), E( 5, 38), E(34, 46), |
| | 911 | E(57, 33), E(13, 29), E(26, 39), E(33, 44), E(13, 30), E(48, 31), |
| | 912 | E(30, 50), E(11, 33), E( 7, 31), E(56, 32), E(34, 19), E(33, 43), |
| | 913 | E(32, 46), E(34, 41), E(41, 30), E(36, 28), E(34, 31), E(33, 33), |
| | 914 | E(33, 35), E(26, 34), E(28, 26), E(32, 13), E(41, 34), E( 0, 32), |
| | 915 | E(32, 57), E(35, 30), E(35, 32), E(55, 32), E(26, 40), E( 0, 31), |
| | 916 | E(26, 37), E(35, 47), E( 1, 1), E(51, 35), E(33, 16), E(53, 31), |
| | 917 | E(31, 0), E(45, 35), E(12, 33), E(29, 1), E(29, 17), E(36, 27), |
| | 918 | E( 5, 32), E(38, 38), E(59, 27), E(38, 62), E(39, 9), E(58, 36), |
| | 919 | E(34, 42), E(31, 42), E(36, 31), E(47, 33), E(32, 47), E(17, 33), |
| | 920 | E(31, 60), E(31, 23), E(33, 41), E(34, 30), E(34, 36), E(32, 60), |
| | 921 | E(29, 36), E(38, 17), E(25, 9), E(49, 49), E(50, 24), E(22, 25), |
| | 922 | E(28, 54), E(59, 34), E( 9, 39), E(59, 37), E( 7, 3), E(28, 1), |
| | 923 | E(55, 25), E(17, 38), E( 4, 38), E(35, 44), E(50, 35), E(21, 36), |
| | 924 | E(29, 12), E(44, 60), E(47, 36), E(18, 38), E(24, 40), E(19, 25), |
| | 925 | E(25, 43), E(31, 31), |
| | 926 | }; |
| | 927 | |
| | 928 | const uint8_t ff_msmp4_mv_table1_lens[MSMPEG4_MV_TABLES_NB_ELEMS] = { |
| | 929 | 2, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 14, 14, 14, |
| | 930 | 14, 14, 14, 14, 14, 14, 13, 13, 13, 14, 15, 15, 11, 13, 13, 12, 11, 10, |
| | 931 | 8, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13, 12, 10, 12, 12, 12, 12, 10, |
| | 932 | 14, 15, 15, 13, 13, 13, 12, 12, 11, 13, 15, 15, 15, 15, 15, 15, 15, 15, |
| | 933 | 15, 15, 15, 15, 9, 6, 9, 10, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, |
| | 934 | 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, |
| | 935 | 14, 14, 13, 13, 11, 11, 12, 13, 13, 11, 12, 13, 13, 10, 7, 8, 10, 14, |
| | 936 | 15, 15, 14, 14, 12, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13, 13, |
| | 937 | 13, 13, 12, 13, 13, 13, 13, 13, 13, 13, 13, 8, 9, 9, 5, 13, 14, 14, |
| | 938 | 12, 12, 14, 14, 14, 14, 10, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 13, |
| | 939 | 12, 12, 12, 11, 10, 11, 13, 13, 13, 13, 12, 12, 12, 13, 14, 14, 11, 12, |
| | 940 | 14, 14, 14, 14, 7, 8, 9, 10, 14, 14, 13, 12, 11, 7, 8, 10, 13, 14, |
| | 941 | 14, 13, 13, 13, 13, 13, 13, 13, 13, 12, 11, 13, 14, 14, 14, 14, 14, 14, |
| | 942 | 14, 14, 14, 14, 14, 14, 14, 14, 8, 13, 13, 13, 13, 12, 12, 10, 10, 10, |
| | 943 | 10, 11, 14, 14, 13, 13, 13, 12, 13, 14, 14, 11, 10, 9, 10, 14, 14, 14, |
| | 944 | 14, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13, 8, 11, 12, 13, 13, 10, 10, |
| | 945 | 10, 8, 8, 13, 13, 12, 12, 12, 10, 14, 14, 14, 14, 14, 14, 14, 14, 14, |
| | 946 | 14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 13, 12, 8, 9, 10, 13, 13, |
| | 947 | 13, 13, 13, 13, 14, 14, 14, 14, 10, 14, 14, 14, 14, 14, 14, 14, 14, 14, |
| | 948 | 14, 13, 13, 13, 9, 13, 13, 13, 13, 12, 12, 12, 13, 13, 11, 10, 10, 10, |
| | 949 | 11, 13, 13, 13, 13, 9, 4, 12, 12, 12, 12, 10, 10, 13, 14, 14, 14, 14, |
| | 950 | 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13, 11, 10, |
| | 951 | 13, 13, 13, 13, 12, 12, 10, 9, 13, 13, 12, 11, 11, 13, 14, 14, 12, 11, |
| | 952 | 12, 14, 14, 14, 14, 10, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13, 13, 13, |
| | 953 | 13, 13, 13, 13, 12, 12, 10, 10, 9, 11, 12, 12, 10, 12, 13, 13, 11, 13, |
| | 954 | 13, 13, 13, 11, 9, 11, 13, 14, 14, 12, 10, 14, 14, 14, 14, 14, 14, 14, |
| | 955 | 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13, 13, 13, 12, |
| | 956 | 12, 12, 12, 12, 10, 5, 4, 12, 12, 13, 13, 13, 13, 10, 13, 13, 13, 13, |
| | 957 | 13, 13, 13, 13, 13, 13, 12, 12, 12, 11, 11, 10, 9, 11, 11, 12, 14, 14, |
| | 958 | 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 9, 14, 14, 14, 14, 14, 14, 14, |
| | 959 | 14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 13, 13, 12, 11, 12, 12, 11, |
| | 960 | 12, 13, 13, 10, 13, 13, 13, 13, 12, 12, 11, 12, 12, 14, 14, 14, 14, 14, |
| | 961 | 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 9, 14, 14, 14, 14, 14, 14, |
| | 962 | 14, 14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 13, 13, 12, 8, 10, 10, |
| | 963 | 13, 13, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 12, 12, 11, 12, 12, |
| | 964 | 11, 10, 11, 11, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, |
| | 965 | 14, 14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 13, 13, 12, 11, 10, 10, |
| | 966 | 13, 13, 12, 12, 13, 13, 10, 13, 13, 13, 13, 11, 9, 12, 13, 14, 14, 12, |
| | 967 | 12, 12, 12, 11, 10, 10, 12, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, |
| | 968 | 14, 14, 14, 14, 14, 13, 13, 12, 12, 10, 11, 13, 14, 14, 12, 11, 11, 12, |
| | 969 | 13, 13, 11, 9, 13, 13, 13, 13, 13, 13, 12, 11, 11, 10, 11, 11, 11, 11, |
| | 970 | 10, 4, 11, 11, 12, 14, 14, 14, 14, 11, 14, 14, 14, 14, 14, 14, 14, 14, |
| | 971 | 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, |
| | 972 | 13, 13, 13, 8, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 12, 12, 12, 11, |
| | 973 | 12, 12, 11, 11, 14, 14, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, |
| | 974 | 13, 13, 14, 14, 11, 12, 12, 12, 12, 11, 6, 10, 11, 14, 14, 14, 14, 14, |
| | 975 | 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, |
| | 976 | 14, 14, 14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 11, 11, 11, 11, 10, 10, |
| | 977 | 12, 13, 13, 13, 13, 13, 13, 10, 10, 13, 13, 12, 11, 8, 8, 11, 11, 12, |
| | 978 | 12, 11, 10, 11, 14, 14, 14, 14, 14, 14, 14, 14, 8, 14, 14, 14, 14, 14, |
| | 979 | 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, |
| | 980 | 14, 14, 14, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 12, 12, 11, 5, |
| | 981 | 10, 11, 12, 13, 13, 10, 10, 11, 12, 12, 12, 12, 11, 9, 8, 12, 13, 13, |
| | 982 | 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 12, 12, 12, 12, 11, 11, |
| | 983 | 12, 13, 14, 14, 12, 12, 11, 11, 10, 14, 14, 14, 14, 14, 14, 14, 14, 14, |
| | 984 | 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, |
| | 985 | 14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 12, |
| | 986 | 12, 12, 12, 11, 7, 5, 8, 11, 12, 12, 12, 12, 11, 9, 7, 13, 13, 13, |
| | 987 | 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 12, 10, 12, 14, 14, 14, 14, |
| | 988 | 12, 12, 9, 12, 12, 12, 12, 11, 11, 8, 10, 10, 11, 14, 14, 14, 14, 14, |
| | 989 | 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, |
| | 990 | 14, 4, |
| | 991 | }; |
| | 992 | |
| 484 | static const uint16_t table0_mv_code[1100] = { | 993 | static const uint16_t table0_mv_code[1100] = { |
| 485 | 0x0001, 0x0003, 0x0005, 0x0007, 0x0003, 0x0008, 0x000c, 0x0001, | 994 | 0x0001, 0x0003, 0x0005, 0x0007, 0x0003, 0x0008, 0x000c, 0x0001, |
| 486 | 0x0002, 0x001b, 0x0006, 0x000b, 0x0015, 0x0002, 0x000e, 0x000f, | 995 | 0x0002, 0x001b, 0x0006, 0x000b, 0x0015, 0x0002, 0x000e, 0x000f, |
| @@ -1045,7 +1554,6 @@ static const uint8_t table0_mvy[1099] = { · 558 unmodified lines |
| 1045 | 25, 27, 28, | 1554 | 25, 27, 28, |
| 1046 | }; | 1555 | }; |
| 1047 | | 1556 | |
| 1048 | /* motion vector table 1 */ | | |
| 1049 | static const uint16_t table1_mv_code[1100] = { | 1557 | static const uint16_t table1_mv_code[1100] = { |
| 1050 | 0x0000, 0x0007, 0x0009, 0x000f, 0x000a, 0x0011, 0x001a, 0x001c, | 1558 | 0x0000, 0x0007, 0x0009, 0x000f, 0x000a, 0x0011, 0x001a, 0x001c, |
| 1051 | 0x0011, 0x0031, 0x0025, 0x002d, 0x002f, 0x006f, 0x0075, 0x0041, | 1559 | 0x0011, 0x0031, 0x0025, 0x002d, 0x002f, 0x006f, 0x0075, 0x0041, |