summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorAndreas Huber <andih@google.com>2010-08-25 13:17:44 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2010-08-25 13:17:44 -0700
commitd31cdebccaa64e4ce0012254aa4986fbea93a2a1 (patch)
treeaca66199da342d30c5c31afd274a333b2684dbea /include
parente7c0899a7b7549ea342af67e7ab525f81672cfa5 (diff)
parent4243f1a733ceac97118b30aa93a1949fd82aeb9a (diff)
downloadframeworks_av-d31cdebccaa64e4ce0012254aa4986fbea93a2a1.zip
frameworks_av-d31cdebccaa64e4ce0012254aa4986fbea93a2a1.tar.gz
frameworks_av-d31cdebccaa64e4ce0012254aa4986fbea93a2a1.tar.bz2
am 96dc4559: am b8814dce: Merge "Allow sniffers to return a packet of opaque data that the corresponding extractor can take advantage of to not duplicate work already done sniffing. The mp3 extractor takes advantage of this now." into gingerbread
Merge commit '96dc45597e53742a2c8453f9ce03f7d501a75668' * commit '96dc45597e53742a2c8453f9ce03f7d501a75668': Allow sniffers to return a packet of opaque data that the corresponding extractor can take advantage of to not duplicate work already done sniffing. The mp3 extractor takes advantage of this now.
Diffstat (limited to 'include')
-rw-r--r--include/media/stagefright/DataSource.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/include/media/stagefright/DataSource.h b/include/media/stagefright/DataSource.h
index 6f7dc38..9d2cff6 100644
--- a/include/media/stagefright/DataSource.h
+++ b/include/media/stagefright/DataSource.h
@@ -28,6 +28,7 @@
namespace android {
+struct AMessage;
class String8;
class DataSource : public RefBase {
@@ -59,10 +60,14 @@ public:
////////////////////////////////////////////////////////////////////////////
- bool sniff(String8 *mimeType, float *confidence);
+ bool sniff(String8 *mimeType, float *confidence, sp<AMessage> *meta);
+ // The sniffer can optionally fill in "meta" with an AMessage containing
+ // a dictionary of values that helps the corresponding extractor initialize
+ // its state without duplicating effort already exerted by the sniffer.
typedef bool (*SnifferFunc)(
- const sp<DataSource> &source, String8 *mimeType, float *confidence);
+ const sp<DataSource> &source, String8 *mimeType,
+ float *confidence, sp<AMessage> *meta);
static void RegisterSniffer(SnifferFunc func);
static void RegisterDefaultSniffers();