summaryrefslogtreecommitdiffstats
path: root/media/libmediaplayerservice/StagefrightPlayer.cpp
diff options
context:
space:
mode:
authorAndreas Huber <andih@google.com>2010-05-06 10:18:05 -0700
committerAndreas Huber <andih@google.com>2010-05-06 10:31:57 -0700
commitacdd9d0f59c3d8bdc3de80664a609527ec3d21e2 (patch)
treee75291b6c434b508d278b7f7ccb000863ca1f9df /media/libmediaplayerservice/StagefrightPlayer.cpp
parent3cf4e43cdd391502690c07e08e805aa8ff5db0c0 (diff)
downloadframeworks_av-acdd9d0f59c3d8bdc3de80664a609527ec3d21e2.zip
frameworks_av-acdd9d0f59c3d8bdc3de80664a609527ec3d21e2.tar.gz
frameworks_av-acdd9d0f59c3d8bdc3de80664a609527ec3d21e2.tar.bz2
Disable vorbis seek when streaming from localhost.
Change-Id: Icda523ae1c89e26482f1c1767fe3a8b9222bb30f related-to-bug: 2654400
Diffstat (limited to 'media/libmediaplayerservice/StagefrightPlayer.cpp')
-rw-r--r--media/libmediaplayerservice/StagefrightPlayer.cpp29
1 files changed, 28 insertions, 1 deletions
diff --git a/media/libmediaplayerservice/StagefrightPlayer.cpp b/media/libmediaplayerservice/StagefrightPlayer.cpp
index 7776b4e..2c96d6d 100644
--- a/media/libmediaplayerservice/StagefrightPlayer.cpp
+++ b/media/libmediaplayerservice/StagefrightPlayer.cpp
@@ -6,6 +6,9 @@
#include "AwesomePlayer.h"
+#include <media/Metadata.h>
+#include <media/stagefright/MediaExtractor.h>
+
namespace android {
StagefrightPlayer::StagefrightPlayer()
@@ -109,7 +112,8 @@ status_t StagefrightPlayer::getDuration(int *msec) {
status_t err = mPlayer->getDuration(&durationUs);
if (err != OK) {
- return err;
+ *msec = 0;
+ return OK;
}
*msec = (durationUs + 500) / 1000;
@@ -156,4 +160,27 @@ void StagefrightPlayer::setAudioSink(const sp<AudioSink> &audioSink) {
mPlayer->setAudioSink(audioSink);
}
+status_t StagefrightPlayer::getMetadata(
+ const media::Metadata::Filter& ids, Parcel *records) {
+ using media::Metadata;
+
+ uint32_t flags = mPlayer->flags();
+
+ Metadata metadata(records);
+
+ metadata.appendBool(
+ Metadata::kPauseAvailable,
+ flags & MediaExtractor::CAN_PAUSE);
+
+ metadata.appendBool(
+ Metadata::kSeekBackwardAvailable,
+ flags & MediaExtractor::CAN_SEEK_BACKWARD);
+
+ metadata.appendBool(
+ Metadata::kSeekForwardAvailable,
+ flags & MediaExtractor::CAN_SEEK_FORWARD);
+
+ return OK;
+}
+
} // namespace android