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;
  // 其他代码自己补充
  }
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.

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

分享
微博
QQ
微信
回复
2024-12-25 19:00:13


相关问题
HarmonyOS关于RichText疑问
1460浏览 • 1回复 待解决
HarmonyOS 关于deliveryWithInstall疑问
1275浏览 • 1回复 待解决
HarmonyOS 关于混淆疑问
675浏览 • 1回复 待解决
HarmonyOS 关于手动签名疑问
1156浏览 • 1回复 待解决
HarmonyOS 关于NavPathStack疑问
607浏览 • 1回复 待解决
HarmonyOS 关于DES加解密疑问
594浏览 • 1回复 待解决
HarmonyOS 关于半模态转场疑问
574浏览 • 1回复 待解决
HarmonyOS 关于ArkTS UI样式文件疑问
916浏览 • 1回复 待解决
关于鸿蒙应用开发疑问?
5809浏览 • 1回复 待解决
关于Wearable开发几个疑问
7992浏览 • 2回复 待解决
HarmonyOS AVPlayer问题
651浏览 • 1回复 待解决
关于DependentLayout布局一点疑问
6235浏览 • 1回复 待解决
关于鸿蒙camera外设驱动编写疑问
4992浏览 • 1回复 待解决
请教一下关于Ticktimer 疑问
4002浏览 • 1回复 待解决
关于智能穿戴应用开发几个疑问
11301浏览 • 2回复 待解决
HarmonyOS 关于RdbStore操作一些疑问
596浏览 • 1回复 待解决
HarmonyOS AVPlayer API问题
216浏览 • 1回复 待解决
HarmonyOS AVPlayer 播放问题
1351浏览 • 1回复 待解决