ffsplitter 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6d4ad8bf3edad0c10ae7ec2685cf584be0da92a7
4
- data.tar.gz: 0fd0abeeda6ef1a19ab1259a2df30607408dd3ed
3
+ metadata.gz: 75ccb4a65d9a207ef81daa79288ea34b9826a404
4
+ data.tar.gz: f91bfe2e5ded7782bbe6ebe35655409ec8fc7aea
5
5
  SHA512:
6
- metadata.gz: 46c56309791d5044077134f9474110de033fd4172bae0399cde69b22a32eb263b88851f4c9920868f2a2a43d77e95c6e16d93e7dc91f3c6e31a727241803d325
7
- data.tar.gz: 8232ed457d56989507dbcb2a360d0dc1714ff52429624b6e41f6b797cb125fd9a42f62adfd556150d38f9f0db69438489b70fd480dfc4b7ec84bd6e4acdd2f39
6
+ metadata.gz: 340c7b9e80b5e1e7de02a89d84ad1adaa4cb8b98fd1fea1b1bc1aceebdfafb95f2b5028b50ae8685287074268883defd63c68df99910850c57bd6c35d3f9857b
7
+ data.tar.gz: 980a74e9f398eee31e6fa8f696bb85a90ec9b41f37d851f6c520953367f60637c595c94103adb5aa0ca4558f46664ec83691a2b1312be00c492304f9f91f4b90
data/README.md CHANGED
@@ -7,10 +7,15 @@
7
7
 
8
8
  ## Usage
9
9
 
10
- * Given the video file `my-video.mp4`
11
- * And `my-video.mp4` has embedded chapter markers
12
- * When I execute `ffsplitter my-video.mp4`
13
- * Then `.mp4` files will be created for each chapter
10
+ `ffsplitter my-video.mp4`
11
+
12
+ or
13
+
14
+ `ffsplitter my-video.mp4 output-directory/`
15
+
16
+ ## Testing
17
+
18
+ `bundle exec rspec`
14
19
 
15
20
  ## Contributing
16
21
 
@@ -8,18 +8,18 @@ module FFSplitter
8
8
  @runner = CommandRunner
9
9
  end
10
10
 
11
- def encode(chapters)
12
- commands = chapters.collect { |c| chapter_command(c) }
13
- runner.run("ffmpeg #{commands.join(" ")}")
14
- end
15
-
16
11
  def read_metadata
17
12
  runner.run("ffmpeg -i '#{filename}' -v quiet -f ffmetadata -")
18
13
  end
19
14
 
15
+ def encode(chapters)
16
+ commands = chapters.collect { |c| chapter_command(c) }
17
+ runner.run("ffmpeg #{commands.join(' ')}")
18
+ end
19
+
20
20
  def chapter_command(chapter)
21
21
  output_file = File.expand_path(chapter.filename, output_directory)
22
- "-i '#{filename}' -ss #{chapter.start_time} -to #{chapter.end_time} -c copy '#{output_file}.mp4'"
22
+ "-i '#{filename}' -ss #{chapter.start_time} -to #{chapter.end_time} -c copy -movflags faststart '#{output_file}.mp4'"
23
23
  end
24
24
  end
25
- end
25
+ end
@@ -5,7 +5,8 @@ module FFSplitter
5
5
  end
6
6
 
7
7
  def self.split(codec)
8
- chapter_list = MetadataParser.parse(codec.read_metadata)
8
+ metadata = codec.read_metadata
9
+ chapter_list = MetadataParser.parse(metadata)
9
10
  codec.encode(chapter_list)
10
11
  end
11
12
  end
@@ -1,3 +1,3 @@
1
1
  module FFSplitter
2
- VERSION = "0.0.4"
2
+ VERSION = "0.0.5"
3
3
  end
data/spec/ffmpeg_spec.rb CHANGED
@@ -45,6 +45,7 @@ module FFSplitter
45
45
  expect(command).to match("-ss 10.0")
46
46
  expect(command).to match("-to 20.0")
47
47
  expect(command).to match("-c copy")
48
+ expect(command).to match("-movflags faststart")
48
49
  expect(command).to match("#{File.expand_path(chapter.filename)}")
49
50
  end
50
51
  end
@@ -64,4 +65,4 @@ module FFSplitter
64
65
  end
65
66
  end
66
67
  end
67
- end
68
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ffsplitter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kevin Rockwood
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-10-21 00:00:00.000000000 Z
11
+ date: 2014-02-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: virtus
@@ -116,7 +116,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
116
116
  version: '0'
117
117
  requirements: []
118
118
  rubyforge_project:
119
- rubygems_version: 2.0.3
119
+ rubygems_version: 2.1.11
120
120
  signing_key:
121
121
  specification_version: 4
122
122
  summary: ffsplitter will split a video file by its chapters