rvideo 0.9.1 → 0.9.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,8 @@
1
+ == 0.9.2 2007-10-30
2
+
3
+ One minor bug fix:
4
+ * Correctly parse invalid files, where duration and bitrate are N/A, but start: 0.000 is included
5
+
1
6
  == 0.9.1 2007-10-11
2
7
 
3
8
  One major enhancement:
@@ -54,7 +54,7 @@ module RVideo # :nodoc:
54
54
 
55
55
  if /Unknown format/i.match(@raw_response) || metadata.nil?
56
56
  @unknown_format = true
57
- elsif /Duration: N\/A, bitrate: N\/A/im.match(@raw_response)
57
+ elsif /Duration: N\/A|bitrate: N\/A/im.match(@raw_response)
58
58
  @unreadable_file = true
59
59
  @raw_metadata = metadata[1] # in this case, we can at least still get the container type
60
60
  else
@@ -2,7 +2,7 @@ module Rvideo #:nodoc:
2
2
  module VERSION #:nodoc:
3
3
  MAJOR = 0
4
4
  MINOR = 9
5
- TINY = 1
5
+ TINY = 2
6
6
 
7
7
  STRING = [MAJOR, MINOR, TINY].join('.')
8
8
  end
@@ -371,4 +371,15 @@ invalid:
371
371
  Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'tmp/results/fancypants-ipod.mp4':
372
372
  Duration: N/A, bitrate: N/A
373
373
  Must supply at least one output file
374
-
374
+ failing_ogg:
375
+ response: |
376
+ FFmpeg version SVN-r10656, Copyright (c) 2000-2007 Fabrice Bellard, et al.
377
+ configuration: --enable-libmp3lame --enable-libogg --enable-libvorbis --enable-liba52 --enable-libxvid --enable-libfaac --enable-libfaad --enable-libx264 --enable-libxvid --enable-pp --enable-shared --enable-gpl --enable-libtheora --enable-libfaadbin --enable-liba52bin --enable-libamr_nb --enable-libamr_wb --extra-ldflags=-L/usr/local/ffmpeg-src/ffmpeg/libavcodec/acfr16/ --extra-libs=-lacfr --enable-libacfr16
378
+ libavutil version: 49.5.0
379
+ libavcodec version: 51.44.0
380
+ libavformat version: 51.14.0
381
+ built on Oct 30 2007 15:33:08, gcc: 4.1.2 (Ubuntu 4.1.2-0ubuntu4)
382
+ Input #0, ogg, from 'tmp/37/PodcastPeople___Make_every_Podcast_Count__sweeper-19530.ogg':
383
+ Duration: N/A, start: 0.000000, bitrate: N/A
384
+ Stream #0.0: Audio: vorbis, 44100 Hz, stereo
385
+ Must supply at least one output file
@@ -358,4 +358,4 @@ text:
358
358
  libavcodec version: 51.9.0
359
359
  libavformat version: 50.4.0
360
360
  built on Apr 15 2006 04:58:19, gcc: 4.0.1 (Apple Computer, Inc. build 5250)
361
- TODO: Unknown format
361
+ TODO: Unknown format
@@ -3,196 +3,196 @@ require File.dirname(__FILE__) + '/../spec_helper'
3
3
  module RVideo
4
4
  context "Using various builds of ffmpeg, RVideo should properly inspect" do
5
5
  specify "a cell-phone MP4 file" do
6
- @file = Inspector.new(:raw_response => files(:kites))
7
- @file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
8
- @file.raw_duration.should == "00:00:19.6"
9
- @file.duration.should == 19600
10
- @file.bitrate.should == 98
11
- @file.bitrate_units.should == "kb/s"
12
- @file.audio_stream_id.should == "#0.1"
13
- @file.audio_codec.should == "samr / 0x726D6173"
14
- @file.audio_sample_rate.should == 8000
15
- @file.audio_sample_units.should == "Hz"
16
- @file.audio_channels_string.should == "mono"
17
- @file.video_codec.should == "mpeg4"
18
- @file.video_stream_id.should == "#0.0"
19
- @file.video_colorspace.should == "yuv420p"
20
- @file.width.should == 176
21
- @file.height.should == 144
22
- @file.fps.should == "10.00"
6
+ file = Inspector.new(:raw_response => files(:kites))
7
+ file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
8
+ file.raw_duration.should == "00:00:19.6"
9
+ file.duration.should == 19600
10
+ file.bitrate.should == 98
11
+ file.bitrate_units.should == "kb/s"
12
+ file.audio_stream_id.should == "#0.1"
13
+ file.audio_codec.should == "samr / 0x726D6173"
14
+ file.audio_sample_rate.should == 8000
15
+ file.audio_sample_units.should == "Hz"
16
+ file.audio_channels_string.should == "mono"
17
+ file.video_codec.should == "mpeg4"
18
+ file.video_stream_id.should == "#0.0"
19
+ file.video_colorspace.should == "yuv420p"
20
+ file.width.should == 176
21
+ file.height.should == 144
22
+ file.fps.should == "10.00"
23
23
  end
