video_transcoding 0.24.0 → 0.25.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +528 -0
- data/README.md +7 -513
- data/bin/convert-video +16 -1
- data/bin/transcode-video +50 -9
- data/lib/video_transcoding/version.rb +1 -1
- metadata +3 -2
data/bin/convert-video
CHANGED
@@ -436,8 +436,23 @@ HERE
|
|
436
436
|
Process.kill 'INT', io.pid
|
437
437
|
end
|
438
438
|
|
439
|
+
buffer = ''
|
440
|
+
|
439
441
|
io.each_char do |char|
|
440
|
-
|
442
|
+
if (char.bytes[0] & 0x80) != 0
|
443
|
+
buffer << char
|
444
|
+
else
|
445
|
+
if not buffer.empty?
|
446
|
+
print buffer
|
447
|
+
buffer = ''
|
448
|
+
end
|
449
|
+
|
450
|
+
print char
|
451
|
+
end
|
452
|
+
end
|
453
|
+
|
454
|
+
if not buffer.empty?
|
455
|
+
print buffer
|
441
456
|
end
|
442
457
|
end
|
443
458
|
rescue SystemCallError => e
|
data/bin/transcode-video
CHANGED
@@ -145,9 +145,9 @@ Audio options:
|
|
145
145
|
--ac3-encoder ac3|eac3
|
146
146
|
set AC-3 audio encoder (default: ac3)
|
147
147
|
--ac3-bitrate 384|448|640|768|1536
|
148
|
-
set AC-3 audio bitrate (default: 640)
|
148
|
+
set AC-3 surround audio bitrate (default: 640)
|
149
149
|
--pass-ac3-bitrate 384|448|640|768|1536
|
150
|
-
set AC-3
|
150
|
+
set AC-3 surround pass-through bitrate (default: 640)
|
151
151
|
--copy-audio TRACK|all
|
152
152
|
try to copy track selected by number in its original format
|
153
153
|
falling back to surround format if original not allowed
|
@@ -162,8 +162,10 @@ Audio options:
|
|
162
162
|
(can be used multiple times)
|
163
163
|
--aac-encoder NAME
|
164
164
|
use named AAC audio encoder (default: platform dependent)
|
165
|
-
--mixdown dpl2
|
166
|
-
set mixdown
|
165
|
+
--mixdown stereo|dpl2
|
166
|
+
set mixdown for stereo audio output tracks
|
167
|
+
to regular stereo or Dolby Pro Logic II format
|
168
|
+
(default: stereo)
|
167
169
|
--no-audio disable all audio output
|
168
170
|
|
169
171
|
Subtitle options:
|
@@ -267,7 +269,7 @@ HERE
|
|
267
269
|
@copy_audio = []
|
268
270
|
@copy_audio_name = []
|
269
271
|
@aac_encoder = nil
|
270
|
-
@mixdown = '
|
272
|
+
@mixdown = 'stereo'
|
271
273
|
@burn_subtitle = nil
|
272
274
|
@force_subtitle = nil
|
273
275
|
@extra_subtitle = []
|
@@ -652,7 +654,7 @@ HERE
|
|
652
654
|
|
653
655
|
opts.on '--mixdown ARG' do |arg|
|
654
656
|
@mixdown = case arg
|
655
|
-
when '
|
657
|
+
when 'stereo', 'dpl2'
|
656
658
|
arg
|
657
659
|
else
|
658
660
|
fail UsageError, "invalid mixdown: #{arg}"
|
@@ -875,6 +877,7 @@ HERE
|
|
875
877
|
adjust_metadata(handbrake_options['output'])
|
876
878
|
|
877
879
|
unless @dry_run
|
880
|
+
puts "Completed: #{handbrake_options['output']}"
|
878
881
|
seconds = Time.now.tv_sec - seconds
|
879
882
|
hours = seconds / (60 * 60)
|
880
883
|
minutes = (seconds / 60) % 60
|
@@ -1177,13 +1180,35 @@ HERE
|
|
1177
1180
|
(info[:format] =~ /^AAC/ or (@keep_ac3_stereo and has_ac3))) or
|
1178
1181
|
(@stereo_format == 'ac3' and has_ac3)))
|
1179
1182
|
encoders << 'copy'
|
1183
|
+
bitrates << ''
|
1180
1184
|
mixdowns << ''
|
1181
1185
|
else
|
1182
1186
|
encoders << stereo_encoder
|
1187
|
+
|
1188
|
+
if stereo_encoder == 'eac3'
|
1189
|
+
if @ac3_bitrate == 1536
|
1190
|
+
bitrates << ''
|
1191
|
+
else
|
1192
|
+
if (info[:channels] > 1.0)
|
1193
|
+
if @ac3_bitrate == 768
|
1194
|
+
bitrates << '384'
|
1195
|
+
else
|
1196
|
+
bitrates << '224'
|
1197
|
+
end
|
1198
|
+
else
|
1199
|
+
if @ac3_bitrate == 768
|
1200
|
+
bitrates << '192'
|
1201
|
+
else
|
1202
|
+
bitrates << '96'
|
1203
|
+
end
|
1204
|
+
end
|
1205
|
+
end
|
1206
|
+
else
|
1207
|
+
bitrates << ''
|
1208
|
+
end
|
1209
|
+
|
1183
1210
|
mixdowns << (info[:channels] > 2.0 ? @mixdown : '')
|
1184
1211
|
end
|
1185
|
-
|
1186
|
-
bitrates << ''
|
1187
1212
|
end
|
1188
1213
|
|
1189
1214
|
track_order.each do |track|
|
@@ -1391,10 +1416,26 @@ HERE
|
|
1391
1416
|
Process.kill 'INT', io.pid
|
1392
1417
|
end
|
1393
1418
|
|
1419
|
+
buffer = ''
|
1420
|
+
|
1394
1421
|
io.each_char do |char|
|
1395
|
-
|
1422
|
+
if (char.bytes[0] & 0x80) != 0
|
1423
|
+
buffer << char
|
1424
|
+
else
|
1425
|
+
if not buffer.empty?
|
1426
|
+
print buffer
|
1427
|
+
buffer = ''
|
1428
|
+
end
|
1429
|
+
|
1430
|
+
print char
|
1431
|
+
end
|
1432
|
+
|
1396
1433
|
log_file.print char unless log_file.nil?
|
1397
1434
|
end
|
1435
|
+
|
1436
|
+
if not buffer.empty?
|
1437
|
+
print buffer
|
1438
|
+
end
|
1398
1439
|
end
|
1399
1440
|
rescue SystemCallError => e
|
1400
1441
|
raise "transcoding failed: #{e}"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: video_transcoding
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.25.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Don Melton
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-03-10 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: |2
|
14
14
|
Video Transcoding is a package of tools to transcode, inspect
|
@@ -24,6 +24,7 @@ extra_rdoc_files:
|
|
24
24
|
- LICENSE
|
25
25
|
- README.md
|
26
26
|
files:
|
27
|
+
- CHANGELOG.md
|
27
28
|
- LICENSE
|
28
29
|
- README.md
|
29
30
|
- bin/convert-video
|