summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/mpeg2ts/ABitReader.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'media/libstagefright/mpeg2ts/ABitReader.cpp')
-rw-r--r--media/libstagefright/mpeg2ts/ABitReader.cpp98
1 files changed, 0 insertions, 98 deletions
diff --git a/media/libstagefright/mpeg2ts/ABitReader.cpp b/media/libstagefright/mpeg2ts/ABitReader.cpp
deleted file mode 100644
index 24c8df8..0000000
--- a/media/libstagefright/mpeg2ts/ABitReader.cpp
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Copyright (C) 2010 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include "ABitReader.h"
-
-#include <media/stagefright/foundation/ADebug.h>
-
-namespace android {
-
-ABitReader::ABitReader(const uint8_t *data, size_t size)
- : mData(data),
- mSize(size),
- mReservoir(0),
- mNumBitsLeft(0) {
-}
-
-void ABitReader::fillReservoir() {
- CHECK_GT(mSize, 0u);
-
- mReservoir = 0;
- size_t i;
- for (i = 0; mSize > 0 && i < 4; ++i) {
- mReservoir = (mReservoir << 8) | *mData;
-
- ++mData;
- --mSize;
- }
-
- mNumBitsLeft = 8 * i;
- mReservoir <<= 32 - mNumBitsLeft;
-}
-
-uint32_t ABitReader::getBits(size_t n) {
- CHECK_LE(n, 32u);
-
- uint32_t result = 0;
- while (n > 0) {
- if (mNumBitsLeft == 0) {
- fillReservoir();
- }
-
- size_t m = n;
- if (m > mNumBitsLeft) {
- m = mNumBitsLeft;
- }
-
- result = (result << m) | (mReservoir >> (32 - m));
- mReservoir <<= m;
- mNumBitsLeft -= m;
-
- n -= m;
- }
-
- return result;
-}
-
-void ABitReader::skipBits(size_t n) {
- while (n > 32) {
- getBits(32);
- n -= 32;
- }
-
- if (n > 0) {
- getBits(n);
- }
-}
-
-void ABitReader::putBits(uint32_t x, size_t n) {
- CHECK_LE(mNumBitsLeft + n, 32u);
-
- mReservoir = (mReservoir >> n) | (x << (32 - n));
- mNumBitsLeft += n;
-}
-
-size_t ABitReader::numBitsLeft() const {
- return mSize * 8 + mNumBitsLeft;
-}
-
-const uint8_t *ABitReader::data() const {
- CHECK_EQ(mNumBitsLeft % 8, 0u);
-
- return mData - mNumBitsLeft / 8;
-}
-
-} // namespace android