24
24
 
25
25
  specify "fancypants" do
26
- @file = Inspector.new(:raw_response => files(:fancypants))
27
- @file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
28
- @file.raw_duration.should == "00:00:35.4"
29
- @file.duration.should == 35400
30
- @file.bitrate.should == 1980
31
- @file.bitrate_units.should == "kb/s"
32
- @file.audio_stream_id.should == "#0.1"
33
- @file.audio_codec.should == "aac"
34
- @file.audio_sample_rate.should == 44100
35
- @file.audio_sample_units.should == "Hz"
36
- @file.audio_channels_string.should == "stereo"
37
- @file.video_codec.should == "h264"
38
- @file.video_stream_id.should == "#0.0"
39
- @file.video_colorspace.should == "yuv420p"
40
- @file.width.should == 720
41
- @file.height.should == 400
42
- @file.fps.should == "23.98"
26
+ file = Inspector.new(:raw_response => files(:fancypants))
27
+ file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
28
+ file.raw_duration.should == "00:00:35.4"
29
+ file.duration.should == 35400
30
+ file.bitrate.should == 1980
31
+ file.bitrate_units.should == "kb/s"
32
+ file.audio_stream_id.should == "#0.1"
33
+ file.audio_codec.should == "aac"
34
+ file.audio_sample_rate.should == 44100
35
+ file.audio_sample_units.should == "Hz"
36
+ file.audio_channels_string.should == "stereo"
37
+ file.video_codec.should == "h264"
38
+ file.video_stream_id.should == "#0.0"
39
+ file.video_colorspace.should == "yuv420p"
40
+ file.width.should == 720
41
+ file.height.should == 400
42
+ file.fps.should == "23.98"
43
43
  end
44
44
 
45
45
  specify "mpeg4/xvid" do
46
- @file = Inspector.new(:raw_response => files(:chainsaw))
47
- @file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
48
- @file.raw_duration.should == "00:01:09.5"
49
- @file.duration.should == 69500
50
- @file.bitrate.should == 970
51
- @file.bitrate_units.should == "kb/s"
52
- @file.audio_stream_id.should == "#0.1"
53
- @file.audio_codec.should == "mp2"
54
- @file.audio_sample_rate.should == 48000
55
- @file.audio_sample_units.should == "Hz"
56
- @file.audio_channels_string.should == "stereo"
57
- @file.video_codec.should == "mpeg4"
58
- @file.video_stream_id.should == "#0.0"
59
- @file.video_colorspace.should == "yuv420p"
60
- @file.width.should == 624
61
- @file.height.should == 352
62
- @file.fps.should == "23.98"
46
+ file = Inspector.new(:raw_response => files(:chainsaw))
47
+ file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
48
+ file.raw_duration.should == "00:01:09.5"
49
+ file.duration.should == 69500
50
+ file.bitrate.should == 970
51
+ file.bitrate_units.should == "kb/s"
52
+ file.audio_stream_id.should == "#0.1"
53
+ file.audio_codec.should == "mp2"
54
+ file.audio_sample_rate.should == 48000
55
+ file.audio_sample_units.should == "Hz"
56
+ file.audio_channels_string.should == "stereo"
57
+ file.video_codec.should == "mpeg4"
58
+ file.video_stream_id.should == "#0.0"
59
+ file.video_colorspace.should == "yuv420p"
60
+ file.width.should == 624
61
+ file.height.should == 352
62
+ file.fps.should == "23.98"
63
63
  end
64
64
 
65
65
  specify "mpeg1" do
