Commit graph

311 commits

Author SHA1 Message Date
mewmew 8a188c6be0 frame: Treat negative shifts as errors.
Because Josh didn't have complete understanding of LPC analysis back in < 2006 many developers over the years have disputed over negative shifts. Should the switch direction? Should the roll around? Nobody knows. Not even Josh.

The answer finally came to us when Josh stepped forward and told us the truth.

What else has Josh put us through? Is fLaC a lie?

http://lists.xiph.org/pipermail/flac-dev/2006-December/002030.html

- Karlek
2016-01-20 19:25:22 +01:00
mewmew c1a3f64314 frame: Implement Rice partition Escape code decoding. 2016-01-20 19:07:17 +01:00
mewmew a81eb2312c frame: Add function name prefix to error messages. 2015-09-17 13:00:51 +02:00
Robin Eklind b115786669 Merge pull request #10 from pmezard/remove-panics
subframe: turn panics into errors
2015-09-17 12:52:08 +02:00
Patrick Mezard 91b22b5748 subframe: turn panics into errors
I believe panics should be reserved to internal invariant violations or
irrecoverable errors, not invalid user inputs. Also, they are triggered
by go-fuzz, removing them helps testing the package.
2015-09-17 09:29:38 +02:00
mewmew a26b325498 readme: Add version 1.0.2 changes. 2015-06-05 00:17:58 +02:00
Robin Eklind 58451dbb7c Merge pull request #9 from sdidyk/master
Bugfix for frame.HasFixedBlockSize
2015-05-16 18:22:55 +02:00
Sergey Didyk 88d6a93e63 Bugfix for frame.HasFixedBlockSize 2015-05-16 18:45:39 +03:00
mewmew ee0de8a0e7 all: gofmt -s 2015-02-25 17:19:04 +01:00
mewmew 4d3b0b3168 travis: Update import paths for Go 1.4. 2015-02-25 17:07:02 +01:00
mewmew 56c0c0e827 readme: Clarify the public domain notice. 2015-02-08 15:15:42 +01:00
mewmew 6c9fd57e7a readme: Add link to Jonathan's GitHub user. 2015-01-30 02:00:18 +01:00
mewmew e95c34c138 all: Update godoc links to use gopkg.in/mewkiz/flac.v1 2015-01-30 01:58:04 +01:00
mewmew bb5e1287ea readme: Fix link to pull request. 2015-01-30 01:52:39 +01:00
mewmew 05df7c8e32 readme: Add v1.0.1 release notes. 2015-01-30 01:47:26 +01:00
Robin Eklind f2604cc85b Merge pull request #7 from perotinus/master
Fix two bugs with subframe decoding
2015-01-30 01:20:56 +01:00
mewmew 4368146290 frame: Add test cases. Currently 1/3 is failing the MD5 checksum test. 2015-01-30 01:19:34 +01:00
mewmew 6e68e06c25 frame: Remove the bit reader field from the SubFrame structure. This change will facilitate future test cases by allowing the use of reflect.DeepEqual on subframes. 2015-01-30 01:18:22 +01:00
mewmew ffd8c986fb meta: Fix golint issues in test cases. 2015-01-30 01:16:29 +01:00
mewmew b9b06f8fec cmd/flac2wav: Fix golint issue.
cmd/flac2wav/flac2wav.go:53:22: error strings should not end with punctuation
2015-01-30 01:15:20 +01:00
mewmew 4d5503c58f cmd/flac2wav: Fix import path. 2015-01-04 15:36:23 +01:00
J. MacMillan fb179f9725 Merge branch 'master' of https://github.com/perotinus/flac 2015-01-03 23:02:33 -05:00
J. MacMillan 5d83ffb7bf Fix two bugs in the FLAC library:
- the linear predictive coding has an overflow error -- with FIR-encoded frames, this often causes the output signal to be noise rather than what it should be. Type-converting to int64 to do the summation, then back to int32 after shifting fixed this for the files that I tested against.
- the check if the Rice parameter was the escape code did not handle the 5-bit escape code -- it checked for 0x1f and a 4-bit-long code instead of a 5-bit-long one

