summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/include/AwesomePlayer.h
diff options
context:
space:
mode:
authorGlenn Kasten <gkasten@google.com>2011-02-08 17:26:17 -0800
committerGlenn Kasten <gkasten@google.com>2011-02-23 15:02:56 -0800
commit1173118eace0e9e347cb007f0da817cee87579ed (patch)
treed2d23b2120010097d1edda29cd0adffd938105c3 /media/libstagefright/include/AwesomePlayer.h
parentf7f3e824a8cb2b38355db8e4f99e43b90ee71ce4 (diff)
downloadframeworks_av-1173118eace0e9e347cb007f0da817cee87579ed.zip
frameworks_av-1173118eace0e9e347cb007f0da817cee87579ed.tar.gz
frameworks_av-1173118eace0e9e347cb007f0da817cee87579ed.tar.bz2
Bug 3438258 Add SurfaceTexture as MediaPlayer sink
This change enables the use of a SurfaceTexture in place of a Surface as the video sink for an android.media.MediaPlayer. The new API MediaPlayer.setTexture is currently hidden. This includes: - New Java and C++ interfaces - C++ plumbing and implementation (JNI, Binder) - Stagefright AwesomePlayer and NuPlayer use ANativeWindow (either Surface or SurfaceTextureClient) Change-Id: I2b568bee143d9eaf3dfc6cc4533c1bebbd5afc51
Diffstat (limited to 'media/libstagefright/include/AwesomePlayer.h')
-rw-r--r--media/libstagefright/include/AwesomePlayer.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/media/libstagefright/include/AwesomePlayer.h b/media/libstagefright/include/AwesomePlayer.h
index 1497732..0e36492 100644
--- a/media/libstagefright/include/AwesomePlayer.h
+++ b/media/libstagefright/include/AwesomePlayer.h
@@ -36,6 +36,7 @@ struct MediaBuffer;
struct MediaExtractor;
struct MediaSource;
struct NuCachedSource2;
+struct ISurfaceTexture;
struct ALooper;
struct ARTSPController;
@@ -80,6 +81,7 @@ struct AwesomePlayer {
bool isPlaying() const;
void setSurface(const sp<Surface> &surface);
+ void setSurfaceTexture(const sp<ISurfaceTexture> &surfaceTexture);
void setAudioSink(const sp<MediaPlayerBase::AudioSink> &audioSink);
status_t setLooping(bool shouldLoop);
@@ -133,6 +135,7 @@ private:
wp<MediaPlayerBase> mListener;
sp<Surface> mSurface;
+ sp<ANativeWindow> mNativeWindow;
sp<MediaPlayerBase::AudioSink> mAudioSink;
SystemTimeSource mSystemTimeSource;