summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/rtsp
diff options
context:
space:
mode:
authorAndreas Huber <andih@google.com>2011-01-18 11:19:13 -0800
committerAndreas Huber <andih@google.com>2011-01-18 11:19:13 -0800
commit21a6f9ffee8b3c014abfe165b8f7fd2224f49e1f (patch)
tree140750d63bf8e4e50e67bdcdd737e0af18ee79e0 /media/libstagefright/rtsp
parentccb3506ed1845121b94f4e27244e61a46eb19815 (diff)
downloadframeworks_av-21a6f9ffee8b3c014abfe165b8f7fd2224f49e1f.zip
frameworks_av-21a6f9ffee8b3c014abfe165b8f7fd2224f49e1f.tar.gz
frameworks_av-21a6f9ffee8b3c014abfe165b8f7fd2224f49e1f.tar.bz2
Implement parsing of vbv buffering info in RTSP.
Change-Id: I7d871cafda2c4c65670a40ad9ab4f24317f8568a related-to-bug: 3351915
Diffstat (limited to 'media/libstagefright/rtsp')
-rw-r--r--media/libstagefright/rtsp/APacketSource.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/media/libstagefright/rtsp/APacketSource.cpp b/media/libstagefright/rtsp/APacketSource.cpp
index 10cc88b..f0b858d 100644
--- a/media/libstagefright/rtsp/APacketSource.cpp
+++ b/media/libstagefright/rtsp/APacketSource.cpp
@@ -373,7 +373,17 @@ static bool ExtractDimensionsFromVOLHeader(
br.skipBits(2); // chroma_format
br.skipBits(1); // low_delay
if (br.getBits(1)) { // vbv_parameters
- TRESPASS();
+ br.skipBits(15); // first_half_bit_rate
+ CHECK(br.getBits(1)); // marker_bit
+ br.skipBits(15); // latter_half_bit_rate
+ CHECK(br.getBits(1)); // marker_bit
+ br.skipBits(15); // first_half_vbv_buffer_size
+ CHECK(br.getBits(1)); // marker_bit
+ br.skipBits(3); // latter_half_vbv_buffer_size
+ br.skipBits(11); // first_half_vbv_occupancy
+ CHECK(br.getBits(1)); // marker_bit
+ br.skipBits(15); // latter_half_vbv_occupancy
+ CHECK(br.getBits(1)); // marker_bit
}
}
unsigned video_object_layer_shape = br.getBits(2);