I don't have any FLAC files that test the latter issue; I have a number of FLAC files that caused the former, all of which have
2015-01-03 22:51:44 -05:00
mewmew 907aec9ab4 travis: Use new import for goimports. 2014-11-11 00:57:40 +01:00
mewmew 8361f41506 travis: Fix coverage. 2014-11-10 00:58:26 +01:00
mewmew 25777028d0 travis: Add travis config. 2014-11-10 00:25:22 +01:00
mewmew 228b2a8cde travis: Add config. 2014-11-10 00:23:09 +01:00
mewmew 50ad5a4321 flac: Use versioned imports. 2014-09-30 02:24:15 +02:00
mewmew 1dda929fa9 cmd/flac2wav: Remember to check error and close file. 2014-08-10 19:27:16 +02:00
mewmew 53ed7ddabe cmd/flac2wav: Add flac2wav command which converts FLAC files into WAV files. 2014-08-10 19:23:51 +02:00
mewmew e0bb97c810 flac: Use buffered reader throughout and fix io.Closer behavior. 2014-08-08 22:16:37 +02:00
mewmew 2eb7279d0f cmd/flac-frame: Remember to close the underlying file of the FLAC stream. 2014-08-08 22:15:18 +02:00
mewmew 531ab11cc3 cmd/flac-frame: Update to make use of the new API. 2014-08-08 09:42:15 +02:00
mewmew ead9333e9a cmd/go-metadata: Update to make use of stream.Info, which is no longer part of stream.Blocks. 2014-08-08 09:36:52 +02:00
mewmew 6b9bb62f50 cmd/go-metaflac: Update to make use of the new API. 2014-08-08 09:10:27 +02:00
mewmew 5d5937d195 meta: Rename MIMEType to MIME in the Picture type. 2014-08-08 09:09:20 +02:00
mewmew 03e3751e96 meta: Fix broken link. 2014-08-08 08:55:46 +02:00
mewmew d97155529f flac,frame,meta: Fix display of links. 2014-08-08 08:52:08 +02:00
mewmew 79a7637804 readme: The project is now considered mature, 21 months after the initial commit. Remove work in progress notice. 2014-08-08 08:48:17 +02:00
Robin Eklind 4496402c0b Merge pull request #6 from mewkiz/api
Merge api branch, which contains a complete API overhaul.
2014-08-08 08:37:51 +02:00
mewmew 1d2ef1f5d0 Merge branch 'master' of github.com:mewkiz/flac into api
Conflicts:
	frame/subframe.go
2014-08-08 08:39:37 +02:00
mewmew 0e7b20bac7 frame: Update Frame.Hash documentation. This is the last API update, and as such fixes issue #4. 2014-08-08 08:27:05 +02:00
mewmew 01ac9e9530 frame: Implement Frame.Hash method which adds the frame's unencoded audio samples to a running MD5 hash. 2014-08-08 08:20:59 +02:00
mewmew d3c8aefe38 flac: Add new API definition and implementation of package flac. Updates issue #4. 2014-08-08 07:23:54 +02:00
mewmew 7a33256cf7 meta: Return io.ErrUnexpectedEOF if EOF occurs in the middle of a metadata block. 2014-08-08 06:42:26 +02:00
mewmew ddd621f24d meta: Update test cases to make use of the latest version of the flac API. Package flac is still to be commited. 2014-08-08 06:39:44 +02:00
mewmew 654f26264a frame: Return io.ErrUnexpectedEOF if EOF occurs in the middle of an audio frame. 2014-08-08 05:33:21 +02:00
mewmew 88de0bd4a7 meta: Add a brief introduction of the FLAC metadata format. 2014-08-08 02:38:26 +02:00
mewmew d297a8e362 readme: Update links. 2014-08-08 01:22:53 +02:00
mewmew 322ef148cd readme: Minor wording update. 2014-08-08 01:20:37 +02:00