66
- @file = Inspector.new(:raw_response => files(:mpeg1_957))
67
- @file.container.should == "mpeg"
68
- @file.raw_duration.should == "00:00:22.6"
69
- @file.duration.should == 22600
70
- @file.bitrate.should == 808
71
- @file.bitrate_units.should == "kb/s"
72
- @file.audio_stream_id.should == "#0.0"
73
- @file.audio_codec.should == "mp2"
74
- @file.audio_sample_rate.should == 32000
75
- @file.audio_sample_units.should == "Hz"
76
- @file.audio_channels_string.should == "mono"
77
- @file.video_codec.should == "mpeg1video"
78
- @file.video_stream_id.should == "#0.1"
79
- @file.video_colorspace.should == "yuv420p"
80
- @file.width.should == 320
81
- @file.height.should == 240
82
- @file.fps.should == "25.00"
66
+ file = Inspector.new(:raw_response => files(:mpeg1_957))
67
+ file.container.should == "mpeg"
68
+ file.raw_duration.should == "00:00:22.6"
69
+ file.duration.should == 22600
70
+ file.bitrate.should == 808
71
+ file.bitrate_units.should == "kb/s"
72
+ file.audio_stream_id.should == "#0.0"
73
+ file.audio_codec.should == "mp2"
74
+ file.audio_sample_rate.should == 32000
75
+ file.audio_sample_units.should == "Hz"
76
+ file.audio_channels_string.should == "mono"
77
+ file.video_codec.should == "mpeg1video"
78
+ file.video_stream_id.should == "#0.1"
79
+ file.video_colorspace.should == "yuv420p"
80
+ file.width.should == 320
81
+ file.height.should == 240
82
+ file.fps.should == "25.00"
83
83
  end
84
84
 
85
85
  specify "avi/mpeg4/mp3" do
86
- @file = Inspector.new(:raw_response => files(:buffy))
87
- @file.container.should == "avi"
88
- @file.raw_duration.should == "00:43:25.3"
89
- @file.duration.should == 2605300
90
- @file.bitrate.should == 1266
91
- @file.bitrate_units.should == "kb/s"
92
- @file.audio_stream_id.should == "#0.1"
93
- @file.audio_codec.should == "mp3"
94
- @file.audio_sample_rate.should == 48000
95
- @file.audio_sample_units.should == "Hz"
96
- @file.audio_channels_string.should == "stereo"
97
- @file.video_codec.should == "mpeg4"
98
- @file.video_stream_id.should == "#0.0"
99
- @file.video_colorspace.should == "yuv420p"
100
- @file.width.should == 640
101
- @file.height.should == 464
102
- @file.fps.should == "23.98"
86
+ file = Inspector.new(:raw_response => files(:buffy))
87
+ file.container.should == "avi"
88
+ file.raw_duration.should == "00:43:25.3"
89
+ file.duration.should == 2605300
90
+ file.bitrate.should == 1266
91
+ file.bitrate_units.should == "kb/s"
92
+ file.audio_stream_id.should == "#0.1"
93
+ file.audio_codec.should == "mp3"
94
+ file.audio_sample_rate.should == 48000
95
+ file.audio_sample_units.should == "Hz"
96
+ file.audio_channels_string.should == "stereo"
97
+ file.video_codec.should == "mpeg4"
98
+ file.video_stream_id.should == "#0.0"
99
+ file.video_colorspace.should == "yuv420p"
100
+ file.width.should == 640
101
+ file.height.should == 464
102
+ file.fps.should == "23.98"
103
103
  end
104
104
 
105
105
  specify "HD mpeg2" do
