微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Flutter just_audio 包如何从字节播放音频

如何解决Flutter just_audio 包如何从字节播放音频

我正在使用 just_audio 插件,它在描述中有一个功能:从字节流中读取。

基本上,当我放一个文件(来自 url)来播放时,我正在保存文件中的字节,所以在这一步之后我想在本地播放它。

我有一个关于如何从字节流播放的问题。谁能提供一个如何做到这一点的例子?我需要把它放在我的播放列表中,所以它必须是 ConcatanatingAudioSource 的子项。

我发现的唯一音频源是从 Uri 使用它。

final _playlist = ConcatenatingAudioSource(
children: [
    AudioSource.uri(
      Uri.parse(
          "https://s3.amazonaws.com/scifri-episodes/scifri20181123-episode.mp3"),tag: AudioMetadata(
        album: "Science Friday",title: "ddddd",artwork:
            "https://media.wnyc.org/i/1400/1400/l/80/1/ScienceFriday_WNYCStudios_1400.jpg",),)
]
)

这就是我保存字节的方式:

void getBytes() async {
  Uri uri = Uri.parse(url);
  var rng = new Random();
// get temporary directory of device.
  Directory tempDir = await getTemporaryDirectory();
// get temporary path from temporary directory.
  String tempPath = tempDir.path;
// create a new file in temporary path with random file name.
  File file = new File('$tempPath' + (rng.nextInt(100)).toString() + '.mp3');
// call http.get method and pass imageUrl into it to get response.
  http.Response response = await http.get(uri);
// write bodyBytes received in response to file.
  await file.writeAsBytes(response.bodyBytes);
}

提前致谢

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。