ffprober 0.2.3 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b29847084d8dbc8e10c2c4193b5957a6fcf08af9
4
- data.tar.gz: 9fe8c79d5a88d4c4a5cf740e98ba55081b9c83ac
3
+ metadata.gz: 601137d7c5b4608a87e94ee51eecf53b14feed41
4
+ data.tar.gz: 95281fcb4d95afa5c26624689d49be75c362ce94
5
5
  SHA512:
6
- metadata.gz: 72b340b1bbf4e915a1bcfb4dc6d6c10d99aefd74054e2f4a789607db5e8492950e9d2712d6739963c9e4583ac440e5c21c16a44d666f6e500fc227bd195cfbba
7
- data.tar.gz: 421320686370ba7698fd688312fed908a3d1f10c63be8abcb734de04561bcfef42682dd564299e29e7c69041984cf5514e44ca04f92102f57dca06d0d55f3b4f
6
+ metadata.gz: 82193fa36d33469563bcda19253d32f8df70f8423c169c0799da6da6ca86993af6d20134caf31122736e5aa7ba8dd9e0e7ba0df1de9f28ad1463b36a3f096ed1
7
+ data.tar.gz: 4d07d14c7ad89713b97c3cc9b62d3893e6d3e06b11620a5993b61f23a59d65ae766bdfd61326bbae0887d1ad30ced8d3a5cb4a8b30aad84a7c52fcd211262b6e
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.0.0-p0
1
+ 2.0.0-p195
data/Changes.md ADDED
@@ -0,0 +1,68 @@
1
+ unrelaesed
2
+ -----------
3
+ - correctly detect ffprobe path on windows
4
+ - correctly detect avprobe
5
+ - detect nighlt builds
6
+ - refactor ffprobe version detection (+spec)
7
+
8
+ 0.2.3
9
+ -----------
10
+ - Raise error if input file is invalid (InvalidInputFileError)
11
+ - Added support for Ffmpeg 1.1.4 and 1.2.1
12
+
13
+ 0.2.2
14
+ -----------
15
+ - Added Caching to instantiated Stream Objects
16
+ - Switched from attr_reader to of attr_accessor in stream classes
17
+
18
+ 0.2.1
19
+ -----------
20
+ - Refactored Ffmpeg version check
21
+ - Convert to ruby 1.9 hash syntax
22
+ - Bumped minmun required ruby version to 1.9.3
23
+ - JSON input will be parsed lazily
24
+ - Moved Ffprobe path finder into Ffprober Module
25
+
26
+ 0.2.0
27
+ -----------
28
+ - Droped ruby 1.8 support
29
+ - Switched from multi_json to json
30
+ - Updated travis config
31
+
32
+ 0.1.7
33
+ -----------
34
+ - Added support for Ffmpeg 1.1.4 and 1.2
35
+
36
+ 0.1.6
37
+ -----------
38
+ - added bit rate attribute to video stream
39
+ - Added support for Ffmpeg 1.1.3
40
+
41
+ 0.1.5
42
+ -----------
43
+ - Added support for Ffmpeg 1.1.2
44
+
45
+ 0.1.4
46
+ -----------
47
+ - Added support for Ffmpeg 1.1.1
48
+ - Bumped rake dependency to 0.10
49
+
50
+ 0.1.3
51
+ -----------
52
+ - Added support for Ffmpeg 1.1 and 1.0.1
53
+
54
+ 0.1.1
55
+ -----------
56
+ - Added support for Ffmpeg 1.0
57
+ - Added tests for ffmpeg version checker
58
+ - Updated README
59
+
60
+ 0.1.0
61
+ -----------
62
+ - Added missing License to README
63
+ - Improved Ffmpeg version detection
64
+ - Updated README
65
+
66
+ 0.0.2
67
+ -----------
68
+ - first working version (supports Ffmpeg 0.10.2)
data/README.md CHANGED
@@ -33,12 +33,25 @@ according to [ffmpeg changelog](http://git.videolan.org/?p=ffmpeg.git;a=blob_pla
33
33
 
34
34
  [ffprobe documentation](http://www.ffmpeg.org/ffprobe.html)
35
35
 
36
+ ## Improve FFMPEG version detection
37
+
38
+ help me collecting various version outputs of fprobe/ffmpeg
39
+
40
+ 1. run `ffprobe -version` on your system
41
+ 2. open an issue and send the output to me along with the expected version
42
+ 3. profit
43
+
36
44
  ## Supported Rubies
37
45
 
38
46
  Ffprober is tested under 1.9.3, 2.0, JRuby (1.9mode) and Rubinius (1.9mode) and ruby-head.
39
47
 
40
48
  [![Build Status](https://secure.travis-ci.org/beanieboi/ffprober.png?branch=master)](http://travis-ci.org/beanieboi/ffprober)
41
49
 
50
+ ## Contributors
51
+
52
+ - Michael B. Kulik
53
+ - rmoriz
54
+
42
55
  ## Contributing
43
56
 
44
57
  1. Fork it
@@ -1,21 +1,40 @@
1
1
  module Ffprober
2
2
  class FfprobeVersion
3
- @@version_regex = /^ffprobe version (\d+)\.?(\d+)\.?(|\d+)$/
3
+ @@version_regex = /^(ffprobe|avprobe|ffmpeg) version (\d+)\.?(\d+)\.?(\d+)*/
4
+ @@nightly_regex = /^(ffprobe|avprobe|ffmpeg) version N-/
4
5
 
5
6
  MIN_VERSION = Gem::Version.new("0.9.0")
6
7
  MAX_VERSION = Gem::Version.new("1.2.1")
7
8
 
8
9
  def self.valid?
9
- MIN_VERSION <= parsed_version && parsed_version <= MAX_VERSION
10
+ self.new.valid?
10
11
  end
11
12
 
12
- def self.parsed_version
13
- version = `#{Ffprober.path} -version`.match(@@version_regex)
14
- raise Errno::ENOENT if version.nil?
15
- major, minor, patch = version[1].to_i, version[2].to_i, version[3].to_i
16
- Gem::Version.new([major, minor, patch].join("."))
17
- rescue Errno::ENOENT => e
18
- Gem::Version.new("0.0.0")
13
+ def valid?
14
+ nightly? || (MIN_VERSION <= version && version <= MAX_VERSION)
15
+ end
16
+
17
+ def parse_version
18
+ @parse_version ||= begin
19
+ _p = version_output.match(@@version_regex)
20
+ if _p.nil?
21
+ [0, 0, 0]
22
+ else
23
+ [_p[2].to_i, _p[3].to_i, _p[4].to_i]
24
+ end
25
+ end
26
+ end
27
+
28
+ def version
29
+ @version ||= Gem::Version.new(parse_version.join("."))
30
+ end
31
+
32
+ def nightly?
33
+ !!(version_output =~ @@nightly_regex)
34
+ end
35
+
36
+ def version_output
37
+ @version_output ||= `#{Ffprober.path} -version`
19
38
  end
20
39
  end
21
40
  end
@@ -1,3 +1,3 @@
1
1
  module Ffprober
2
- VERSION = "0.2.3"
2
+ VERSION = "0.3.0"
3
3
  end
data/lib/ffprober.rb CHANGED
@@ -10,15 +10,17 @@ require "json"
10
10
  module Ffprober
11
11
  def self.path
12
12
  name = 'ffprobe'
13
+ name << '.exe' if self.windows?
13
14
 
14
- if File.executable? name
15
- cmd
16
- else
17
- path = ENV['PATH'].split(File::PATH_SEPARATOR).find { |path|
18
- File.executable? File.join(path, name)
19
- }
20
- path && File.expand_path(name, path)
15
+ path = ENV['PATH'].split(File::PATH_SEPARATOR).find do |path|
16
+ File.executable?(File.join(path, name))
21
17
  end
18
+
19
+ path && File.expand_path(name, path)
20
+ end
21
+
22
+ def self.windows?
23
+ !!(RUBY_PLATFORM =~ /(mingw|mswin)/)
22
24
  end
23
25
 
24
26
  class InvalidInputFileError < ::StandardError; end
@@ -0,0 +1,11 @@
1
+ ffprobe version 1.0
2
+ built on May 18 2013 15:54:36 with Apple LLVM version 4.2 (clang-425.0.28) (based on LLVM 3.2svn)
3
+ configuration: --prefix=/usr/local/Cellar/ffmpeg/1.2.1 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-avresample --enable-vda --cc=cc --host-cflags= --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid
4
+ libavutil 52. 18.100 / 52. 18.100
5
+ libavcodec 54. 92.100 / 54. 92.100
6
+ libavformat 54. 63.104 / 54. 63.104
7
+ libavdevice 54. 3.103 / 54. 3.103
8
+ libavfilter 3. 42.103 / 3. 42.103
9
+ libswscale 2. 2.100 / 2. 2.100
10
+ libswresample 0. 17.102 / 0. 17.102
11
+ libpostproc 52. 2.100 / 52. 2.100
@@ -0,0 +1,11 @@
1
+ ffprobe version 1.2.0
2
+ built on May 18 2013 15:54:36 with Apple LLVM version 4.2 (clang-425.0.28) (based on LLVM 3.2svn)
3
+ configuration: --prefix=/usr/local/Cellar/ffmpeg/1.2.1 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-avresample --enable-vda --cc=cc --host-cflags= --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid
4
+ libavutil 52. 18.100 / 52. 18.100
5
+ libavcodec 54. 92.100 / 54. 92.100
6
+ libavformat 54. 63.104 / 54. 63.104
7
+ libavdevice 54. 3.103 / 54. 3.103
8
+ libavfilter 3. 42.103 / 3. 42.103
9
+ libswscale 2. 2.100 / 2. 2.100
10
+ libswresample 0. 17.102 / 0. 17.102
11
+ libpostproc 52. 2.100 / 52. 2.100
@@ -0,0 +1,10 @@
1
+ avprobe version 0.8.6-6:0.8.6-1+rpi1, Copyright (c) 2007-2013 the Libav developers
2
+ built on Mar 31 2013 13:58:10 with gcc 4.6.3
3
+ avprobe 0.8.6-6:0.8.6-1+rpi1
4
+ libavutil 51. 22. 1 / 51. 22. 1
5
+ libavcodec 53. 35. 0 / 53. 35. 0
6
+ libavformat 53. 21. 1 / 53. 21. 1
7
+ libavdevice 53. 2. 0 / 53. 2. 0
8
+ libavfilter 2. 15. 0 / 2. 15. 0
9
+ libswscale 2. 1. 0 / 2. 1. 0
10
+ libpostproc 52. 0. 0 / 52. 0. 0
@@ -0,0 +1,11 @@
1
+ ffprobe version 0.10.6-6:0.10.6-0ubuntu0jon1
2
+ built on Nov 12 2012 12:53:40 with gcc 4.7.2
3
+ configuration: --arch=amd64 --enable-pthreads --enable-runtime-cpudetect --extra-version='6:0.10.6-0ubuntu0jon1' --libdir=/usr/lib/x86_64-linux-gnu --disable-stripping --prefix=/usr --enable-bzlib --enable-libdc1394 --enable-libfreetype --enable-frei0r --enable-gnutls --enable-libgsm --enable-libmp3lame --enable-librtmp --enable-libopencv --enable-libopenjpeg --enable-libpulse --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-vaapi --enable-vdpau --enable-libvorbis --enable-libvpx --enable-zlib --enable-gpl --enable-postproc --enable-libcdio --enable-x11grab --enable-libx264 --shlibdir=/usr/lib/x86_64-linux-gnu --enable-shared --disable-static
4
+ libavutil 51. 35.100 / 51. 35.100
5
+ libavcodec 53. 61.100 / 53. 61.100
6
+ libavformat 53. 32.100 / 53. 32.100
7
+ libavdevice 53. 4.100 / 53. 4.100
8
+ libavfilter 2. 61.100 / 2. 61.100
9
+ libswscale 2. 1.100 / 2. 1.100
10
+ libswresample 0. 6.100 / 0. 6.100
11
+ libpostproc 52. 0.100 / 52. 0.100
@@ -0,0 +1,2 @@
1
+ ffmpeg version N-50354-g2ecf564 Copyright (c) 2000-2013 the FFmpeg developers
2
+ built on Feb 27 2013 17:51:13 with gcc 4.7.2 (GCC)
@@ -2,37 +2,40 @@
2
2
  require 'spec_helper'
3
3
 
4
4
  describe Ffprober::FfprobeVersion do
5
- let(:before_one_zero) { Gem::Version.new("0.9.0") }
6
- let(:one_zero) { Gem::Version.new("1.0.0") }
7
- let(:one_one) { Gem::Version.new("1.1.0") }
8
- let(:after_one_zero) { Gem::Version.new("1.9.0") }
9
- let(:latest) { Gem::Version.new("1.2") }
5
+ VERSION_CHECKS = [
6
+ { version: "0.9.0", pass: true },
7
+ { version: "1.0.0", pass: true },
8
+ { version: "1.1.0", pass: true },
9
+ { version: "1.9.0", pass: false },
10
+ { version: "1.2.1", pass: true }
11
+ ]
10
12
 
11
13
  context 'validates the ffprobe version' do
12
- it 'detects versions < 0.9' do
13
- Ffprober::FfprobeVersion.stub(:parsed_version) { before_one_zero }
14
- Ffprober::FfprobeVersion.valid?.should be_true
15
- end
16
-
17
- it 'detects versions 1.0' do
18
- Ffprober::FfprobeVersion.stub(:parsed_version) { one_zero }
19
- Ffprober::FfprobeVersion.valid?.should be_true
14
+ VERSION_CHECKS.each do |check|
15
+ it "detects version #{check[:version]}" do
16
+ Ffprober::FfprobeVersion.any_instance.stub(:version) { Gem::Version.new(check[:version]) }
17
+ Ffprober::FfprobeVersion.valid?.should be(check[:pass])
18
+ end
20
19
  end
20
+ end
21
21
 
22
- it 'detects versions 1.1' do
23
- Ffprober::FfprobeVersion.stub(:parsed_version) { one_one }
24
- Ffprober::FfprobeVersion.valid?.should be_true
25
- end
22
+ describe 'detects the version of ffprobe' do
23
+ Dir.new("spec/assets/version_outputs").each do |entry|
24
+ next if [".", "..", ".DS_Store"].include?(entry)
25
+ os, expected_version = entry.split("-")
26
26
 
27
- it 'detects versions 1.9' do
28
- Ffprober::FfprobeVersion.stub(:parsed_version) { after_one_zero }
29
- Ffprober::FfprobeVersion.valid?.should be_false
30
- end
27
+ it "on #{os} from #{expected_version}" do
28
+ version_output = File.read("spec/assets/version_outputs/" + entry)
29
+ Ffprober::FfprobeVersion.any_instance.stub(:version_output) { version_output }
30
+ version_check = Ffprober::FfprobeVersion.new
31
31
 
32
- it 'detects latest' do
33
- Ffprober::FfprobeVersion.stub(:parsed_version) { latest }
34
- Ffprober::FfprobeVersion.valid?.should be_true
32
+ if expected_version == "nightly"
33
+ version_check.nightly?.should eq(true)
34
+ version_check.valid?.should eq(true)
35
+ else
36
+ version_check.version.should eq(Gem::Version.new(expected_version.gsub("_", ".")))
37
+ end
38
+ end
35
39
  end
36
-
37
40
  end
38
41
  end
@@ -0,0 +1,97 @@
1
+ # encoding: utf-8
2
+ require 'spec_helper'
3
+
4
+ describe Ffprober::Parser do
5
+
6
+ describe "from_file", if: Ffprober::FfprobeVersion.valid? do
7
+ before :each do
8
+ @ffprobe = Ffprober::Parser.from_file('spec/assets/301-extracting_a_ruby_gem.m4v')
9
+ end
10
+
11
+ describe "format" do
12
+ it "should determine the correct filename" do
13
+ @ffprobe.format.filename.should eq("spec/assets/301-extracting_a_ruby_gem.m4v")
14
+ end
15
+
16
+ it "should find the correct size" do
17
+ @ffprobe.format.size.should eq("130694")
18
+ end
19
+
20
+ it "should find the correct bit_rate" do
21
+ @ffprobe.format.bit_rate.should eq("502669")
22
+ end
23
+ end
24
+ end
25
+
26
+ describe "from invalid file", if: Ffprober::FfprobeVersion.valid? do
27
+ before :each do
28
+ @ffprobe = Ffprober::Parser.from_file('spec/assets/empty_file')
29
+ end
30
+
31
+ describe "format" do
32
+ it "should determine the correct filename" do
33
+ expect do
34
+ @ffprobe.format.filename.should eq("spec/assets/empty_file")
35
+ end.to raise_error
36
+ end
37
+
38
+ it "should find the correct size" do
39
+ expect do
40
+ @ffprobe.format.size.should eq("130694")
41
+ end.to raise_error
42
+ end
43
+
44
+ it "should find the correct bit_rate" do
45
+ expect do
46
+ @ffprobe.format.bit_rate.should eq("502669")
47
+ end.to raise_error
48
+ end
49
+ end
50
+ end
51
+
52
+ describe "from_json" do
53
+ before :each do
54
+ @ffprobe = Ffprober::Parser.from_json(File.read('spec/assets/301-extracting_a_ruby_gem.json'))
55
+ end
56
+
57
+ describe "format" do
58
+ it "should determine the correct filename" do
59
+ @ffprobe.format.filename.should eq("301-extracting-a-ruby-gem.mp4")
60
+ end
61
+
62
+ it "should find the correct size" do
63
+ @ffprobe.format.size.should eq("44772490")
64
+ end
65
+
66
+ it "should find the correct bit_rate" do
67
+ @ffprobe.format.bit_rate.should eq("361309")
68
+ end
69
+ end
70
+
71
+ describe "audio_streams" do
72
+ it "should determine the correct number of audio streams" do
73
+ @ffprobe.audio_streams.count.should eq(1)
74
+ end
75
+
76
+ it "should determine the correct sample rate of the first audio stream" do
77
+ @ffprobe.audio_streams.first.sample_rate.should eq("48000")
78
+ end
79
+
80
+ end
81
+
82
+ describe "video_streams" do
83
+ it "should determine the correct width of the first video streams" do
84
+ @ffprobe.video_streams.first.width.should eq(960)
85
+ end
86
+
87
+ it "should determine the correct width of the first video streams" do
88
+ @ffprobe.video_streams.first.height.should eq(600)
89
+ end
90
+
91
+ it "should determine the correct number of video streams" do
92
+ @ffprobe.video_streams.count.should eq(1)
93
+ end
94
+ end
95
+ end
96
+
97
+ end
@@ -2,51 +2,6 @@
2
2
  require 'spec_helper'
3
3
 
4
4
  describe Ffprober do
5
- describe "from_file", if: Ffprober::FfprobeVersion.valid? do
6
- before :each do
7
- @ffprobe = Ffprober::Parser.from_file('spec/assets/301-extracting_a_ruby_gem.m4v')
8
- end
9
-
10
- describe "format" do
11
- it "should determine the correct filename" do
12
- @ffprobe.format.filename.should eq("spec/assets/301-extracting_a_ruby_gem.m4v")
13
- end
14
-
15
- it "should find the correct size" do
16
- @ffprobe.format.size.should eq("130694")
17
- end
18
-
19
- it "should find the correct bit_rate" do
20
- @ffprobe.format.bit_rate.should eq("502669")
21
- end
22
- end
23
- end
24
-
25
- describe "from invalid file", if: Ffprober::FfprobeVersion.valid? do
26
- before :each do
27
- @ffprobe = Ffprober::Parser.from_file('spec/assets/empty_file')
28
- end
29
-
30
- describe "format" do
31
- it "should determine the correct filename" do
32
- expect do
33
- @ffprobe.format.filename.should eq("spec/assets/empty_file")
34
- end.to raise_error
35
- end
36
-
37
- it "should find the correct size" do
38
- expect do
39
- @ffprobe.format.size.should eq("130694")
40
- end.to raise_error
41
- end
42
-
43
- it "should find the correct bit_rate" do
44
- expect do
45
- @ffprobe.format.bit_rate.should eq("502669")
46
- end.to raise_error
47
- end
48
- end
49
- end
50
5
 
51
6
  describe "if no ffprobe is found" do
52
7
  it "should raise a exception" do
@@ -55,48 +10,4 @@ describe Ffprober do
55
10
  end
56
11
  end
57
12
 
58
- describe "from_json" do
59
- before :each do
60
- @ffprobe = Ffprober::Parser.from_json(File.read('spec/assets/301-extracting_a_ruby_gem.json'))
61
- end
62
-
63
- describe "format" do
64
- it "should determine the correct filename" do
65
- @ffprobe.format.filename.should eq("301-extracting-a-ruby-gem.mp4")
66
- end
67
-
68
- it "should find the correct size" do
69
- @ffprobe.format.size.should eq("44772490")
70
- end
71
-
72
- it "should find the correct bit_rate" do
73
- @ffprobe.format.bit_rate.should eq("361309")
74
- end
75
- end
76
-
77
- describe "audio_streams" do
78
- it "should determine the correct number of audio streams" do
79
- @ffprobe.audio_streams.count.should eq(1)
80
- end
81
-
82
- it "should determine the correct sample rate of the first audio stream" do
83
- @ffprobe.audio_streams.first.sample_rate.should eq("48000")
84
- end
85
-
86
- end
87
-
88
- describe "video_streams" do
89
- it "should determine the correct width of the first video streams" do
90
- @ffprobe.video_streams.first.width.should eq(960)
91
- end
92
-
93
- it "should determine the correct width of the first video streams" do
94
- @ffprobe.video_streams.first.height.should eq(600)
95
- end
96
-
97
- it "should determine the correct number of video streams" do
98
- @ffprobe.video_streams.count.should eq(1)
99
- end
100
- end
101
- end
102
13
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ffprober
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - beanieboi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-05-18 00:00:00.000000000 Z
11
+ date: 2013-06-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -49,6 +49,7 @@ files:
49
49
  - .rspec
50
50
  - .ruby-version
51
51
  - .travis.yml
52
+ - Changes.md
52
53
  - Gemfile
53
54
  - LICENSE
54
55
  - README.md
@@ -65,7 +66,13 @@ files:
65
66
  - spec/assets/301-extracting_a_ruby_gem.json
66
67
  - spec/assets/301-extracting_a_ruby_gem.m4v
67
68
  - spec/assets/empty_file
69
+ - spec/assets/version_outputs/osx-1_0
70
+ - spec/assets/version_outputs/osx-1_2_0
71
+ - spec/assets/version_outputs/raspian-0_8_6
72
+ - spec/assets/version_outputs/ubuntu-0_10_6
73
+ - spec/assets/version_outputs/windows-nightly
68
74
  - spec/ffprober/ffprobe_version_spec.rb
75
+ - spec/ffprober/parser_spec.rb
69
76
  - spec/ffprober_spec.rb
70
77
  - spec/spec_helper.rb
71
78
  homepage: https://github.com/beanieboi/ffprober
@@ -88,7 +95,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
88
95
  version: '0'
89
96
  requirements: []
90
97
  rubyforge_project: ffprober
91
- rubygems_version: 2.0.0
98
+ rubygems_version: 2.0.2
92
99
  signing_key:
93
100
  specification_version: 4
94
101
  summary: a Ruby wrapper for ffprobe (part of ffmpeg)
@@ -96,6 +103,13 @@ test_files:
96
103
  - spec/assets/301-extracting_a_ruby_gem.json
97
104
  - spec/assets/301-extracting_a_ruby_gem.m4v
98
105
  - spec/assets/empty_file
106
+ - spec/assets/version_outputs/osx-1_0
107
+ - spec/assets/version_outputs/osx-1_2_0
108
+ - spec/assets/version_outputs/raspian-0_8_6
109
+ - spec/assets/version_outputs/ubuntu-0_10_6
110
+ - spec/assets/version_outputs/windows-nightly
99
111
  - spec/ffprober/ffprobe_version_spec.rb
112
+ - spec/ffprober/parser_spec.rb
100
113
  - spec/ffprober_spec.rb
101
114
  - spec/spec_helper.rb
115
+ has_rdoc: