diff options
author | Daniil Cherednik <dan.cherednik@gmail.com> | 2016-06-19 02:58:23 +0300 |
---|---|---|
committer | Daniil Cherednik <dan.cherednik@gmail.com> | 2016-06-19 03:31:55 +0300 |
commit | 1151d5831f19a9f24dd0c545a4968606712a62d2 (patch) | |
tree | c978c1b9a3fc86fef531dd412fe6b7668b7c0567 /src/bitstream/bitstream_ut.cpp | |
parent | 8d65a0bd0774e03b3d10354e15f2f3361a2ce26a (diff) | |
download | atracdenc-1151d5831f19a9f24dd0c545a4968606712a62d2.tar.gz |
some improvements of ATRAC3 implementation:atrac3
- simple (ATRAC1 like) psychoacoustic added
- possibility to encode tonal components
- simple tonal component extractor
- refactoring
Diffstat (limited to 'src/bitstream/bitstream_ut.cpp')
-rw-r--r-- | src/bitstream/bitstream_ut.cpp | 63 |
1 files changed, 62 insertions, 1 deletions
diff --git a/src/bitstream/bitstream_ut.cpp b/src/bitstream/bitstream_ut.cpp index 109570b..7e246ca 100644 --- a/src/bitstream/bitstream_ut.cpp +++ b/src/bitstream/bitstream_ut.cpp @@ -11,8 +11,10 @@ TEST(TBitStream, DefaultConstructor) { TEST(TBitStream, SimpleWriteRead) { TBitStream bs; bs.Write(5, 3); - EXPECT_EQ(3, bs.GetSizeInBits()); + bs.Write(true, 1); + EXPECT_EQ(4, bs.GetSizeInBits()); EXPECT_EQ(5, bs.Read(3)); + EXPECT_EQ(true, bs.Read(1)); } TEST(TBisStream, OverlapWriteRead) { @@ -30,6 +32,7 @@ TEST(TBisStream, OverlapWriteRead) { EXPECT_EQ(212, bs.Read(22)); EXPECT_EQ(323, bs.Read(22)); } + TEST(TBisStream, OverlapWriteRead2) { TBitStream bs; bs.Write(2, 2); @@ -41,6 +44,64 @@ TEST(TBisStream, OverlapWriteRead2) { EXPECT_EQ(10003, bs.Read(16)); } +TEST(TBisStream, OverlapWriteRead3) { + TBitStream bs; + bs.Write(40, 6); + bs.Write(3, 2); + bs.Write(0, 3); + bs.Write(0, 3); + bs.Write(0, 3); + bs.Write(0, 3); + + bs.Write(3, 5); + bs.Write(1, 2); + bs.Write(1, 1); + bs.Write(1, 1); + bs.Write(1, 1); + bs.Write(1, 1); + + bs.Write(0, 3); + bs.Write(4, 3); + bs.Write(35, 6); + bs.Write(25, 6); + bs.Write(3, 3); + bs.Write(32, 6); + bs.Write(29, 6); + bs.Write(3, 3); + bs.Write(36, 6); + bs.Write(49, 6); + + + + + EXPECT_EQ(40, bs.Read(6)); + EXPECT_EQ(3, bs.Read(2)); + EXPECT_EQ(0, bs.Read(3)); + EXPECT_EQ(0, bs.Read(3)); + EXPECT_EQ(0, bs.Read(3)); + EXPECT_EQ(0, bs.Read(3)); + EXPECT_EQ(3, bs.Read(5)); + + EXPECT_EQ(1, bs.Read(2)); + EXPECT_EQ(1, bs.Read(1)); + EXPECT_EQ(1, bs.Read(1)); + EXPECT_EQ(1, bs.Read(1)); + EXPECT_EQ(1, bs.Read(1)); + + EXPECT_EQ(0, bs.Read(3)); + EXPECT_EQ(4, bs.Read(3)); + EXPECT_EQ(35, bs.Read(6)); + EXPECT_EQ(25, bs.Read(6)); + EXPECT_EQ(3, bs.Read(3)); + EXPECT_EQ(32, bs.Read(6)); + EXPECT_EQ(29, bs.Read(6)); + EXPECT_EQ(3, bs.Read(3)); + EXPECT_EQ(36, bs.Read(6)); + EXPECT_EQ(49, bs.Read(6)); + +} + + TEST(TBisStream, SignWriteRead) { TBitStream bs; bs.Write(MakeSign(-2, 3), 3); |