遵循的指示,从。https:/codingwithjoe. complaying-audio-from-the-web-and-http。 (用他的例子和AudioProvider类)
我一直在使用。
audioplayer: ^0.8.1
audioplayer_web: ^0.7.1
来播放https链接的音频,问题是它有一些奇怪的不一致的效果。
问题是它有一些奇怪的不一致的效果.-播放几个音频后,它继续播放相同的音频,即使新的网址被加载-播放几个音频后,声音是奇怪的,就像一些部分与其他音频切割。
有什么好的音频播放器,接受网址链接的翩翩,可以产生一个一致的结果?
你的例子中提供的audioplayer工作得很好,功能也不错。根据你的描述,我觉得当你播放一个声音时,你似乎没有关闭会话。好像是你在堆叠声音,导致了奇怪的声音。
你必须关闭实例,然后.即使文章已经过时(2018年3月),Audioplayer已经进一步发展.在这里查看他们的官方指南。
https:/pub.devpackagesaudioplayer
这是版本 audioplayer 0.8.1
而不是3.0之类的。
文档中的例子。
Instantiate an AudioPlayer instance
//...
AudioPlayer audioPlugin = AudioPlayer();
//...
玩家控制:
audioPlayer.play(url);
audioPlayer.pause();
audioPlayer.stop();
状态和当前位置。
//...
_positionSubscription = audioPlayer.onAudioPositionChanged.listen(
(p) => setState(() => position = p)
);
_audioPlayerStateSubscription = audioPlayer.onPlayerStateChanged.listen((s) {
if (s == AudioPlayerState.PLAYING) {
setState(() => duration = audioPlayer.duration);
} else if (s == AudioPlayerState.STOPPED) {
onComplete();
setState(() {
position = duration;
});
}
}, onError: (msg) {
setState(() {
playerState = PlayerState.stopped;
duration = new Duration(seconds: 0);
position = new Duration(seconds: 0);
});
});
就像我说的,大多数音频插件都是以单人模式和实例运行的。为了获得奇怪的效果,你必须在同一个实例中加载下一首歌曲,不要打开另一个新的实例,你就不会得到任何奇怪的效果。
如果你想切换到不同的音频播放器,另一个伟大的,我在一个应用程序项目中使用的是以下。
https:/pub.devpackagesaudio_manager#-readme-tab-。
希望对你有所帮助。