easyvideo_utils 0.1.1 → 0.2.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
  SHA256:
3
- metadata.gz: '04906c6cc541e0439c5693c68ef3adf3d0e468b3f110500fdf27f24d6b7b45b8'
4
- data.tar.gz: 44c3fe52603cf086bc19d4c799dfca971532ed823ecfa4b1df471cb7e1d9144f
3
+ metadata.gz: 4cfb8ec45f4c34388844f4c8d67b364f69f143af97c19ee2f3aab3ee83b96a89
4
+ data.tar.gz: 53ebae5e818683a2bfdd600015331ed0aefd27cea99e48aaa675dabc9b5d6f26
5
5
  SHA512:
6
- metadata.gz: b4a9d9ce8c18b74a1e24c52b34d868e33f526092dd2cc29f408207c7d957157d98f88d7274700d67541b37a5fbe4b1ee2e336a396e96f778bac531405540dd5d
7
- data.tar.gz: d248059f99e7386d70d3682acc080bcee9ef17f58d9ef69a82c05c20855b770023f431af1c46d42800394c21dc0b5c1ff4d8ade959e06b36580d88f6fd3c30a7
6
+ metadata.gz: 158d6800577c650de64b07fdd9ae8b32949173073cedf01f790099da5e5d56eb23384649b47cf5269f4e5b81544f719a7806dcb8e25281f6fb3b484c980d32b6
7
+ data.tar.gz: c285f7928a43fc17f94c0dcadb72a966f02544f9053c1b5b3e89a51726ce175135dcdb405c2279a50d60f688078194f5d750033540025b7be6e87f9d164e0954
checksums.yaml.gz.sig CHANGED
Binary file
@@ -3,10 +3,11 @@
3
3
  # file: easyvideo_utils.rb
4
4
 
5
5
  require 'c32'
6
+ require 'subunit'
6
7
 
7
8
 
8
9
  # requirements:
9
- # `apt-get install mplayer ffmpeg vorbis-tools`
10
+ # `apt-get install mplayer ffmpeg vorbis-tools`exiftool
10
11
 
11
12
 
12
13
  module CommandHelper
@@ -47,9 +48,9 @@ class EasyVideoUtils
47
48
 
48
49
 
49
50
  def initialize(vid_in=nil, vid_out='video.mp4', out: vid_out,
50
- working_dir: '/tmp')
51
+ working_dir: '/tmp', debug: false)
51
52
 
52
- @file_in, @file_out, @working_dir = vid_in, out, working_dir
53
+ @file_in, @file_out, @working_dir, @debug = vid_in, out, working_dir, debug
53
54
 
54
55
  end
55
56
 
@@ -73,13 +74,33 @@ class EasyVideoUtils
73
74
 
74
75
  end
75
76
 
76
- def capture_desktop()
77
+ def capture_desktop(show: false)
77
78
 
78
79
  command = "ffmpeg -video_size 1024x768 -framerate 25 -f x11grab -i " +
79
80
  ":0.0+0,0 #{@file_out}"
80
81
  run command, show
81
82
 
82
83
  end
84
+
85
+ # Duration returned in seconds
86
+ #
87
+ def duration()
88
+
89
+ s = `exiftool #{@file_in}`
90
+ puts 's: ' + s.inspect if @debug
91
+ r = s[/Duration.*(\d{1,2}:\d{2}:\d{2})/,1]
92
+
93
+ puts 'r: ' + r.inspect if @debug
94
+
95
+ if r then
96
+ a = r.split(':').map(&:to_i)
97
+ return Subunit.new(units={minutes:60, hours:60, seconds: 0}, a).to_i
98
+ end
99
+
100
+ puts 'r: ' + r.inspect if @debug
101
+ s[/Duration.*: (\d+\.\d+) s/,1].to_f
102
+
103
+ end
83
104
 
84
105
  def play(show: false)
85
106
  command = "mplayer #{@file_out}"
@@ -125,7 +146,7 @@ class EasyVideoUtils
125
146
 
126
147
  private
127
148
 
128
- def run(command, show: false)
149
+ def run(command, show=false)
129
150
 
130
151
  if show then
131
152
  command
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: easyvideo_utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -57,6 +57,26 @@ dependencies:
57
57
  - - "~>"
58
58
  - !ruby/object:Gem::Version
59
59
  version: '0.2'
60
+ - !ruby/object:Gem::Dependency
61
+ name: subunit
62
+ requirement: !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - ">="
65
+ - !ruby/object:Gem::Version
66
+ version: 0.4.0
67
+ - - "~>"
68
+ - !ruby/object:Gem::Version
69
+ version: '0.4'
70
+ type: :runtime
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ version: 0.4.0
77
+ - - "~>"
78
+ - !ruby/object:Gem::Version
79
+ version: '0.4'
60
80
  description:
61
81
  email: james@jamesrobertson.eu
62
82
  executables: []
metadata.gz.sig CHANGED
Binary file