使用go语言GUI库实现对mp3文件的播放1(简单的播放mp3文件)
使用beep播放mp3文件(10num)
- 使用go语言GUI库fyne实现音乐播放器
要是想使用go语言实现播放mp3需要借助beep库,在github上有已经开源的库路径如下:beep库文件路径
下面的代码只是实现了简单的播放功能,没有暂停和快进的功能
package mainimport ("github.com/faiface/beep""github.com/faiface/beep/mp3""github.com/faiface/beep/speaker""log""os""time"
)/*使用go语言实现map播放器
*/func main() {
// 1. 打开mp3文件audioFile, err := os.Open("/work/video/how_dare_you_say_dont_love_you.mp3")if err != nil {log.Fatal(err)}// 使用defer防止文件描述服忘记关闭导致资源泄露defer audioFile.Close()// 对文件进行解码audioStreamer, format, err := mp3.Decode(audioFile)if err != nil {log.Fatal(err)}defer audioStreamer.Close()// SampleRate is the number of samples per second. 采样率_ = speaker.Init(format.SampleRate, format.SampleRate.N(time.Second / 10))// 用于数据同步,当播放完毕的时候,回调函数中通过chan通知主goroutinedone := make(chan bool)// 这里播放音乐speaker.Play(beep.Seq(audioStreamer, beep.Callback(func() {// 播放完成调用回调函数done <- true})))// 等待播放完成<- done
}
飞书文档:
mp3播放器使用go语言GUI库fyne实现
更多内容:
关注微信公众号,持续更新