你好我是新来的颤振
我正在尝试从 url 或网络播放音频文件,但要使用哪个,因为
我搜索了谷歌它显示了很多但使用哪一个。
如果可能的话,可以展示一个关于如何创建如下图的示例
请帮助...
提前致谢!!!
你好我是新来的颤振
我正在尝试从 url 或网络播放音频文件,但要使用哪个,因为
我搜索了谷歌它显示了很多但使用哪一个。
如果可能的话,可以展示一个关于如何创建如下图的示例
请帮助...
提前致谢!!!
显示如何在屏幕截图中执行所有操作的答案可能不适合 StackOverflow 答案(音频代码、UI 代码以及如何提取音频波数据),但我会给你一些希望有用的指针。
使用just_audio插件,您可以从这些类型的 URL 加载音频:
https://example.com/track.mp3
(任何网址)file:///path/to/file.mp3
(任何具有权限的文件 URL)asset:///path/to/asset.mp3
(任何 Flutter 资产)您可能需要一个播放列表,这里是如何定义一个:
final playlist = ConcatenatingAudioSource(children: [
AudioSource.uri(Uri.parse('https://example.com/track1.mp3')),
AudioSource.uri(Uri.parse('https://example.com/track2.mp3')),
AudioSource.uri(Uri.parse('https://example.com/track3.mp3')),
AudioSource.uri(Uri.parse('https://example.com/track4.mp3')),
AudioSource.uri(Uri.parse('https://example.com/track5.mp3')),
]);
现在要播放它,您创建一个播放器:
final player = AudioPlayer();
设置播放列表:
await player.setAudioSource(playlist);
然后当用户点击事物时,您可以执行以下操作:
player.play();
player.pause();
player.seekToNext();
player.seekToPrevious();
player.seek(Duration(milliseconds: 48512), index: 3);
player.dispose(); // to release resources once finished
对于屏幕布局,请注意 just_audio 包含一个看起来像这样的示例,并且由于与您自己提出的布局有很多相似之处,您可以通过查看其代码获得一些想法:
最后,对于音频波形显示,还有一个名为audio_wave的包。您可以使用它来显示音频波,但问题是我知道没有插件可以让您访问波形数据。如果您真的想要一个波形,您可能会使用一个假波形(如果它只是为了直观地指示位置进度),否则您或某人将需要编写一个插件来将音频文件解码为样本列表。