106
- @file = Inspector.new(:raw_response => files(:chairprank))
107
- @file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
108
- @file.raw_duration.should == "00:00:36.6"
109
- @file.duration.should == 36600
110
- @file.bitrate.should == 26602
111
- @file.bitrate_units.should == "kb/s"
112
- @file.audio_stream_id.should == "#0.0"
113
- @file.audio_codec.should == "pcm_s16le"
114
- @file.audio_sample_rate.should == 48000
115
- @file.audio_sample_units.should == "Hz"
116
- @file.audio_channels_string.should == "stereo"
117
- @file.video_codec.should == "mpeg2video"
118
- @file.video_stream_id.should == "#0.1"
119
- @file.video_colorspace.should == "yuv420p"
120
- @file.width.should == 1440
121
- @file.height.should == 1080
122
- @file.fps.should == "29.97"
106
+ file = Inspector.new(:raw_response => files(:chairprank))
107
+ file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
108
+ file.raw_duration.should == "00:00:36.6"
109
+ file.duration.should == 36600
110
+ file.bitrate.should == 26602
111
+ file.bitrate_units.should == "kb/s"
112
+ file.audio_stream_id.should == "#0.0"
113
+ file.audio_codec.should == "pcm_s16le"
114
+ file.audio_sample_rate.should == 48000
115
+ file.audio_sample_units.should == "Hz"
116
+ file.audio_channels_string.should == "stereo"
117
+ file.video_codec.should == "mpeg2video"
118
+ file.video_stream_id.should == "#0.1"
119
+ file.video_colorspace.should == "yuv420p"
120
+ file.width.should == 1440
121
+ file.height.should == 1080
122
+ file.fps.should == "29.97"
123
123
  end
124
124
 
125
125
  specify "h264 (1)" do
126
- @file = Inspector.new(:raw_response => files(:fire_short))
127
- @file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
128
- @file.raw_duration.should == "00:00:10.0"
129
- @file.duration.should == 10000
130
- @file.bitrate.should == 23232
131
- @file.bitrate_units.should == "kb/s"
132
- @file.audio_stream_id.should == "#0.0"
133
- @file.audio_codec.should == "pcm_s16le"
134
- @file.audio_sample_rate.should == 48000
135
- @file.audio_sample_units.should == "Hz"
136
- @file.audio_channels_string.should == "stereo"
137
- @file.video_codec.should == "h264"
138
- @file.video_stream_id.should == "#0.1"
139
- @file.video_colorspace.should == "yuv420p"
140
- @file.width.should == 1280
141
- @file.height.should == 720
142
- @file.fps.should == "29.97"
126
+ file = Inspector.new(:raw_response => files(:fire_short))
127
+ file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
128
+ file.raw_duration.should == "00:00:10.0"
129
+ file.duration.should == 10000
130
+ file.bitrate.should == 23232
131
+ file.bitrate_units.should == "kb/s"
132
+ file.audio_stream_id.should == "#0.0"
133
+ file.audio_codec.should == "pcm_s16le"
134
+ file.audio_sample_rate.should == 48000
135
+ file.audio_sample_units.should == "Hz"
136
+ file.audio_channels_string.should == "stereo"
137
+ file.video_codec.should == "h264"
138
+ file.video_stream_id.should == "#0.1"
139
+ file.video_colorspace.should == "yuv420p"
140
+ file.width.should == 1280
141
+ file.height.should == 720
142
+ file.fps.should == "29.97"
143
143
  end
144
144
 
145
145
  specify "h264 video only" do
146
- @file = Inspector.new(:raw_response => files(:fire_video_only))
147
- @file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
148
- @file.raw_duration.should == "00:00:10.0"
149
- @file.duration.should == 10000
150
- @file.bitrate.should == 506
151
- @file.bitrate_units.should == "kb/s"
152
- @file.audio?.should == false
153
- @file.audio_codec.should == nil
154
- @file.video_codec.should == "h264"
155
- @file.video_stream_id.should == "#0.0"
156
- @file.video_colorspace.should == "yuv420p"
157
- @file.width.should == 320
158
- @file.height.should == 180
159
- @file.fps.should == "29.97"
146
+ file = Inspector.new(:raw_response => files(:fire_video_only))
147
+ file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
148
+ file.raw_duration.should == "00:00:10.0"
149
+ file.duration.should == 10000
150
+ file.bitrate.should == 506
151
+ file.bitrate_units.should == "kb/s"
152
+ file.audio?.should == false
153
+ file.audio_codec.should == nil
154
+ file.video_codec.should == "h264"
155
+ file.video_stream_id.should == "#0.0"
156
+ file.video_colorspace.should == "yuv420p"
157
+ file.width.should == 320
158
+ file.height.should == 180
159
+ file.fps.should == "29.97"
160
160
  end
161
161
 
162
162
  specify "aac audio only" do
