jfreymuth / oggvorbis Goto Github PK
View Code? Open in Web Editor NEWa native go ogg/vorbis decoder
License: MIT License
a native go ogg/vorbis decoder
License: MIT License
func (r *Reader) Read(p []float32) (int, error)
when we call Read for []float32 - what data format do we expect, is it Pulse-code modulation?
I'm using "github.com/faiface/beep" to play audio, which in turn uses this library to decode OGG Vorbis files.
But some OGG files play at a much higher pitch and speed than they should.
I attached a zip file with a script that plays the sound, and a .ogg file that doesn't play correctly.
Help would be appreciated!
Here is the zip.
test.zip
Trying to decode telegram voice messages vorbis: invalid header
Example file:
https://file.io/LAv06s4gaw1o
package main
import (
"bytes"
"fmt"
"github.com/jfreymuth/oggvorbis"
)
func main() {
if _, err := oggvorbis.NewReader(bytes.NewReader(nil)); err != nil {
fmt.Println(err)
}
}
Now NewReader
just returns io.EOF
. Would it be possible to return a more meaningful error for this case?
I'm not sure the policy how to tag your libraries, but I'd be happy if you could specify the dependency on the latest vorbis library.
I've tested oggvorbis with this music http://mart.kitunebi.com/m-art_Harpie'sFeather.ogg in http://mart.kitunebi.com/music_act.html (Japanese site), and found noise. It looks like the decoded result includes values which are greater than 1. I expected all values are in the range of -1 to 1. Thanks.
I found that https://raw.githubusercontent.com/hajimehoshi/go-inovation/master/ino/internal/assets/resources/sound/ino1.ogg causes noise with oggvorbis. Note that before fixing #1, there were sample values exceeding e.g. 10 in that audio file when decoding with jfreymuth/oggvorbis. I've confirmed that there wasn't noise with Firefox ogg player or others. Thanks.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.