Merge "Better support for fake timestamps in RTP, H.263 video now also requests FIR." into gingerbread
diff --git a/media/libstagefright/OggExtractor.cpp b/media/libstagefright/OggExtractor.cpp
index 16f094b..641a876 100644
--- a/media/libstagefright/OggExtractor.cpp
+++ b/media/libstagefright/OggExtractor.cpp
@@ -361,11 +361,17 @@
memcpy(tmp->data(), buffer->data(), buffer->range_length());
tmp->set_range(0, buffer->range_length());
buffer->release();
- } else if (mVi.rate) {
+ } else {
// XXX Not only is this not technically the correct time for
// this packet, we also stamp every packet in this page
// with the same time. This needs fixing later.
- timeUs = mCurrentPage.mGranulePosition * 1000000ll / mVi.rate;
+
+ if (mVi.rate) {
+ // Rate may not have been initialized yet if we're currently
+ // reading the configuration packets...
+ // Fortunately, the timestamp doesn't matter for those.
+ timeUs = mCurrentPage.mGranulePosition * 1000000ll / mVi.rate;
+ }
tmp->set_range(0, 0);
}
buffer = tmp;