163
- @file = Inspector.new(:raw_response => files(:fire_audio_only))
164
- @file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
165
- @file.raw_duration.should == "00:00:10.0"
166
- @file.duration.should == 10000
167
- @file.bitrate.should == 86
168
- @file.bitrate_units.should == "kb/s"
169
- @file.audio_stream_id.should == "#0.0"
170
- @file.audio_codec.should == "aac"
171
- @file.audio_sample_rate.should == 48000
172
- @file.audio_sample_units.should == "Hz"
173
- @file.audio_channels_string.should == "stereo"
174
- @file.video?.should == false
175
- @file.video_codec.should be_nil
163
+ file = Inspector.new(:raw_response => files(:fire_audio_only))
164
+ file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
165
+ file.raw_duration.should == "00:00:10.0"
166
+ file.duration.should == 10000
167
+ file.bitrate.should == 86
168
+ file.bitrate_units.should == "kb/s"
169
+ file.audio_stream_id.should == "#0.0"
170
+ file.audio_codec.should == "aac"
171
+ file.audio_sample_rate.should == 48000
172
+ file.audio_sample_units.should == "Hz"
173
+ file.audio_channels_string.should == "stereo"
174
+ file.video?.should == false
175
+ file.video_codec.should be_nil
176
176
  end
177
177
 
178
178
  specify "apple intermediate" do
179
- @file = Inspector.new(:raw_response => files(:fireproof))
180
- @file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
181
- @file.raw_duration.should == "00:00:18.7"
182
- @file.duration.should == 18700
183
- @file.bitrate.should == 24281
184
- @file.bitrate_units.should == "kb/s"
185
- @file.audio_stream_id.should == "#0.0"
186
- @file.audio_codec.should == "pcm_s16be"
187
- @file.audio_sample_rate.should == 48000
188
- @file.audio_sample_units.should == "Hz"
189
- @file.audio_channels_string.should == "mono"
190
- @file.video_codec.should == "Apple Intermediate Codec"
191
- @file.video_stream_id.should == "#0.1"
192
- @file.video_colorspace.should == nil
193
- @file.width.should == 1280
194
- @file.height.should == 720
195
- @file.fps.should == "600.00" # this is a known FFMPEG problem
179
+ file = Inspector.new(:raw_response => files(:fireproof))
180
+ file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
181
+ file.raw_duration.should == "00:00:18.7"
182
+ file.duration.should == 18700
183
+ file.bitrate.should == 24281
184
+ file.bitrate_units.should == "kb/s"
185
+ file.audio_stream_id.should == "#0.0"
186
+ file.audio_codec.should == "pcm_s16be"
187
+ file.audio_sample_rate.should == 48000
188
+ file.audio_sample_units.should == "Hz"
189
+ file.audio_channels_string.should == "mono"
190
+ file.video_codec.should == "Apple Intermediate Codec"
191
+ file.video_stream_id.should == "#0.1"
192
+ file.video_colorspace.should == nil
193
+ file.width.should == 1280
194
+ file.height.should == 720
195
+ file.fps.should == "600.00" # this is a known FFMPEG problem
196
196
  end
197
197
 
198
198
  specify "dv video" do
@@ -244,44 +244,52 @@ module RVideo
244
244
  end
245
245
 
246
246
  specify "audio only mp3" do
247
- @file = Inspector.new(:raw_response => files(:duck))
248
- @file.container.should == "mp3"
249
- @file.raw_duration.should == "00:02:03.0"
250
- @file.duration.should == 123000
251
- @file.bitrate.should == 128
252
- @file.bitrate_units.should == "kb/s"
253
- @file.audio_stream_id.should == "#0.0"
254
- @file.audio_codec.should == "mp3"
255
- @file.audio_sample_rate.should == 44100
256
- @file.audio_sample_units.should == "Hz"
257
- @file.audio_channels_string.should == "stereo"
258
- @file.audio?.should == true
259
- @file.video?.should == false
247
+ file = Inspector.new(:raw_response => files(:duck))
248
+ file.container.should == "mp3"
249
+ file.raw_duration.should == "00:02:03.0"
250
+ file.duration.should == 123000
251
+ file.bitrate.should == 128
252
+ file.bitrate_units.should == "kb/s"
253
+ file.audio_stream_id.should == "#0.0"
254
+ file.audio_codec.should == "mp3"
255
+ file.audio_sample_rate.should == 44100
256
+ file.audio_sample_units.should == "Hz"
257
+ file.audio_channels_string.should == "stereo"
258
+ file.audio?.should == true
259
+ file.video?.should == false
260
260
  end
