sensible-cinema 0.22.1 → 0.23.0
Sign up to get free protection for your applications and to get access to all the features.
- data/LICENSE.TXT +7 -4
- data/README +84 -68
- data/Rakefile +21 -23
- data/TODO +93 -60
- data/VERSION +1 -1
- data/bin/sensible-cinema +201 -123
- data/change_log_with_feature_list.txt +10 -0
- data/development.txt +11 -2
- data/go.bat +1 -1
- data/go.sh +1 -0
- data/go_ocr_tracker.bat +1 -1
- data/goc.bat +1 -0
- data/lib/auto_convert.rb +4 -3
- data/lib/check_installed_mac.rb +40 -0
- data/lib/drive_info.rb +25 -13
- data/lib/edl_parser.rb +1 -3
- data/lib/mencoder_wrapper.rb +11 -6
- data/lib/mouse.rb +1 -1
- data/lib/mplayer_edl.rb +1 -2
- data/lib/ocr.rb +8 -3
- data/lib/subtitle_profanity_finder.rb +68 -21
- data/lib/swing_helpers.rb +1 -1
- data/sensible-cinema.gemspec +20 -5
- data/spec/arse.srt +36 -0
- data/spec/common.rb +1 -1
- data/spec/deity_end.srt +11 -0
- data/spec/dragon.srt +1 -2
- data/spec/drive_info.spec.rb +25 -6
- data/spec/notes +99 -15
- data/spec/sensible_cinema_gui.spec.rb +8 -5
- data/spec/subtitle_profanity_finder.spec.rb +56 -6
- data/template_bats/RUN SENSIBLE CINEMA CLICK HERE.bat +2 -2
- data/todo.inventionzy.txt +0 -12
- data/todo.open_edl_list_org.txt +2 -0
- data/{propaganda → todo.propaganda} +4 -1
- data/todo.subtitle +3 -22
- data/vendor/mac_dvdid/bin/dvdid +0 -0
- data/vendor/mac_dvdid/include/dvdid/dvdid.h +67 -0
- data/vendor/mac_dvdid/include/dvdid/dvdid2.h +131 -0
- data/vendor/mac_dvdid/include/dvdid/export.h +32 -0
- data/vendor/mac_dvdid/lib/libdvdid.0.dylib +0 -0
- data/vendor/mac_dvdid/lib/libdvdid.a +0 -0
- data/vendor/mac_dvdid/lib/libdvdid.dylib +0 -0
- data/vendor/mac_dvdid/lib/libdvdid.la +41 -0
- data/www/index.html +16 -5
- data/zamples/edit_decision_lists/dvds/COOL_RUNNINGS.txt +3 -3
- data/zamples/edit_decision_lists/dvds/Harry Potter 2.txt +3 -4
- data/zamples/edit_decision_lists/dvds/bambi.txt +20 -0
- data/zamples/edit_decision_lists/dvds/big_buck_bunny_dvd.txt +6 -7
- data/zamples/edit_decision_lists/dvds/bob the builder pets in a pickle.txt +1 -1
- data/zamples/edit_decision_lists/dvds/bobs_big_plan.txt +1 -1
- data/zamples/edit_decision_lists/dvds/happiest baby on the block.txt +1 -1
- data/zamples/edit_decision_lists/dvds/how_to_train_your_dragon.txt +2 -2
- data/zamples/edit_decision_lists/dvds/kung_fu_panda_1.txt +17 -0
- data/zamples/edit_decision_lists/dvds/legend_of_the_guardians_the_owls_of_gahoole.txt +1 -1
- data/zamples/edit_decision_lists/dvds/making_marriage_work.txt +3 -5
- data/zamples/edit_decision_lists/dvds/narnia_voyage_of_the_dawn_treader.txt +16 -0
- data/zamples/edit_decision_lists/dvds/old_and_inaccurate/star_trek_generations_hulu.txt +1 -1
- data/zamples/edit_decision_lists/dvds/pack_wedding_2007-03-03.txt +4 -4
- data/zamples/edit_decision_lists/dvds/sintel_open_source_blender.txt +2 -1
- data/zamples/edit_decision_lists/dvds/tron_legacy.txt +1 -1
- data/zamples/edit_decision_lists/dvds/turn_around_alma_younger.txt +1 -1
- data/zamples/edit_decision_lists/dvds/{example_delete_list_that_has_no_cuts_in_it.txt → zz_example_delete_list_that_has_no_cuts_in_it.txt} +2 -2
- data/zamples/edit_decision_lists/old_not_yet_updated/example_edit_decision_list.txt +2 -2
- data/zamples/edit_decision_lists/youtube/demo_mutes.txt +1 -1
- metadata +20 -5
- data/gocreatemode.bat +0 -1
data/spec/arse.srt
ADDED
@@ -0,0 +1,36 @@
|
|
1
|
+
6
|
2
|
+
00:00:55,068 --> 00:00:59,164
|
3
|
+
<i>don't assume anything at the impass ok
|
4
|
+
|
5
|
+
6
|
6
|
+
00:00:55,067 --> 00:00:59,164
|
7
|
+
<i>don't assume anything at the impass
|
8
|
+
|
9
|
+
6
|
10
|
+
00:00:55,069 --> 00:00:59,164
|
11
|
+
<i>at the very end of this line is a realllly bad word
|
12
|
+
|
13
|
+
6
|
14
|
+
00:00:55,066 --> 00:00:59,164
|
15
|
+
a realllly bad word at just the beginning
|
16
|
+
|
17
|
+
6
|
18
|
+
00:00:55,065 --> 00:00:59,164
|
19
|
+
a reaiiiiy bad word with i's for l's
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
6
|
24
|
+
00:00:55,071 --> 00:00:59,164
|
25
|
+
a realllly bad word
|
26
|
+
|
27
|
+
6
|
28
|
+
00:00:55,070 --> 00:00:59,164
|
29
|
+
<i>don't forget there is heaven and hell
|
30
|
+
waiting each < /i> < /I>
|
31
|
+
|
32
|
+
67
|
33
|
+
00:00:55,068 --> 00:00:59,164
|
34
|
+
<i>hello
|
35
|
+
shell
|
36
|
+
|
data/spec/common.rb
CHANGED
data/spec/deity_end.srt
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
6
|
2
|
+
00:00:55,068 --> 00:00:59,164
|
3
|
+
<i>We have our nordic gods, hunting</i>
|
4
|
+
<i>and a charming view of the sunsets.</i>
|
5
|
+
|
6
|
+
7
|
7
|
+
00:00:59,306 --> 00:01:02,298
|
8
|
+
<i>The onIy probIems are the pests.</i>
|
9
|
+
<I>The onIy probIems are the pests.< /i>< /I>
|
10
|
+
hymn title: a mighty fortress is our God.
|
11
|
+
|
data/spec/dragon.srt
CHANGED
@@ -23,10 +23,9 @@
|
|
23
23
|
|
24
24
|
6
|
25
25
|
00:00:55,068 --> 00:00:59,164
|
26
|
-
<i>We have
|
26
|
+
<i>We have our nordic gods, hunting</i>
|
27
27
|
<i>and a charming view of the sunsets.</i>
|
28
28
|
|
29
29
|
7
|
30
30
|
00:00:59,306 --> 00:01:02,298
|
31
31
|
<i>The onIy probIems are the pests.</i>
|
32
|
-
|
data/spec/drive_info.spec.rb
CHANGED
@@ -17,26 +17,45 @@ This file is part of Sensible Cinema.
|
|
17
17
|
=end
|
18
18
|
require File.expand_path(File.dirname(__FILE__) + '/common')
|
19
19
|
require_relative '../lib/drive_info'
|
20
|
+
require 'socket'
|
20
21
|
|
21
22
|
describe 'dvd_drive_info' do
|
22
|
-
it 'should be able to get an md5sum from
|
23
|
+
it 'should be able to get an md5sum from a dvd' do
|
23
24
|
FileUtils.mkdir_p 'VIDEO_TS'
|
24
25
|
Dir.chdir 'VIDEO_TS' do
|
25
26
|
File.binwrite("VTS_01_0.IFO", "b")
|
26
27
|
File.binwrite("VIDEO_TS.IFO", "a")
|
27
28
|
end
|
28
|
-
DriveInfo.md5sum_disk("
|
29
|
+
DriveInfo.md5sum_disk("./").should ==
|
30
|
+
if Socket.gethostname == "PACKR-B1C04F564"
|
31
|
+
"b715cc2a|5e217436"
|
32
|
+
elsif OS.windows? # blacky
|
33
|
+
"ff83793c|dfaedb42"
|
34
|
+
else # mac
|
35
|
+
raise 'unknown here...' + DriveInfo.md5sum_disk("./")
|
36
|
+
end
|
29
37
|
end
|
30
38
|
|
31
|
-
it "should be able to do it for real drive" do
|
39
|
+
it "should be able to do it for real disc in the drive" do
|
32
40
|
DriveInfo.get_dvd_drives_as_openstruct.length.should be > 0
|
41
|
+
found_one = false
|
33
42
|
DriveInfo.get_dvd_drives_as_openstruct.each{|d|
|
34
|
-
|
43
|
+
if d.VolumeName # mounted ...
|
44
|
+
DriveInfo.md5sum_disk(d.MountPoint).length.should be > 0
|
45
|
+
found_one = true
|
46
|
+
d.FreeSpace.should == 0
|
47
|
+
end
|
35
48
|
}
|
49
|
+
found_one.should be true
|
36
50
|
end
|
37
|
-
|
51
|
+
|
38
52
|
it "should return a drive with most space" do
|
39
|
-
DriveInfo.get_drive_with_most_space_with_slash
|
53
|
+
space_drive = DriveInfo.get_drive_with_most_space_with_slash
|
54
|
+
space_drive[1..-1].should == ":/" if OS.windows? # hope forward slash is ok...
|
55
|
+
space_drive[0..0].should == "/" if !OS.windows?
|
56
|
+
require 'fileutils'
|
57
|
+
FileUtils.touch space_drive + 'touched_file'
|
58
|
+
FileUtils.rm space_drive + 'touched_file'
|
40
59
|
end
|
41
60
|
|
42
61
|
end
|
data/spec/notes
CHANGED
@@ -1,15 +1,106 @@
|
|
1
1
|
up next:
|
2
|
-
|
2
|
+
lighning exact frame to compare the two fulli's...
|
3
3
|
|
4
|
+
== subtitle accuracy ==
|
5
|
+
narnia dawn treader had 1 subtitle that was "hand crafted", had the wrong timestamps, but was more accurate.
|
6
|
+
The several others were accurate though.
|
7
|
+
|
8
|
+
== ? ==
|
9
|
+
|
10
|
+
opensubtitles' viewer gets "nothing" for subtitles of DVD's...smplayer requires you to manually search, too...
|
11
|
+
splayer doesn't seem to attempt auto-download either of subs for DVD's. Feels so nice tho :P
|
12
|
+
|
13
|
+
== true dvdid ==
|
14
|
+
|
15
|
+
dvdid /Volumes/BAM0NNM1
|
16
|
+
3121d937|cc97b745 (seems consistent like a champ...)
|
17
|
+
|
18
|
+
== ffmpeg vs. AVS vs. powerproducer zact timings...splitting fulli c lightning ==
|
19
|
+
|
20
|
+
try with all x*y ways to do this LOL
|
21
|
+
fascinatingly, on the mplayer dump file, the OSD doesn't work right, and resets. LOL
|
22
|
+
mplayer dvdnav OSD:
|
23
|
+
preceding: 02:10:36.-4
|
24
|
+
actual strike: 02:10:36.00
|
25
|
+
|
26
|
+
== does it work with makemkv with ts muxer? ==
|
27
|
+
|
28
|
+
OSOH/ title00.ts
|
29
|
+
transition: frame 107798 00:59:56.863
|
30
|
+
with ffmpeg 3596.82 seems to be in perfect lock-step with the other.
|
31
|
+
both have sound.
|
32
|
+
perfeito
|
33
|
+
|
34
|
+
== so...does it work with makemkv without tsmuxer? ==
|
35
|
+
|
36
|
+
using -ofps 30000/1001 -mc 0 -noskip caused the audio/video to mismatch wildly :P
|
37
|
+
extracting audio didn't play back in VLC with correct sig [which means nothing]
|
38
|
+
me having to demux to *ts* is not an option :P
|
39
|
+
mencoder1 -mc 0 -noskip title00.mkv -ofps 24000/1001 -of mpeg -mpegopts muxrate=300000 -alang en -sid 1000 -oac mp3lame -ovc lavc -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=1:vstrict=0:acodec=ac3:abitrate=192:autoaspect -o something.mpg
|
40
|
+
did *not* seem to work (avidemux: audio messed up, transition 86250 00:59:57.347 which is kind-er right...)
|
41
|
+
to be continued...
|
42
|
+
demux_mpg: 24000/1001fps progressive NTSC content detected, switching framerate. OSOH only saw it once
|
43
|
+
|
44
|
+
== ja donatei ==
|
45
|
+
|
46
|
+
ossfarm, putty, tons others, I think...
|
47
|
+
|
48
|
+
== ffmpeg vs. AVS vs. powerproducer zact timings...splitting fulli ==
|
49
|
+
|
50
|
+
conclusion:
|
51
|
+
mencoder splitting for zact timing seemss off
|
52
|
+
ffmpeg is consistent with ffprobe I...would guess.
|
53
|
+
which *seems* to match the DVD "quite closely"
|
54
|
+
|
55
|
+
note this was fulli from mplayer rip...though ffmpeg seemed to match better with both [?]
|
56
|
+
|
57
|
+
transition on fulli:
|
58
|
+
avs: 59:56.867, pp: 56.90, avidemux: 56.863
|
59
|
+
maybe pp was .86 but didn't update its framing right?
|
60
|
+
ffprobe shows possible vcodecs at: 3596.826 3596.793 3596.826 3596.8597 3596.893 3596.926
|
61
|
+
counting them: 107790 doesn't line up at all...10 frames off? it must duplicate some frames implicitly...
|
62
|
+
ffmpeg at 3596.866 got avidemux's frame: 59:56.930 (107800)
|
63
|
+
ffmpeg at 3596.83 got avidemux's frame: 00:59:56.896 (107799)
|
64
|
+
ffmpeg at 3596.82 got avidemux's frame: 00:59:56.896 (107798) which seems to match ffprobe...and imply that 3596.826 is the transition frame [?]
|
65
|
+
so basically everything is...one frame off? ffmpeg is one frame off from avs/others?
|
66
|
+
mplayer DVD OSD: 00:59:53.25 (converted: 3596.84) V:3597.3 [V value huh? ]
|
67
|
+
previous frame to transition one was 59:53:21 [pre-switch] (3596.80 converted)
|
68
|
+
about one frame off avs/avidemux []
|
69
|
+
. = frame advance in mplayer
|
70
|
+
|
71
|
+
title00.ts
|
72
|
+
(non-finger frame)
|
73
|
+
AVS on ts (not fulli): ffmpeg's 3596.82 frame is shown 57.042 [+ crash?]
|
74
|
+
powerproducer: 57.0 even (meaning probably the frame before 57.03)
|
75
|
+
mplayer: 4197.0 [second .0], (OSD from file)
|
76
|
+
avidemux on .ts: 00:59:57.347 86250 (but the timing is always off for that one...)
|
77
|
+
however with fulli I guess we're closer somehow magically [?]
|
78
|
+
|
79
|
+
mencoder 3596.82 seemed *way* too early frame-wise...
|
80
|
+
used: mencoder1 -ss 3596.82 -endpos 3 -oac copy -ovc copy title00.ts.mencoder.fulli.mpg -o title00.ts.mencoder.fulli.mpg.mencoder.3596.82.mpg
|
81
|
+
NB: "non knuckles" *is* the first transition frame...
|
82
|
+
and it "should" be OSD, above...huh? the ts file is off?
|
83
|
+
|
84
|
+
title00.ts.fulli
|
85
|
+
AVS 59:56.887 [phew pretty close again...what?]
|
86
|
+
conclusion: the ts is a bit off somehow? what?
|
87
|
+
powerproducer: 56.86 or 56.90
|
88
|
+
|
89
|
+
AVS on original mkv:
|
90
|
+
non finger frame: 56.966 (previous was .926)
|
91
|
+
|
4
92
|
== ? ==
|
5
93
|
|
94
|
+
mkv2vob just extracts singles, not re-muxes them [not useful here]
|
95
|
+
mkvmerge only ... [not useful here]
|
96
|
+
|
6
97
|
conclusions: mencoder -forceidx can make a copied rip file play great in mencoder [and presumably be cut right?]
|
7
|
-
makemkv has no problems with resets.
|
8
|
-
VLC playing any mpeg *file* is actually pretty close to right on
|
98
|
+
makemkv has no problems with/signs of internal resets.
|
99
|
+
VLC playing any mpeg *file* is actually pretty close to right on [?]
|
9
100
|
|
10
101
|
dvdoutmplayer.mpg.mencoder.ofps.mpg did not save avidemux
|
11
102
|
|
12
|
-
VLC playing
|
103
|
+
VLC playing mpeg *file* is actually pretty accurate. Oh the insanity...I guess the extra abstraction of reading from disc kills it.
|
13
104
|
|
14
105
|
mplayer playing mplayergrab *does* reset internally...and osd also fails...interesting...
|
15
106
|
*however* running mencoder1 -forceidx c.mpg -ovc copy -oac copy -o c.mencoderidx.mpg *does fix it* (for mplayer anyway...)
|
@@ -138,9 +229,10 @@ maybe if I use ffmpeg to fulli it first...
|
|
138
229
|
My first question is...does handbrake and makemkv match, +- fulli
|
139
230
|
|
140
231
|
makemkv => tsmuxer => ts
|
141
|
-
|
142
|
-
|
143
|
-
|
232
|
+
avidemux:
|
233
|
+
still needed frame shifter...
|
234
|
+
audio still off...
|
235
|
+
transition 86250 59:57.347
|
144
236
|
|
145
237
|
I seem unable to very the frames of the HANDBRAKE one LOL. It keeps segfaulting Avidemux no matter what it's status...
|
146
238
|
plus I can't compare except by framecount, which is probably messed up anyway...hmm...
|
@@ -443,27 +535,19 @@ handbrake -> ffmpeg I think sameq -> mencoder split
|
|
443
535
|
|
444
536
|
National Treasure [2004] {English} [XviD].srt doesn't seem to match up with mplayer OSD, like 6 seconds off per hour?
|
445
537
|
mplayer OSD seems way off...or actually match normal players whoa!?
|
446
|
-
|
447
538
|
865
|
448
539
|
01:28:47,322 --> 01:28:48,864
|
449
540
|
… we have…
|
450
|
-
|
451
541
|
866
|
452
542
|
01:28:49,908 --> 01:28:51,325
|
453
543
|
… dragons.
|
454
|
-
|
455
|
-
|
456
544
|
dvd subs:
|
457
|
-
|
458
545
|
869
|
459
|
-
|
460
546
|
01:28:47,602 --> 01:28:49,126
|
461
547
|
<i>...we have...</i>
|
462
|
-
|
463
548
|
870
|
464
549
|
01:28:50,205 --> 01:28:51,604
|
465
550
|
<i>...dragons.</i>
|
466
|
-
|
467
551
|
0.3 off?
|
468
552
|
|
469
553
|
how to train dragon DVD srt right on with mplayer DVD 29.97
|
@@ -15,10 +15,11 @@ This file is part of Sensible Cinema.
|
|
15
15
|
You should have received a copy of the GNU General Public License
|
16
16
|
along with Sensible Cinema. If not, see <http://www.gnu.org/licenses/>.
|
17
17
|
=end
|
18
|
-
|
19
18
|
require 'ostruct'
|
20
19
|
require File.expand_path(File.dirname(__FILE__) + '/common')
|
21
|
-
|
20
|
+
|
21
|
+
Dir.chdir '..' # need to run in the main folder, common moves us to spec...
|
22
|
+
load 'bin/sensible-cinema'
|
22
23
|
|
23
24
|
module SensibleSwing
|
24
25
|
describe MainWindow do
|
@@ -27,8 +28,10 @@ module SensibleSwing
|
|
27
28
|
MainWindow.new.dispose# doesn't crash :)
|
28
29
|
end
|
29
30
|
|
31
|
+
Sintel_ID = '79df7b12|8b27d001'
|
32
|
+
|
30
33
|
it "should auto-select a EDL if it matches a DVD's title" do
|
31
|
-
MainWindow.new.single_edit_list_matches_dvd(
|
34
|
+
MainWindow.new.single_edit_list_matches_dvd(Sintel_ID).should_not be nil
|
32
35
|
end
|
33
36
|
|
34
37
|
it "should not auto-select if you pass it nil" do
|
@@ -113,7 +116,7 @@ module SensibleSwing
|
|
113
116
|
before do
|
114
117
|
@subject = MainWindow.new
|
115
118
|
@subject.stub!(:choose_dvd_drive) {
|
116
|
-
["mock_dvd_drive", "Volume",
|
119
|
+
["mock_dvd_drive", "Volume", Sintel_ID] # happiest baby on the block
|
117
120
|
}
|
118
121
|
@subject.stub!(:get_mencoder_commands) { |*args|
|
119
122
|
args[-5].should match(/abc/)
|
@@ -391,7 +394,7 @@ module SensibleSwing
|
|
391
394
|
count = 0
|
392
395
|
DriveInfo.stub!(:md5sum_disk) {
|
393
396
|
count += 1
|
394
|
-
|
397
|
+
Sintel_ID
|
395
398
|
}
|
396
399
|
@subject.choose_dvd_and_edl_for_it
|
397
400
|
@subject.choose_dvd_and_edl_for_it
|
@@ -22,21 +22,71 @@ require 'sane'
|
|
22
22
|
|
23
23
|
describe SubtitleProfanityFinder do
|
24
24
|
|
25
|
-
describe "should parse out
|
25
|
+
describe "should parse out various profanities" do
|
26
26
|
|
27
27
|
output = SubtitleProfanityFinder.edl_output ['dragon.srt']
|
28
28
|
|
29
|
-
|
30
|
-
|
29
|
+
describe "heck" do
|
30
|
+
it "should include the bad line with timestamp" do
|
31
|
+
output.should match(/00:00:54.929.*"he\.\."/)
|
32
|
+
end
|
33
|
+
|
34
|
+
it "should include the description in its output" do
|
35
|
+
output.should include("e he.. b")
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
describe "deity various" do
|
40
|
+
it "should parse output plural deity" do
|
41
|
+
output.should include("nordic [deity]s ")
|
42
|
+
end
|
43
|
+
|
44
|
+
it "should parse out deity singular and at very end" do
|
45
|
+
output = SubtitleProfanityFinder.edl_output ['deity_end.srt']
|
46
|
+
output.should include("fortress is our [deity]")
|
47
|
+
end
|
48
|
+
|
49
|
+
it "should parse out <i> et al " do
|
50
|
+
output = SubtitleProfanityFinder.edl_output ['deity_end.srt']
|
51
|
+
output.should_not include(" i ")
|
52
|
+
output.should_not include("<i")
|
53
|
+
output.should_not include("huntingand")
|
54
|
+
output.should_not include(" ")
|
55
|
+
end
|
56
|
+
|
31
57
|
end
|
32
58
|
|
33
|
-
|
34
|
-
|
59
|
+
describe 'full word only profanities' do
|
60
|
+
|
61
|
+
output2 = SubtitleProfanityFinder.edl_output ['arse.srt']
|
62
|
+
it 'should not parse it if it\'s in other words' do
|
63
|
+
output2.should_not include "a..ume"
|
64
|
+
output2.should_not include "he..o" # todo: positive ex: ... :P
|
65
|
+
end
|
66
|
+
|
67
|
+
it 'should parse them at EOL' do
|
68
|
+
output2.should include '00:00:55.069' # EOL
|
69
|
+
output2.should include "00:00:55.071" # full line...
|
70
|
+
output2.should include '00:00:55.066' # BOL
|
71
|
+
end
|
72
|
+
|
73
|
+
it 'should replace l for i' do
|
74
|
+
output2.should include "065" # implies it got the substutition right...
|
75
|
+
end
|
76
|
+
|
77
|
+
it 'should keep apostrophes' do
|
78
|
+
output2.should include "don't"
|
79
|
+
end
|
80
|
+
|
81
|
+
it 'should not disdain impass' do
|
82
|
+
output2.should_not include "impa.."
|
83
|
+
end
|
84
|
+
|
35
85
|
end
|
36
86
|
|
37
87
|
end
|
38
88
|
|
39
|
-
describe "it should take optional params" do
|
89
|
+
describe "it should take optional user params" do
|
40
90
|
output = SubtitleProfanityFinder.edl_output ['dragon.srt', 'word', 'word']
|
41
91
|
|
42
92
|
it "should parse out the word word" do
|
@@ -15,9 +15,9 @@
|
|
15
15
|
GOTO DONE
|
16
16
|
|
17
17
|
:NOVENDORDIR
|
18
|
-
@echo "it appears you downloaded sensible cinema straight from github--please download it instead
|
18
|
+
@echo "it appears you downloaded sensible cinema straight from github--please download it instead fromhttps://sourceforge.net/projects/sensible-cinema/files/ for it to work properly"
|
19
19
|
@pause
|
20
|
-
@start
|
20
|
+
@start https://sourceforge.net/projects/sensible-cinema/files
|
21
21
|
|
22
22
|
@rem fall through
|
23
23
|
|
data/todo.inventionzy.txt
CHANGED
@@ -1,16 +1,4 @@
|
|
1
1
|
=== patentzy yes actually do vaguely ordered ===
|
2
|
-
cheap minimize demo "fake auto" :)
|
3
|
-
cheap static-ify demo for mutes
|
4
|
-
also a straight "half mute" demo, using volume downs/ups
|
5
|
-
cheap minimize via (probably foreground window + API real windows API)
|
6
|
-
url -> url inference [hopefully this is cake...]
|
7
|
-
fix the failing 9 digit test the fancy shmancy way :P
|
8
|
-
can pass in a profanity command line
|
9
|
-
can handle dual md5's
|
10
|
-
youtube: use the javascript API somehow, like http://universalsubtitles.org/en does
|
11
|
-
phase 1: does they use inferred timestamp? can I use that generally, too? [do phase 1--publish simple javascript demo of it muting for awhile after startup]
|
12
|
-
just in case youtube takes over the world
|
13
|
-
|
14
2
|
blu-ray OCR
|
15
3
|
|
16
4
|
both mute and blank when blanking by default...
|
data/todo.open_edl_list_org.txt
CHANGED
@@ -70,4 +70,7 @@ http://www.fubarrio.com/2010/01/family-films-and-edited-movies/
|
|
70
70
|
http://www.motleyvision.org/2008/mormon-versions-of-netflix-youtube-and-sort-of-itunes/^M
|
71
71
|
lds.net
|
72
72
|
|
73
|
-
http://www.techenclave.com/applications/possible-skip-certain-violence-parts-movie-175218.html
|
73
|
+
http://www.techenclave.com/applications/possible-skip-certain-violence-parts-movie-175218.html
|
74
|
+
|
75
|
+
post here:
|
76
|
+
http://www.google.com/search?rlz=1C1SKPL_enUS426US426&sourceid=chrome&ie=UTF-8&q=watch+edited+movies+netflix&safe=active#q=watch+edited+movies+netflix&hl=en&safe=active&rlz=1C1SKPL_enUS426US426&prmd=ivnsfd&ei=ByAFTuO0OYPHgAf63byuDQ&start=20&sa=N&bav=on.2,or.r_gc.r_pw.&fp=e1768da1ce57202d&biw=1469&bih=863
|