2015-02-27 30 views
16

Mam problem z odtwarzaczem multimediów, ponieważ aktualizuję moją wersję Androida do wersji 5.0.2 na moim smartfonie.Android: QCMediaPlayer nie może być zlokalizowany

mam oddzielną klasę do odtwarzania muzyki

public class MediaPlayerService { 

    public static MediaPlayer mediaPlayer; 
    private static SoundPool soundPool; 
    public static boolean isplayingAudio = false; 
    static int soundID; 

    public static enum State { 
     Stopped, 
     Playing, 
    } 

    static State mState = State.Stopped; 

    public static void playAudioFromMediaPlayer(Context c) { 

     mediaPlayer = new MediaPlayer(); 
     mediaPlayer = MediaPlayer.create(c, R.raw.hooray); 
     if (!mState.equals(State.Stopped)) { 
       mediaPlayer.start(); 
       mState = State.Playing; 
     } 
    } 

    @SuppressWarnings("deprecation") 
    public static void loadAudioFromSoundPool(Context c, int id) { 

     soundPool = new SoundPool(4, AudioManager.STREAM_MUSIC, 100); 
     soundID = soundPool.load(c, SoundList.soundList.get(id), 1); 
    } 

    public static void playAudioFromSoundPool() { 

     soundPool.play(soundID, 1, 1, 0, 0, 1); 
    } 

    public static boolean isMediaPlayerPlaying() { 
     if (mState.equals(State.Playing)) { 
      return true; 
     } 
     return false; 
    } 

    public void releaseMediaPlayer() { 
     if(mediaPlayer != null || mediaPlayer.isPlaying()) {  
      mediaPlayer.stop(); 
      mediaPlayer.release(); 
      mediaPlayer = null; 
     } 
    }  

    public void releaseSoundPool() { 

    } 
} 

chcę odgrywać soundfile nad główną działalność z

MediaPlayerService.playAudioFromMediaPlayer(getApplicationContext(), soundID); 

ale stałem się następujący log-message:

02-27 12:36:15.829: E/ExtMediaPlayer-JNI(11743): QCMediaPlayer could not be located.... 
02-27 12:36:15.829: E/MediaPlayer-JNI(11743): QCMediaPlayer mediaplayer NOT present 
02-27 12:36:15.854: E/ExtMediaPlayer-JNI(11743): QCMediaPlayer could not be located.... 
02-27 12:36:15.854: E/MediaPlayer-JNI(11743): QCMediaPlayer mediaplayer NOT present 
02-27 12:36:15.908: E/MediaPlayer(11743): Should have subtitle controller already set 
02-27 12:36:15.930: E/ExtMediaPlayer-JNI(11743): QCMediaPlayer could not be located.... 
02-27 12:36:15.930: E/MediaPlayer-JNI(11743): QCMediaPlayer mediaplayer NOT present 
02-27 12:36:15.931: E/ExtMediaPlayer-JNI(11743): QCMediaPlayer could not be located.... 
02-27 12:36:15.931: E/MediaPlayer-JNI(11743): QCMediaPlayer mediaplayer NOT present 
02-27 12:36:15.958: E/MediaPlayer(11743): Should have subtitle controller already set 
02-27 12:36:15.962: E/MediaPlayer(11743): Should have subtitle controller already set 
02-27 12:36:16.018: E/MediaPlayer(11743): Should have subtitle controller already set 

Z soundpool to działa dobrze, ale nie z mediaplayer. Jaki jest tego powód i jak mogę go rozwiązać?

góry dzięki i SRY za mój angielski :)

+0

Czy kiedykolwiek tu dotarłeś? – newenglander

Odpowiedz

3

Nie sądzę twoja platforma wspiera stosowanie QCMediaPlayer obawiam - dlatego to daje te wszystkie błędy można dowiedzieć się więcej, patrząc w tym źródła:

https://github.com/fallowu/slim_hardware_qcom_media/blob/master/QCMediaPlayer/com/qualcomm/qcmedia/QCMediaPlayer.java

Gdybym był tobą będę trzymać się za pomocą soundpool na razie.

+0

Ten sam błąd wystąpił na moim urządzeniu Asus. Ale co ciekawe, dostałem go w jednym filmie, ale drugi gra poprawnie. Oba filmy mają takie same kodeki audio i wideo i taką samą szybkość transmisji bitów. Czy ktoś mógłby powiedzieć, co się dzieje? –