Skip to content

Commit 372fcc3

Browse files
committed
added go modules, fixed mediafile and tests
1 parent eb404c9 commit 372fcc3

File tree

5 files changed

+76
-134
lines changed

5 files changed

+76
-134
lines changed

README.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,11 @@ var outputPath = "/data/testmp4.mp4"
3232
func main() {
3333

3434
// Create new instance of transcoder
35-
trans := new(transcoder.Transcoder)
35+
trans := new(transcoder.Transcoder)
3636

3737
// Initialize transcoder passing the input file path and output file path
38-
err := trans.Initialize( inputPath, outputPath )
39-
// Handle error...
38+
err := trans.Initialize( inputPath, outputPath )
39+
// Handle error...
4040

4141
// Start transcoder process without checking progress
4242
done := trans.Run(false)
@@ -53,11 +53,11 @@ func main() {
5353
func main() {
5454

5555
// Create new instance of transcoder
56-
trans := new(transcoder.Transcoder)
56+
trans := new(transcoder.Transcoder)
5757

5858
// Initialize transcoder passing the input file path and output file path
59-
err := trans.Initialize( inputPath, outputPath )
60-
// Handle error...
59+
err := trans.Initialize( inputPath, outputPath )
60+
// Handle error...
6161

6262
// Start transcoder process with progress checking
6363
done := trans.Run(true)
@@ -82,11 +82,11 @@ Creating an input pipe will return [\*io.PipeReader](https://golang.org/pkg/io/#
8282
func main() {
8383

8484
// Create new instance of transcoder
85-
trans := new(transcoder.Transcoder)
85+
trans := new(transcoder.Transcoder)
8686

8787
// Initialize an empty transcoder
88-
err := trans.InitializeEmptyTranscoder()
89-
// Handle error...
88+
err := trans.InitializeEmptyTranscoder()
89+
// Handle error...
9090

9191
// Create a command such that its output should be passed as stdin to ffmpeg
9292
cmd := exec.Command("cat", "/path/to/file")

go.mod

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
module github.com/xfrr/goffmpeg
2+
3+
go 1.14
4+
5+
require github.com/stretchr/testify v1.5.1

go.sum

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
2+
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
3+
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
4+
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
5+
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
6+
github.com/stretchr/testify v1.5.1 h1:nOGnQDM7FYENwehXlg/kFVnos3rEvtKTjRvOWSzb6H4=
7+
github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=
8+
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
9+
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
10+
gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
11+
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=

tests/transcoding_test.go

Lines changed: 48 additions & 116 deletions
Original file line numberDiff line numberDiff line change
@@ -13,239 +13,174 @@ import (
1313

1414
func TestInputNotFound(t *testing.T) {
1515

16-
var inputPath = "/data/testmkv"
17-
var outputPath = "/data/out/testmp4.mp4"
16+
var inputPath = "/tmp/ffmpeg/nf"
17+
var outputPath = "/tmp/ffmpeg/out/nf.mp4"
1818

1919
trans := new(transcoder.Transcoder)
2020

2121
err := trans.Initialize(inputPath, outputPath)
22-
if err != nil {
23-
return
24-
}
22+
assert.NotNil(t, err)
2523
}
2624

2725
func TestTranscoding3GP(t *testing.T) {
2826

29-
var inputPath = "/data/test3gp"
30-
var outputPath = "/data/testmp4.mp4"
27+
var inputPath = "/tmp/ffmpeg/3gp"
28+
var outputPath = "/tmp/ffmpeg/out/3gp.mp4"
3129

3230
trans := new(transcoder.Transcoder)
3331

3432
err := trans.Initialize(inputPath, outputPath)
35-
if err != nil {
36-
t.Error(err)
37-
return
38-
}
33+
assert.Nil(t, err)
3934

4035
done := trans.Run(false)
4136
err = <-done
42-
if err != nil {
43-
t.Error(err)
44-
return
45-
}
37+
assert.Nil(t, err)
4638
}
4739

4840
func TestTranscodingAVI(t *testing.T) {
4941

50-
var inputPath = "/data/testavi"
51-
var outputPath = "/data/out/testmp4.mp4"
42+
var inputPath = "/tmp/ffmpeg/avi"
43+
var outputPath = "/tmp/ffmpeg/out/avi.mp4"
5244

5345
trans := new(transcoder.Transcoder)
5446

5547
err := trans.Initialize(inputPath, outputPath)
56-
if err != nil {
57-
t.Error(err)
58-
return
59-
}
48+
assert.Nil(t, err)
6049

6150
done := trans.Run(false)
6251
err = <-done
63-
if err != nil {
64-
t.Error(err)
65-
return
66-
}
52+
assert.Nil(t, err)
6753
}
6854

6955
func TestTranscodingFLV(t *testing.T) {
7056

71-
var inputPath = "/data/testflv"
72-
var outputPath = "/data/out/testmp4.mp4"
57+
var inputPath = "/tmp/ffmpeg/flv"
58+
var outputPath = "/tmp/ffmpeg/out/flv.mp4"
7359

7460
trans := new(transcoder.Transcoder)
7561

7662
err := trans.Initialize(inputPath, outputPath)
77-
if err != nil {
78-
t.Error(err)
79-
return
80-
}
63+
assert.Nil(t, err)
8164

8265
done := trans.Run(false)
8366
err = <-done
84-
if err != nil {
85-
t.Error(err)
86-
return
87-
}
67+
assert.Nil(t, err)
8868
}
8969

9070
func TestTranscodingMKV(t *testing.T) {
9171

92-
var inputPath = "/data/testmkv"
93-
var outputPath = "/data/out/testmp4.mp4"
72+
var inputPath = "/tmp/ffmpeg/mkv"
73+
var outputPath = "/tmp/ffmpeg/out/mkv.mp4"
9474

9575
trans := new(transcoder.Transcoder)
9676

9777
err := trans.Initialize(inputPath, outputPath)
98-
if err != nil {
99-
t.Error(err)
100-
return
101-
}
78+
assert.Nil(t, err)
10279

10380
done := trans.Run(false)
10481
err = <-done
105-
if err != nil {
106-
t.Error(err)
107-
return
108-
}
82+
assert.Nil(t, err)
10983
}
11084

11185
func TestTranscodingMOV(t *testing.T) {
11286

113-
var inputPath = "/data/testmov"
114-
var outputPath = "/data/out/testmp4.mp4"
87+
var inputPath = "/tmp/ffmpeg/mov"
88+
var outputPath = "/tmp/ffmpeg/out/mov.mp4"
11589

11690
trans := new(transcoder.Transcoder)
11791

11892
err := trans.Initialize(inputPath, outputPath)
119-
if err != nil {
120-
t.Error(err)
121-
return
122-
}
93+
assert.Nil(t, err)
12394

12495
done := trans.Run(false)
12596
err = <-done
126-
if err != nil {
127-
t.Error(err)
128-
return
129-
}
97+
assert.Nil(t, err)
13098
}
13199

132100
func TestTranscodingMPEG(t *testing.T) {
133101

134-
var inputPath = "/data/testmpeg"
135-
var outputPath = "/data/out/testmp4.mp4"
102+
var inputPath = "/tmp/ffmpeg/mpeg"
103+
var outputPath = "/tmp/ffmpeg/out/mpeg.mp4"
136104

137105
trans := new(transcoder.Transcoder)
138106

139107
err := trans.Initialize(inputPath, outputPath)
140-
if err != nil {
141-
t.Error(err)
142-
return
143-
}
108+
assert.Nil(t, err)
144109

145110
done := trans.Run(false)
146111
err = <-done
147-
if err != nil {
148-
t.Error(err)
149-
return
150-
}
112+
assert.Nil(t, err)
151113
}
152114

153115
func TestTranscodingOGG(t *testing.T) {
154116

155-
var inputPath = "/data/testogg"
156-
var outputPath = "/data/out/testmp4.mp4"
117+
var inputPath = "/tmp/ffmpeg/ogg"
118+
var outputPath = "/tmp/ffmpeg/out/ogg.mp4"
157119

158120
trans := new(transcoder.Transcoder)
159121

160122
err := trans.Initialize(inputPath, outputPath)
161-
if err != nil {
162-
t.Error(err)
163-
return
164-
}
123+
assert.Nil(t, err)
165124

166125
done := trans.Run(false)
167126
err = <-done
168-
if err != nil {
169-
t.Error(err)
170-
return
171-
}
127+
assert.Nil(t, err)
172128
}
173129

174130
func TestTranscodingWAV(t *testing.T) {
175131

176-
var inputPath = "/data/testwav"
177-
var outputPath = "/data/out/testmp4.mp4"
132+
var inputPath = "/tmp/ffmpeg/wav"
133+
var outputPath = "/tmp/ffmpeg/out/wav.mp4"
178134

179135
trans := new(transcoder.Transcoder)
180136

181137
err := trans.Initialize(inputPath, outputPath)
182-
if err != nil {
183-
t.Error(err)
184-
return
185-
}
138+
assert.Nil(t, err)
186139

187140
done := trans.Run(false)
188141
err = <-done
189-
if err != nil {
190-
t.Error(err)
191-
return
192-
}
142+
assert.Nil(t, err)
193143
}
194144

195145
func TestTranscodingWEBM(t *testing.T) {
196146

197-
var inputPath = "/data/testwebm"
198-
var outputPath = "/data/out/testmp4.mp4"
147+
var inputPath = "/tmp/ffmpeg/webm"
148+
var outputPath = "/tmp/ffmpeg/out/webm.mp4"
199149

200150
trans := new(transcoder.Transcoder)
201151

202152
err := trans.Initialize(inputPath, outputPath)
203-
if err != nil {
204-
t.Error(err)
205-
return
206-
}
153+
assert.Nil(t, err)
207154

208155
done := trans.Run(false)
209156
err = <-done
210-
if err != nil {
211-
t.Error(err)
212-
return
213-
}
157+
assert.Nil(t, err)
214158
}
215159

216160
func TestTranscodingWMV(t *testing.T) {
217161

218-
var inputPath = "/data/testwmv"
219-
var outputPath = "/data/out/testmp4.mp4"
162+
var inputPath = "/tmp/ffmpeg/wmv"
163+
var outputPath = "/tmp/ffmpeg/out/wmv.mp4"
220164

221165
trans := new(transcoder.Transcoder)
222166

223167
err := trans.Initialize(inputPath, outputPath)
224-
if err != nil {
225-
t.Error(err)
226-
return
227-
}
168+
assert.Nil(t, err)
228169

229170
done := trans.Run(false)
230171
err = <-done
231-
if err != nil {
232-
t.Error(err)
233-
return
234-
}
172+
assert.Nil(t, err)
235173
}
236174

237175
func TestTranscodingProgress(t *testing.T) {
238176

239-
var inputPath = "/data/testavi"
240-
var outputPath = "/data/out/testmp4.mp4"
177+
var inputPath = "/tmp/ffmpeg/avi"
178+
var outputPath = "/tmp/ffmpeg/out/avi.mp4"
241179

242180
trans := new(transcoder.Transcoder)
243181

244182
err := trans.Initialize(inputPath, outputPath)
245-
if err != nil {
246-
t.Error(err)
247-
return
248-
}
183+
assert.Nil(t, err)
249184

250185
done := trans.Run(true)
251186
for val := range trans.Output() {
@@ -255,14 +190,11 @@ func TestTranscodingProgress(t *testing.T) {
255190
}
256191

257192
err = <-done
258-
if err != nil {
259-
t.Error(err)
260-
return
261-
}
193+
assert.Nil(t, err)
262194
}
263195

264196
func TestTranscodePipes(t *testing.T) {
265-
c1 := exec.Command("cat", "/tmp/data/testmkv")
197+
c1 := exec.Command("cat", "/tmp/ffmpeg/mkv")
266198

267199
trans := new(transcoder.Transcoder)
268200

transcoder/transcoder.go

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -240,24 +240,18 @@ func (t *Transcoder) Run(progress bool) <-chan error {
240240
err = proc.Start()
241241

242242
t.SetProcess(proc)
243+
243244
go func(err error) {
244245
if err != nil {
245246
done <- fmt.Errorf("Failed Start FFMPEG (%s) with %s, message %s %s", command, err, outb.String(), errb.String())
246247
close(done)
247248
return
248249
}
249250

250-
// Run the pipe-in command if it has been set
251-
if t.mediafile.InputPipeCommand() != nil {
252-
if err := t.mediafile.InputPipeCommand().Run(); err != nil {
253-
done <- fmt.Errorf("Failed execution of pipe-in command (%s) with %s", t.mediafile.InputPipeCommand().Args, err)
254-
close(done)
255-
return
256-
}
257-
}
258-
259251
err = proc.Wait()
252+
260253
go t.closePipes()
254+
261255
if err != nil {
262256
err = fmt.Errorf("Failed Finish FFMPEG (%s) with %s message %s %s", command, err, outb.String(), errb.String())
263257
}

0 commit comments

Comments
 (0)