web-dev-qa-db-ja.com

Android:QCMediaPlayerが見つかりませんでした

lg-smartphoneでAndroid -versionを5.0.2に更新したため、メディアプレーヤーに問題があります。

私は音楽を演奏するための別のクラスを持っています

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() {

    }
 }

Mainactivityでサウンドファイルを再生したい

MediaPlayerService.playAudioFromMediaPlayer(getApplicationContext(), soundID);

しかし、私は次のログメッセージになりました:

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

サウンドプールでは問題なく動作しますが、メディアプレーヤーでは動作しません。その理由は何ですか?どうすれば解決できますか?

事前に感謝し、私の英語をお楽しみください:)

19
KenMasters

お使いのプラットフォームがQCMediaPlayerの使用をサポートしているとは思わないので、恐れ入りますが、このソースを参照することで詳細を確認できるすべてのエラーが発生します。

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

もし私があなたなら、当分の間、サウンドプールを使い続けるでしょう。

2
James Wolfe