diff options
author | D G Turner | 2012-04-04 08:32:17 +0100 |
---|---|---|
committer | D G Turner | 2012-04-08 03:29:14 +0100 |
commit | b99565d701dd2dc9b355b0d43b4d8119c2b1085e (patch) | |
tree | 77de75b94d617fb9a6c714f287e40e414faa47be /video/codecs/svq1_vlc.h | |
parent | 9330a7c54db8782b399f747f882d641b85122513 (diff) | |
download | scummvm-rg350-b99565d701dd2dc9b355b0d43b4d8119c2b1085e.tar.gz scummvm-rg350-b99565d701dd2dc9b355b0d43b4d8119c2b1085e.tar.bz2 scummvm-rg350-b99565d701dd2dc9b355b0d43b4d8119c2b1085e.zip |
VIDEO: Add remaining SVQ1 code derived from FFMPEG.
This still requires some work to make it usuable, mainly changing the
Variable Length Code reader to work with Common::BitStream input.
Diffstat (limited to 'video/codecs/svq1_vlc.h')
-rw-r--r-- | video/codecs/svq1_vlc.h | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/video/codecs/svq1_vlc.h b/video/codecs/svq1_vlc.h index 1694ce3c71..0b9477ffa7 100644 --- a/video/codecs/svq1_vlc.h +++ b/video/codecs/svq1_vlc.h @@ -24,14 +24,14 @@ #define VIDEO_CODECS_SVQ1_VLC_H // values in this table range from 0..3; adjust retrieved value by +0 -const uint8 ff_svq1_block_type_vlc[4][2] = { +const uint8 svq1_block_type_vlc[4][2] = { // { code, length } { 0x1, 1 }, { 0x1, 2 }, { 0x1, 3 }, { 0x0, 3 } }; // values in this table range from -1..6; adjust retrieved value by -1 -const uint8 ff_svq1_intra_multistage_vlc[6][8][2] = { +const uint8 svq1_intra_multistage_vlc[6][8][2] = { // { code, length } { { 0x1, 5 }, { 0x1, 1 }, { 0x3, 3 }, { 0x2, 3 }, @@ -55,7 +55,7 @@ const uint8 ff_svq1_intra_multistage_vlc[6][8][2] = { }; // values in this table range from -1..6; adjust retrieved value by -1 -const uint8 ff_svq1_inter_multistage_vlc[6][8][2] = { +const uint8 svq1_inter_multistage_vlc[6][8][2] = { // { code, length } { { 0x3, 2 }, { 0x5, 3 }, { 0x4, 3 }, { 0x3, 3 }, @@ -79,7 +79,7 @@ const uint8 ff_svq1_inter_multistage_vlc[6][8][2] = { }; // values in this table range from 0..255; adjust retrieved value by +0 -const uint16 ff_svq1_intra_mean_vlc[256][2] = { +const uint16 svq1_intra_mean_vlc[256][2] = { // { code, length } { 0x37, 6 }, { 0x56, 7 }, { 0x1, 17 }, { 0x1, 20 }, { 0x2, 20 }, { 0x3, 20 }, { 0x0, 20 }, { 0x4, 20 }, @@ -148,7 +148,7 @@ const uint16 ff_svq1_intra_mean_vlc[256][2] = { }; // values in this table range from -256..255; adjust retrieved value by -256 -const uint16 ff_svq1_inter_mean_vlc[512][2] = { +const uint16 svq1_inter_mean_vlc[512][2] = { // { code, length } { 0x5A, 22 }, { 0xD4, 22 }, { 0xD5, 22 }, { 0xD6, 22 }, { 0xD7, 22 }, { 0xD8, 22 }, { 0xD9, 22 }, { 0xDA, 22 }, @@ -280,4 +280,15 @@ const uint16 ff_svq1_inter_mean_vlc[512][2] = { { 0x3, 22 }, { 0x2, 22 }, { 0x1, 22 }, { 0x0, 22 } }; +// From H263 Data Tables +const uint8 mvtab[33][2] = +{ + {1,1}, {1,2}, {1,3}, {1,4}, {3,6}, {5,7}, {4,7}, {3,7}, + {11,9}, {10,9}, {9,9}, {17,10}, {16,10}, {15,10}, {14,10}, {13,10}, + {12,10}, {11,10}, {10,10}, {9,10}, {8,10}, {7,10}, {6,10}, {5,10}, + {4,10}, {7,11}, {6,11}, {5,11}, {4,11}, {3,11}, {2,11}, {3,12}, + {2,12} +}; + + #endif |