как в golang воспроизводить аудиофайлы
Ответы
Elena Gromova
23 сентября 2024
Для воспроизведения аудиофайлов в Go, вы можете использовать сторонние библиотеки, такие как github.com/faiface/beep
или github.com/hajimehoshi/oto
. Ниже приведен пример использования библиотеки oto
:
package main
import (
""github.com/hajimehoshi/oto""
""github.com/hajimehoshi/go-mp3""
""os""
)
func main() {
file, err := os.Open(""audio.mp3"")
if err != nil {
panic(err)
}
defer file.Close()
decoder, err := mp3.NewDecoder(file)
if err != nil {
panic(err)
}
player, err := oto.NewPlayer(decoder.SampleRate(), 2, 2, 8192)
if err != nil {
panic(err)
}
defer player.Close()
buffer := make([]byte, 8192)
for {
_, err := decoder.Read(buffer)
if err != nil {
break
}
player.Write(buffer)
}
}
Этот код открывает аудиофайл audio.mp3
, создает декодер MP3 и проигрыватель oto
, а затем читает и передает данные аудиофайла в проигрыватель для воспроизведения. Вам также может понадобиться установить дополнительные зависимости для этого примера, такие как github.com/pkg/errors
, github.com/hajimehoshi/go-mp3
и github.com/pkg/xerrors
. Не забудьте изменить путь к аудиофайлу, который хотите воспроизвести.
0
0