generalize interface
This commit is contained in:
parent
56eb8cd97c
commit
02356162fd
|
@ -25,7 +25,7 @@ type Decoder struct {
|
|||
fpos uint32 // the current position in frame
|
||||
}
|
||||
|
||||
func Decompress(infile, outfile *os.File, passwd string, cb Callback) (err error) {
|
||||
func Decompress(infile, outfile io.ReadWriteSeeker, passwd string, cb Callback) (err error) {
|
||||
decoder := NewDecoder(infile)
|
||||
if len(passwd) > 0 {
|
||||
decoder.SetPassword(passwd)
|
||||
|
|
|
@ -25,7 +25,7 @@ type Encoder struct {
|
|||
shift_bits uint32 // packing int to pcm
|
||||
}
|
||||
|
||||
func Compress(infile, outfile *os.File, passwd string, cb Callback) (err error) {
|
||||
func Compress(infile, outfile io.ReadWriteSeeker, passwd string, cb Callback) (err error) {
|
||||
wave_hdr := WaveHeader{}
|
||||
var data_size uint32
|
||||
if data_size, err = wave_hdr.Read(infile); err != nil {
|
||||
|
|
5
wav.go
5
wav.go
|
@ -1,6 +1,7 @@
|
|||
package tta
|
||||
|
||||
import (
|
||||
"io"
|
||||
"os"
|
||||
"reflect"
|
||||
"unsafe"
|
||||
|
@ -74,7 +75,7 @@ func (this *WaveExtHeader) Bytes() []byte {
|
|||
}))
|
||||
}
|
||||
|
||||
func (this *WaveHeader) Read(fd *os.File) (subchunk_size uint32, err error) {
|
||||
func (this *WaveHeader) Read(fd io.ReadWriteSeeker) (subchunk_size uint32, err error) {
|
||||
var default_subchunk_size uint32 = 16
|
||||
b := this.Bytes()
|
||||
var read_len int
|
||||
|
@ -125,7 +126,7 @@ func (this *WaveHeader) Read(fd *os.File) (subchunk_size uint32, err error) {
|
|||
return
|
||||
}
|
||||
|
||||
func (this *WaveHeader) Write(fd *os.File, size uint32) (err error) {
|
||||
func (this *WaveHeader) Write(fd io.ReadWriteSeeker, size uint32) (err error) {
|
||||
var write_len int
|
||||
// Write WAVE header
|
||||
if write_len, err = fd.Write(this.Bytes()); err != nil {
|
||||
|
|
Loading…
Reference in a new issue