HarmonyOS 鸿蒙Next avPlayer.seek定位不准确
HarmonyOS 鸿蒙Next avPlayer.seek定位不准确 比较烦恼的问题,比如在状态回调里设定从15秒处开始播放,但是无效,还是从0秒处播放。拖动滑块设定进度也不准。
case 'prepared':
logger.info('AVPlayerDemo AVPlayer state prepared called.');
this.durationTime = Math.floor(avPlayer.duration / 1000);
this.durationTimeString = TimeUtil.secondToTime(this.durationTime);
avPlayer.loop = false;
avPlayer.setSpeed(media.PlaybackSpeed.SPEED_FORWARD_1_00_X)
avPlayer.seek(15, media.SeekMode.SEEK_CLOSEST)
//avPlayer.play()
break;
case 'completed':
logger.info('AVPlayerDemo AVPlayer state completed called.');
avPlayer.seek(15, media.SeekMode.SEEK_CLOSEST)
break;
更多关于HarmonyOS 鸿蒙Next avPlayer.seek定位不准确的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
2 回复
avPlayer.seek第一个参数timeMs 单位是毫秒,改成15000试试。
更多关于HarmonyOS 鸿蒙Next avPlayer.seek定位不准确的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
针对HarmonyOS(鸿蒙)系统中Next avPlayer的seek
定位不准确问题,可能的原因及解决方法如下:
-
时间戳精度问题:
- 鸿蒙系统中的时间戳处理可能与传统Android或iOS有所不同,导致
seek
操作时的精度受到影响。检查seek
方法传入的时间戳是否精确到足够小的单位(如毫秒),并尝试调整以匹配系统的处理精度。
- 鸿蒙系统中的时间戳处理可能与传统Android或iOS有所不同,导致
-
媒体文件编码问题:
- 某些媒体文件的编码格式可能不支持精确的
seek
操作。尝试使用不同编码格式的文件,看是否能改善定位准确性。
- 某些媒体文件的编码格式可能不支持精确的
-
缓存影响:
- 如果avPlayer在播放过程中进行了缓存,
seek
操作可能会受到缓存数据的影响。尝试在seek
前清空缓存或等待缓存完成后再进行定位。
- 如果avPlayer在播放过程中进行了缓存,
-
系统Bug:
- 鸿蒙系统的某些版本可能存在
seek
相关的Bug。检查当前系统版本是否为最新,并关注华为发布的更新说明,看是否已修复相关问题。
- 鸿蒙系统的某些版本可能存在
-
硬件兼容性:
- 不同硬件设备对媒体播放的支持程度可能不同,导致
seek
定位不准确。尝试在多种硬件设备上测试,以确定是否为设备兼容性问题。
- 不同硬件设备对媒体播放的支持程度可能不同,导致
如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html