Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/191.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android MediaPlayer认为aac*音频文件是视频文件?_Android_Media Player - Fatal编程技术网

Android MediaPlayer认为aac*音频文件是视频文件?

Android MediaPlayer认为aac*音频文件是视频文件?,android,media-player,Android,Media Player,代码运行得很好,但是我怎么得到这个错误日志呢 错误日志: 08-28 08:44:24.281: E/MediaPlayer(32454): mOnVideoSizeChangedListener is null. Failed to send MEDIA_SET_VIDEO_SIZE message. 我尝试将音频文件转换为不同的格式设置侦听器等等。。。 我真的需要你帮我做这个。她是整个MediaPlayer日志: 日志: 和Java代码 Java代码: public class Main

代码运行得很好,但是我怎么得到这个错误日志呢

错误日志:

08-28 08:44:24.281: E/MediaPlayer(32454): mOnVideoSizeChangedListener is null. Failed to send MEDIA_SET_VIDEO_SIZE message.
我尝试将音频文件转换为不同的格式设置侦听器等等。。。 我真的需要你帮我做这个。她是整个MediaPlayer日志:

日志:

和Java代码

Java代码:

 public class MainActivity extends Activity {
    MediaPlayer TestingAudio;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Initialization();
        DoStuff();
    }

    private void Initialization() {
        setContentView(R.layout.activity_main);
        TestingAudio = MediaPlayer.create(MainActivity.this, R.raw.samlagnin);
    }

    private void DoStuff() {
        TestingAudio.start();
    }

    @Override
    protected void onPause() {
        super.onPause();
        TestingAudio.release();
        TestingAudio = null;
    }

你是说aac吗?但MediaPlayer不支持aac。

我是否理解正确,你的应用程序正常工作,而你只是想知道记录的错误?我认为MediaPlayer只是尝试调用所有定义的回调方法,而不考虑具体的文件/编解码器。正如您在日志文件中看到的,还有其他几个回调也是空的,比如
mOnCompletionListener
mOnPreparedListener

所以我不会太担心这个问题。

我通过附加一些空的侦听器,成功地消除了错误。请参阅

上的setOnPreparedListener()和类似方法,我的意思是aac抱歉:p但他们说我很困惑,所以我应该使用什么格式?@Gudrodur没关系。:)你使用Android3.1+运行测试代码了吗?也许你可以给我提供aac文件,然后我可以在我的机器上测试它。我试过你的aac文件。如果我在我的手机(Android4.0)上安装了测试apk,没有发现错误日志,我可以听到声音。但是如果我在电话模拟器(Android4.1)上安装测试apk,那么我会得到一个错误java.io.IOException:setDataSourceFD失败。我还尝试了另一个mp3文件在我的模拟器上测试,结果很好。因此,当您看到这些错误日志时,我想可能这个aac文件(不完整?)有问题。谢谢您的帮助。我将尝试进行一次新的音频录制,看看是否不再出现这些错误。是的,我只是想知道记录的错误。我也许不该担心。这让我很烦,我花了很多时间试图找出lolI有类似问题的原因,但是视频,而不是音频(不过是同一个媒体播放器)。我相信这很重要,而不仅仅是无害的错误日志消息。我认为这是非常有害的(如果你愿意,可以证明这一点)。我很想取消回调--但是--如果没有反射,我无法找到
MediaPlayer
。您是如何定位MP的(当您完成测试时,您可能将优秀代码附加到MP上的)?
 public class MainActivity extends Activity {
    MediaPlayer TestingAudio;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Initialization();
        DoStuff();
    }

    private void Initialization() {
        setContentView(R.layout.activity_main);
        TestingAudio = MediaPlayer.create(MainActivity.this, R.raw.samlagnin);
    }

    private void DoStuff() {
        TestingAudio.start();
    }

    @Override
    protected void onPause() {
        super.onPause();
        TestingAudio.release();
        TestingAudio = null;
    }