261
261
 
262
262
  specify "audio only aac" do
263
- @file = Inspector.new(:raw_response => files(:eiffel))
264
- @file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
265
- @file.raw_duration.should == "00:02:50.3"
266
- @file.duration.should == 170300
267
- @file.bitrate.should == 162
268
- @file.bitrate_units.should == "kb/s"
269
- @file.audio_stream_id.should == "#0.0"
270
- @file.audio_codec.should == "aac"
271
- @file.audio_sample_rate.should == 44100
272
- @file.audio_sample_units.should == "Hz"
273
- @file.audio_channels_string.should == "stereo"
274
- @file.audio?.should == true
275
- @file.video?.should == false
263
+ file = Inspector.new(:raw_response => files(:eiffel))
264
+ file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
265
+ file.raw_duration.should == "00:02:50.3"
266
+ file.duration.should == 170300
267
+ file.bitrate.should == 162
268
+ file.bitrate_units.should == "kb/s"
269
+ file.audio_stream_id.should == "#0.0"
270
+ file.audio_codec.should == "aac"
271
+ file.audio_sample_rate.should == 44100
272
+ file.audio_sample_units.should == "Hz"
273
+ file.audio_channels_string.should == "stereo"
274
+ file.audio?.should == true
275
+ file.video?.should == false
276
276
  end
277
277
 
278
278
  specify "invalid file" do
279
- @file = Inspector.new(:raw_response => files(:invalid))
280
- @file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
281
- @file.raw_duration.should be_nil
282
- @file.valid?.should be_false
283
- @file.unknown_format?.should be_false
284
- @file.unreadable_file?.should be_true
279
+ file = Inspector.new(:raw_response => files(:invalid))
280
+ file.container.should == "mov,mp4,m4a,3gp,3g2,mj2"
281
+ file.raw_duration.should be_nil
282
+ file.valid?.should be_false
283
+ file.unknown_format?.should be_false
284
+ file.unreadable_file?.should be_true
285
285
  end
286
+
287
+ specify "failing mp3 file" do
288
+ file = Inspector.new(:raw_response => files(:failing_ogg))
289
+ file.raw_duration.should be_nil
290
+ file.invalid?.should be_true
291
+ file.unknown_format?.should be_false
292
+ file.unreadable_file?.should be_true
293
+ end
286
294
  end
287
295
  end
@@ -37,5 +37,13 @@ module RVideo
37
37
  file.ffmpeg_build.should == "built on Apr 15 2006 04:58:19, gcc: 4.0.1 (Apple Computer, Inc. build 5250)"
38
38
  file.raw_metadata.should =~ /^Input #/
39
39
  end
40
+
41
+ it "should handle '\n' newline characters" do
42
+ raw_response = "FFmpeg version SVN-r10656, Copyright (c) 2000-2007 Fabrice Bellard, et al.\n configuration: --enable-libmp3lame --enable-libogg --enable-libvorbis --enable-liba52 --enable-libxvid --enable-libfaac --enable-libfaad --enable-libx264 --enable-libxvid --enable-pp --enable-shared --enable-gpl --enable-libtheora --enable-libfaadbin --enable-liba52bin --enable-libamr_nb --enable-libamr_wb --enable-libacfr16 --extra-ldflags=-L/root/src/ffmpeg/libavcodec/acfr16/ --extra-libs=-lacfr\n libavutil version: 49.5.0\n libavcodec version: 51.44.0\n libavformat version: 51.14.0\n built on Oct 9 2007 18:53:49, gcc: 4.1.2 (Ubuntu 4.1.2-0ubuntu4)\nInput #0, mp3, from '/mnt/app/worker/tmp/2112/2007-07-29_11AM.mp3':\n Duration: 00:22:09.2, bitrate: 80 kb/s\n Stream #0.0: Audio: mp3, 22050 Hz, stereo, 80 kb/s\nMust supply at least one output file\n"
43
+
44
+ file = Inspector.new(:raw_response => raw_response)
45
+ file.ffmpeg_version.should == "SVN-r10656"
46
+ file.audio_codec.should == "mp3"
47
+ end
40
48
  end
41
49
  end
@@ -30,12 +30,12 @@
30
30
  <body>
31
31
  <div id="main">
