当前位置: 首页 > 知识库问答 >
问题:

媒体播放器。seekTo()不寻求在Android上定位

相俊迈
2023-03-14

我正在开发一个应用程序,其中视频以3个不同的间隔暂停。第二次暂停后,如果单击了一个按钮,它应该从以前的位置开始返回。

如果当前在1:30暂停,则单击按钮,它将转到上一个书签,即00:45。

我想用MediaPlayer。seekTo()将帮助我实现这一目标。但是,seekTo()根本不寻找位置。即使在调用seekTo()之后,currentPosition仍保持不变;

这是我的密码。

mediaPlayer.setOnSeekCompleteListener(new OnSeekCompleteListener() {
    @Override
    public void onSeekComplete(MediaPlayer mp) {
        Log.d("VID_PLAYER","Seek Complete. Current Position: " + mp.getCurrentPosition());
        mp.start();
    }
});

在下面的某个地方,我有这个。。。

mediaPlayer。希克托(45000)

有什么问题?为什么不是seekTo();工作任何帮助都将不胜感激。

我目前正在Android v4上测试它。0.3(ICS)


共有3个答案

曾泳
2023-03-14

你的问题和这个bug有关https://code.google.com/p/android/issues/detail?id=4124

我记得大约一年前遇到过这种情况。我想我当时没有找到解决办法。

谭卜鹰
2023-03-14

尝试下面给出的代码片段,以实现更准确地寻找媒体的特定位置。

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) 
    mediaPlayer.seekTo(seekPosition,MediaPlayer.SEEK_CLOSEST);
else 
    mediaPlayer.seekTo((int)seekPosition);

请记住,随着精确度的提高,搜索速度也会降低。因此,在播放高分辨率视频时,建议不要使用MediaPlayer。更频繁地搜索最近的

姬念
2023-03-14

其中一个原因,Android是不能做搜索是因为奇怪的编码的视频。例如在MP4格式中,所谓的寻找点(即搜索索引)可以在文件的开头和结尾处指定。如果它们是在文件的开头指定的,那么asikTo的行为将是正确的。但是如果它们在文件的末尾被指定,那么sikTo将什么也不做,视频将从sikTo之后的开头开始。

这是Android4.4中确认的错误或功能。2.

P. S.YouTube所有视频都在文件开头用“寻求点”编码。所以,如果你有这个问题与在你的应用程序中首先检查你的应用程序与一些视频文件从YouTube。也许你需要重新编码你的视频...

 类似资料:
  • 我正在开发一个包含一些音频播放器的RecyclerView的应用程序。应用程序将下载。3gp文件(如果尚未下载)。 当我单击playAudio按钮时,音频未被播放。 这是我的适配器代码: 我怎样才能解决这个问题?

  • 我试图通过使用寻求酒吧听众播放一首歌。但是当我尝试拖动进度条时,它会从歌曲的开头播放。它需要从那个被拖动的位置演奏。 这是我的代码: 如何解决这个问题。提前谢谢。。

  • 我有一个简单的播放器和录音机。一切都很好,但都有一个问题。我想添加搜索栏来查看播放记录的进度,并使用此搜索栏设置玩家应该播放的位置。我有进步,但没有效果。这是代码: 你知道如何使用seek bar来查看进度和设置记录的位置吗?

  • 我在寻找他的直播流时遇到了问题。 当我在videoview上调用getCurrentPosition时,它返回40000,但当我尝试搜索时(20000);没有改变,没有错误,没有行动。 所以如果有人有任何建议请帮助我。 下面是一个代码示例:

  • 大家好,我正在尝试使用两个独立的媒体播放器实例播放音频和视频文件。当我从一开始播放它时,它工作得很好。但当我寻找时,我可以看到音频和视频的延迟 这是我寻找音频和视频的代码 //sikAudio(msec); if(media播放器!=null) { // 没有直播流,如果(medialayer.get持续时间() }

  • 我正在编写一个,其中我提供了功能,几乎满足了我的需求,但面临一些小问题。 我是如何实现我的音乐播放器的: 正在列出SD卡中可用的音频歌曲(路径类似:) 一旦用户点击任何音频,然后启动媒体播放器 在媒体播放器屏幕中,我为用户提供了返回音频列表的导航 用户返回,现在选择了一些其他歌曲来听(这里我面临的问题是,用户将可以播放新选择的歌曲,但也会播放旧歌曲,而一次只能播放上一次选择的歌曲,但在我的情况下,