HarmonyOS 关于AvPlayer中usage的问题疑问

音视频播放场景,使用streamusage错误:STREAM_USAGE_MUSIC(音乐),应改为STREAM_USAGE_MOVIE(电影或视频),当前列表是用的Avplayer,Avplayer没有设置过music,其他界面都是用的Video组件,这到底怎么修改?

HarmonyOS
2024-12-25 16:02:55
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

AVPlayer如果不指定usage的话,默认是STREAM_USAGE_MUSIC,所以如果是播放视频的场景,需要显式的指定一下为STREAM_USAGE_MOVIE。

参考代码:

avPlayer.on('stateChange', async (state: string, reason: media.StateChangeReason) => {
  switch (state) {
    case 'idle': // 成功调用reset接口后触发该状态机上报。
      console.info('AVPlayer state idle called.');
      avPlayer.release(); // 调用release接口销毁实例对象。
      break;
    case 'initialized': // avplayer 设置播放源后触发该状态上报。
      console.info('AVPlayer state initialized called.');
      let audioRendererInfo: audio.AudioRendererInfo = {
        usage: audio.StreamUsage.STREAM_USAGE_MOVIE,
        rendererFlags: 0
      }
      avPlayer.audioRendererInfo = audioRendererInfo
      avPlayer.surfaceId = this.surfaceID; // 设置显示画面,当播放的资源为纯音频时无需设置。
      avPlayer.prepare();
      break;
  // 其他代码自己补充
  }

主要是在initialized状态之后,显式的指定一下audioRendererInfo。

分享
微博
QQ
微信
回复
2024-12-25 19:00:13
相关问题
HarmonyOS 关于deliveryWithInstall疑问
2105浏览 • 1回复 待解决
HarmonyOS关于RichText疑问
2223浏览 • 1回复 待解决
HarmonyOS 关于混淆疑问
1403浏览 • 1回复 待解决
HarmonyOS 关于手动签名疑问
1843浏览 • 1回复 待解决
HarmonyOS 关于NavPathStack疑问
1288浏览 • 1回复 待解决
HarmonyOS 关于DES加解密疑问
1050浏览 • 1回复 待解决
HarmonyOS 关于半模态转场疑问
1109浏览 • 1回复 待解决
HarmonyOS AVPlayer问题
1086浏览 • 1回复 待解决
关于鸿蒙应用开发疑问?
6634浏览 • 1回复 待解决
关于Wearable开发几个疑问
9110浏览 • 2回复 待解决
HarmonyOS 关于ArkTS UI样式文件疑问
1503浏览 • 1回复 待解决
关于鸿蒙next相关疑问
528浏览 • 0回复 待解决
关于鸿蒙next相关疑问
560浏览 • 0回复 待解决
关于鸿蒙next相关疑问
571浏览 • 0回复 待解决
关于鸿蒙next相关疑问
545浏览 • 0回复 待解决
关于鸿蒙next相关疑问
686浏览 • 0回复 待解决
关于鸿蒙next相关疑问
755浏览 • 2回复 待解决
关于鸿蒙next相关疑问
541浏览 • 0回复 待解决
关于鸿蒙next相关疑问
624浏览 • 1回复 待解决
关于鸿蒙next相关疑问
472浏览 • 0回复 待解决
关于鸿蒙next相关疑问
806浏览 • 1回复 待解决
关于鸿蒙next相关疑问
482浏览 • 0回复 待解决
关于鸿蒙next相关疑问
525浏览 • 0回复 待解决