32
32
  <div style="text-align:right">
33
- <a href="http://rvideo.rubyforge.org/rdoc">Documentation</a> | <a href="http://spinoza.tv">Spinoza</a> | <a href="http://railspikes.com">Blog</a> | <a href="http://groups.google.com/group/rvideo">Group</a>
33
+ <a href="http://rvideo.rubyforge.org/rdoc">Documentation</a> | <a href="http://zencoder.tv">Zencoder</a> | <a href="http://railspikes.com">Blog</a> | <a href="http://groups.google.com/group/rvideo">Group</a>
34
34
  </div>
35
35
  <h1>Ruby Video Processing</h1>
36
36
  <div id="version" class="clickable" onclick='document.location = "http://rubyforge.org/projects/rvideo"; return false'>
37
37
  <p>Get Version</p>
38
- <a href="http://rubyforge.org/projects/rvideo" class="numbers">0.9.1</a>
38
+ <a href="http://rubyforge.org/projects/rvideo" class="numbers">0.9.2</a>
39
39
  </div>
40
40
  <h1>&#x2192; &#8216;rvideo&#8217;</h1>
41
41
 
@@ -191,10 +191,10 @@ do.</p>
191
191
  <p><a href="http://groups.google.com/group/rvideo">http://groups.google.com/group/rvideo</a></p>
192
192
 
193
193
 
194
- <h2>Spinoza (Shameless Plug)</h2>
194
+ <h2>Zencoder (Shameless Plug)</h2>
195
195
 
196
196
 
197
- <p>Spinoza is a commercial video transcoder built by Slantwise Design. Spinoza uses RVideo for its video processing, but adds file queuing, distributed transcoding, a web-based transcoder dashboard, and more. See <a href="http://spinoza.tv">http://spinoza.tv</a> or <a href="http://slantwisedesign.com">http://slantwisedesign.com</a> for more.</p>
197
+ <p>Zencoder is a commercial video transcoder built by Slantwise Design. Zencoder uses RVideo for its video processing, but adds file queuing, distributed transcoding, a web-based transcoder dashboard, and more. See <a href="http://zencoder.tv">http://zencoder.tv</a> or <a href="http://slantwisedesign.com">http://slantwisedesign.com</a> for more.</p>
198
198
 
199
199
 
200
200
  <h2>License</h2>
@@ -208,7 +208,7 @@ do.</p>
208
208
 
209
209
  <p>Comments are welcome. Send an email to Jonathan Dahl at jon [at] slantwisedesign.</p>
210
210
  <p class="coda">
211
- Page created with newgem by <a href="mailto:drnicwilliams@gmail.com">Dr Nic</a>, 11th October 2007<br>
211
+ Page created with newgem by <a href="mailto:drnicwilliams@gmail.com">Dr Nic</a>, 30th October 2007<br>
212
212
  Theme extended from <a href="http://rb2js.rubyforge.org/">Paul Battley</a>
213
213
  </p>
214
214
  </div>
@@ -129,9 +129,9 @@ h2. Forum
129
129
 
130
130
  "http://groups.google.com/group/rvideo":http://groups.google.com/group/rvideo
131
131
 
132
- h2. Spinoza (Shameless Plug)
132
+ h2. Zencoder (Shameless Plug)
133
133
 
134
- Spinoza is a commercial video transcoder built by Slantwise Design. Spinoza uses RVideo for its video processing, but adds file queuing, distributed transcoding, a web-based transcoder dashboard, and more. See "http://spinoza.tv":http://spinoza.tv or "http://slantwisedesign.com":http://slantwisedesign.com for more.
134
+ Zencoder is a commercial video transcoder built by Slantwise Design. Zencoder uses RVideo for its video processing, but adds file queuing, distributed transcoding, a web-based transcoder dashboard, and more. See "http://zencoder.tv":http://zencoder.tv or "http://slantwisedesign.com":http://slantwisedesign.com for more.
135
135
 
136
136
  h2. License
137
137
 
metadata CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.0
3
3
  specification_version: 1
4
4
  name: rvideo
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.9.1
7
- date: 2007-10-11 00:00:00 -05:00
6
+ version: 0.9.2
7
+ date: 2007-10-30 00:00:00 -05:00
8
8
  summary: Inspect and process video or audio files
9
9
  require_paths:
10
10
  - lib