public class MediaMoviePlayer
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
protected android.media.MediaExtractor |
mAudioMediaExtractor |
protected android.media.MediaMetadataRetriever |
mMetadata |
protected android.media.MediaExtractor |
mVideoMediaExtractor |
| Constructor and Description |
|---|
MediaMoviePlayer(android.view.Surface outputSurface,
IFrameCallback callback,
boolean audio_enable) |
| Modifier and Type | Method and Description |
|---|---|
protected long |
adjustPresentationTime(java.lang.Object sync,
long startTime,
long presentationTimeUs)
adjusting frame rate
|
int |
getBitRate() |
long |
getDurationUs()
get duration time as micro seconds
|
float |
getFramerate() |
int |
getHeight() |
int |
getRotation() |
int |
getSampleRate()
get audio sampling rate[Hz]
|
int |
getWidth() |
boolean |
hasAudio() |
protected int |
internal_prepare_audio(java.lang.Object source) |
protected int |
internal_prepare_video(java.lang.Object source) |
protected boolean |
internal_process_input(android.media.MediaCodec codec,
android.media.MediaExtractor extractor,
java.nio.ByteBuffer[] inputBuffers,
long presentationTimeUs,
boolean isAudio) |
protected android.media.MediaCodec |
internal_start_audio(android.media.MediaExtractor media_extractor,
int trackIndex) |
protected android.media.MediaCodec |
internal_start_video(android.media.MediaExtractor media_extractor,
int trackIndex) |
protected void |
internal_stop_audio() |
protected void |
internal_stop_video() |
protected boolean |
internal_write_audio(java.nio.ByteBuffer buffer,
int offset,
int size,
long presentationTimeUs) |
protected boolean |
internal_write_video(java.nio.ByteBuffer buffer,
int offset,
int size,
long presentationTimeUs) |
void |
pause()
request pause playing
this function is un-implemented yet |
void |
play()
request to start playing movie
this method can be called after prepare
|
void |
prepare(android.content.res.AssetFileDescriptor src)
request to prepare movie playing
|
void |
prepare(java.lang.String src)
request to prepare movie playing
|
void |
release()
release releated resources
|
void |
resume()
request resume from pausing
this function is un-implemented yet |
void |
seek(long newTime)
request to seek to specifc timed frame
if the frame is not a key frame, frame image will be broken |
protected static int |
selectTrack(android.media.MediaExtractor extractor,
java.lang.String mimeType)
search first track index matched specific MIME
|
void |
stop()
request stop playing
|
protected void |
updateMovieInfo() |
protected android.media.MediaMetadataRetriever mMetadata
protected android.media.MediaExtractor mVideoMediaExtractor
protected android.media.MediaExtractor mAudioMediaExtractor
public MediaMoviePlayer(android.view.Surface outputSurface,
IFrameCallback callback,
boolean audio_enable)
throws java.lang.NullPointerException
java.lang.NullPointerExceptionpublic final int getWidth()
public final int getHeight()
public final int getBitRate()
public final float getFramerate()
public final int getRotation()
public final long getDurationUs()
public final int getSampleRate()
public final boolean hasAudio()
public final void prepare(java.lang.String src)
src - public final void prepare(android.content.res.AssetFileDescriptor src)
src - public final void play()
public final void seek(long newTime)
newTime - seek to new time[usec]public final void stop()
public final void pause()
public final void resume()
public final void release()
protected int internal_prepare_video(java.lang.Object source)
source - protected int internal_prepare_audio(java.lang.Object source)
source - protected void updateMovieInfo()
protected android.media.MediaCodec internal_start_video(android.media.MediaExtractor media_extractor,
int trackIndex)
media_extractor - trackIndex - protected android.media.MediaCodec internal_start_audio(android.media.MediaExtractor media_extractor,
int trackIndex)
media_extractor - trackIndex - protected boolean internal_process_input(android.media.MediaCodec codec,
android.media.MediaExtractor extractor,
java.nio.ByteBuffer[] inputBuffers,
long presentationTimeUs,
boolean isAudio)
codec - extractor - inputBuffers - presentationTimeUs - isAudio - protected boolean internal_write_video(java.nio.ByteBuffer buffer,
int offset,
int size,
long presentationTimeUs)
buffer - offset - size - presentationTimeUs - protected boolean internal_write_audio(java.nio.ByteBuffer buffer,
int offset,
int size,
long presentationTimeUs)
buffer - offset - size - presentationTimeUs - protected long adjustPresentationTime(java.lang.Object sync,
long startTime,
long presentationTimeUs)
sync - startTime - presentationTimeUs - protected void internal_stop_video()
protected void internal_stop_audio()
protected static final int selectTrack(android.media.MediaExtractor extractor,
java.lang.String mimeType)
extractor - mimeType - "video/" or "audio/"