Define constants in IStreamListener in MediaKeys.h

Currently, constants in IStreamSource are being used in ATSParser while
they are separate entities. This defines those constants in MediaKeys.h
so that ATSParser can be used without depending on IStreamSource.

This removes libmedia dependency from libmpeg2extractor.

Test: build.
Bug: 67908537
Change-Id: I503a4cdb530825b1932463efae999d120b839e56
diff --git a/media/libmedia/IStreamSource.cpp b/media/libmedia/IStreamSource.cpp
index ba0a272..e11bc74 100644
--- a/media/libmedia/IStreamSource.cpp
+++ b/media/libmedia/IStreamSource.cpp
@@ -20,24 +20,13 @@
 
 #include <media/IStreamSource.h>
 #include <media/stagefright/foundation/AMessage.h>
+#include <media/stagefright/foundation/MediaKeys.h>
 
 #include <binder/IMemory.h>
 #include <binder/Parcel.h>
 
 namespace android {
 
-// static
-const char *const IStreamListener::kKeyResumeAtPTS = "resume-at-PTS";
-
-// static
-const char *const IStreamListener::kKeyDiscontinuityMask = "discontinuity-mask";
-
-// static
-const char *const IStreamListener::kKeyMediaTimeUs = "media-time-us";
-
-// static
-const char *const IStreamListener::kKeyRecentMediaTimeUs = "recent-media-time-us";
-
 enum {
     // IStreamSource
     SET_LISTENER = IBinder::FIRST_CALL_TRANSACTION,
diff --git a/media/libmedia/include/media/IStreamSource.h b/media/libmedia/include/media/IStreamSource.h
index 4a6aafd..c08c3e8 100644
--- a/media/libmedia/include/media/IStreamSource.h
+++ b/media/libmedia/include/media/IStreamSource.h
@@ -54,40 +54,6 @@
 
     virtual void queueBuffer(size_t index, size_t size) = 0;
 
-    // When signalling a discontinuity you can optionally
-    // specify an int64_t PTS timestamp in "msg".
-    // If present, rendering of data following the discontinuity
-    // will be suppressed until media time reaches this timestamp.
-    static const char *const kKeyResumeAtPTS;
-
-    // When signalling a discontinuity you can optionally
-    // specify the type(s) of discontinuity, i.e. if the
-    // audio format has changed, the video format has changed,
-    // time has jumped or any combination thereof.
-    // To do so, include a non-zero int32_t value
-    // under the key "kKeyDiscontinuityMask" when issuing the DISCONTINUITY
-    // command.
-    // If there is a change in audio/video format, The new logical stream
-    // must start with proper codec initialization
-    // information for playback to continue, i.e. SPS and PPS in the case
-    // of AVC video etc.
-    // If this key is not present, only a time discontinuity is assumed.
-    // The value should be a bitmask of values from
-    // ATSParser::DiscontinuityType.
-    static const char *const kKeyDiscontinuityMask;
-
-    // Optionally signalled as part of a discontinuity that includes
-    // DISCONTINUITY_TIME. It indicates the media time (in us) to be associated
-    // with the next PTS occuring in the stream. The value is of type int64_t.
-    static const char *const kKeyMediaTimeUs;
-
-    // Optionally signalled as part of a discontinuity that includes
-    // DISCONTINUITY_TIME. It indicates the media time (in us) of a recent
-    // sample from the same content, and is used as a hint for the parser to
-    // handle PTS wraparound. This is required when a new parser is created
-    // to continue parsing content from the same timeline.
-    static const char *const kKeyRecentMediaTimeUs;
-
     virtual void issueCommand(
             Command cmd, bool synchronous, const sp<AMessage> &msg = NULL) = 0;
 };
diff --git a/media/libmedia/nuplayer2/StreamingSource.cpp b/media/libmedia/nuplayer2/StreamingSource.cpp
index ed990c4..1c370b6 100644
--- a/media/libmedia/nuplayer2/StreamingSource.cpp
+++ b/media/libmedia/nuplayer2/StreamingSource.cpp
@@ -28,6 +28,7 @@
 #include <media/stagefright/foundation/ABuffer.h>
 #include <media/stagefright/foundation/ADebug.h>
 #include <media/stagefright/foundation/AMessage.h>
+#include <media/stagefright/foundation/MediaKeys.h>
 #include <media/stagefright/MetaData.h>
 #include <media/stagefright/Utils.h>
 
@@ -114,7 +115,7 @@
             int32_t mask;
             if (extra != NULL
                     && extra->findInt32(
-                        IStreamListener::kKeyDiscontinuityMask, &mask)) {
+                        kIStreamListenerKeyDiscontinuityMask, &mask)) {
                 if (mask == 0) {
                     ALOGE("Client specified an illegal discontinuity type.");
                     setError(ERROR_UNSUPPORTED);
@@ -142,7 +143,7 @@
                     int64_t mediaTimeUs;
                     memcpy(&mediaTimeUs, &buffer[2], sizeof(mediaTimeUs));
 
-                    extra->setInt64(IStreamListener::kKeyMediaTimeUs, mediaTimeUs);
+                    extra->setInt64(kATSParserKeyMediaTimeUs, mediaTimeUs);
                 }
 
                 mTSParser->signalDiscontinuity(