static void com_media_ffmpeg_FFMpegPlayer_start(JNIEnv *env, jobject thiz) { MediaPlayer* mp = getMediaPlayer(env, thiz); if (mp == NULL ) { jniThrowException(env, "java/lang/IllegalStateException", NULL); return; } process_media_player_call( env, thiz, mp->start(), NULL, NULL ); }
static void wseemann_media_FFmpegMediaPlayer_start(JNIEnv *env, jobject thiz) { __android_log_print(ANDROID_LOG_VERBOSE, LOG_TAG, "start"); MediaPlayer* mp = getMediaPlayer(env, thiz); if (mp == NULL ) { jniThrowException(env, "java/lang/IllegalStateException", NULL); return; } process_media_player_call( env, thiz, mp->start(), NULL, NULL ); }
void BootAnimation::bootMusic() { int index; MediaPlayer* mp = new MediaPlayer(); if((access(SYSTEM_BOOTMUSIC_FILE,F_OK))!=-1){ if (mp->setDataSource(SYSTEM_BOOTMUSIC_FILE, NULL) == NO_ERROR) { mp->setAudioStreamType(AUDIO_STREAM_ENFORCED_AUDIBLE); mp->prepare(); mp->setLooping(true); } AudioSystem::getStreamVolumeIndex(AUDIO_STREAM_ENFORCED_AUDIBLE, &index); if (index != 0) { mp->seekTo(0); mp->start(); } } }
int main(int argc, char **argv) { if (argc != 2) { ALOGE("filename unspecified"); return 1; } signal(SIGTERM, signalHandler); signal(SIGHUP, signalHandler); signal(SIGPIPE, signalHandler); prctl(PR_SET_PDEATHSIG, SIGKILL); int fd = open(argv[1], O_RDONLY); if (fd < 0) { ALOGE("Error %d: Unable to open %s", argv[1]); return 1; } int64_t length = lseek64(fd, 0, SEEK_END); lseek64(fd, 0, SEEK_SET); OK(pipe(pipefd)); sp<ProcessState> ps = ProcessState::self(); ps->startThreadPool(); MediaPlayer m; OK(m.setListener(new MPListener)); OK(m.setDataSource(fd, 0, length)); OK(m.prepare()); OK(m.start()); int c; TEMP_FAILURE_RETRY(read(pipefd[0], &c, 1)); // Don't bother trying to shut down cleanly, just let mediaplayer deal with the // unexpected disconnect. exit(0); }