sensible-cinema 0.20.5 → 0.21.3
Sign up to get free protection for your applications and to get access to all the features.
- data/ChangeLog +29 -0
- data/LICENSE.TXT +18 -13
- data/README +84 -51
- data/Rakefile +10 -9
- data/TODO +135 -60
- data/VERSION +1 -1
- data/bin/monkey.png +0 -0
- data/bin/sensible-cinema-cli +8 -3
- data/bin/sensible-cinema.rb +169 -76
- data/development.txt +29 -0
- data/experimental_readme.txt +18 -56
- data/go.bat +5 -2
- data/how_to_create.txt +31 -35
- data/lib/edl_parser.rb +28 -6
- data/lib/mencoder_wrapper.rb +5 -5
- data/lib/ocr.rb +4 -4
- data/lib/overlayer.rb +14 -10
- data/lib/screen_tracker.rb +15 -5
- data/lib/swing_helpers.rb +1 -1
- data/sensible-cinema.gemspec +30 -13
- data/spec/edl_parser.spec.rb +1 -1
- data/spec/images/netflix_a0.bmp +0 -0
- data/spec/images/netflix_a1.bmp +0 -0
- data/spec/images/netflix_a2.bmp +0 -0
- data/spec/images/netflix_a3.bmp +0 -0
- data/spec/images/netflix_a4.bmp +0 -0
- data/spec/images/netflix_a5.bmp +0 -0
- data/spec/images/netflix_a6.bmp +0 -0
- data/spec/images/netflix_a7.bmp +0 -0
- data/spec/images/netflix_a8.bmp +0 -0
- data/spec/images/netflix_a9.bmp +0 -0
- data/spec/ocr.spec.rb +11 -9
- data/spec/screen_tracker.spec.rb +1 -1
- data/spec/sensible_cinema_gui.spec.rb +9 -8
- data/vendor/SetPriority.exe +0 -0
- data/vendor/readme.txt +120 -0
- data/zamples/edit_decision_lists/dvds/happiest baby on the block.txt +1 -1
- data/zamples/edit_decision_lists/dvds/legend_of_the_guardians_the_owls_of_gahoole.txt +18 -0
- data/zamples/edit_decision_lists/dvds/making_marriage_work.txt +17 -0
- data/zamples/edit_decision_lists/netflix/greatest_story_ever_told_netflix.txt +10 -0
- data/zamples/edit_decision_lists/{example_edit_decision_list.txt → old_not_yet_updated/example_edit_decision_list.txt} +0 -0
- data/zamples/edit_decision_lists/{old_not_yet_update → old_not_yet_updated}/youtube/gummy_bear_song_youtube.txt +0 -0
- data/zamples/edit_decision_lists/{old_not_yet_update → old_not_yet_updated}/youtube/nuki_song_youtube.txt +0 -0
- data/zamples/players/netflix/netflix_firefox_non_maximized.txt +25 -0
- metadata +39 -44
data/ChangeLog
CHANGED
@@ -1,3 +1,32 @@
|
|
1
|
+
== 0.21.3 ==
|
2
|
+
|
3
|
+
Fix installation mistake.
|
4
|
+
Add a "netflix instant" descriptor. Seems to work well on firefox on windows.
|
5
|
+
|
6
|
+
Note also that anything you can view on your computer you can view precisely the same,
|
7
|
+
and with audio, by capturing and "beaming" the screen (like playon.tv does) to your
|
8
|
+
console or to another computer. See also VLC, which can stream arbitrary streams,
|
9
|
+
including the current system screen, and the current system sound, if you pass it
|
10
|
+
the right directshow parameters.
|
11
|
+
|
12
|
+
You could also use a projector to project anything you see on your computer.
|
13
|
+
|
14
|
+
Note also that with the previous code (screen tracker), it already had the capability to do
|
15
|
+
"mutes" and "blank out overlays" simultaneously, for quite a few releases.
|
16
|
+
|
17
|
+
== 0.21.2 ==
|
18
|
+
|
19
|
+
Make fast preview faster, some minor cleanups.
|
20
|
+
|
21
|
+
== 0.21.1 ==
|
22
|
+
|
23
|
+
Set lower priority for processes better.
|
24
|
+
|
25
|
+
== 0.20.5 ==
|
26
|
+
|
27
|
+
Now allow for editing using EDL mode only.
|
28
|
+
Also lower the priority for [most] processes during create time.
|
29
|
+
|
1
30
|
== 0.20.3 ==
|
2
31
|
|
3
32
|
Minor aesthetics, also it works now with mplayer EDL mode.
|
data/LICENSE.TXT
CHANGED
@@ -1,24 +1,29 @@
|
|
1
1
|
All files (c) Roger Pack 2010
|
2
|
-
All files
|
3
|
-
The edit lists are CC license, like wikipedia.
|
2
|
+
All files released under the GPLv3 license [1] unless otherwise specified. Ping me if you want/need this changed at all.
|
4
3
|
|
5
|
-
|
4
|
+
The edit lists, however are public domain.
|
6
5
|
|
7
|
-
|
6
|
+
Note: may call out to some 3rd party libraries/executables under their own (separate, open source) licenses.
|
7
|
+
|
8
|
+
So...is this legal?
|
8
9
|
|
9
10
|
Unclear. In general ripping personal DVD's is legal.
|
10
|
-
And making "backup copies" of commercial DVD's (I think--I'm no laywer) may fall under fair use.
|
11
|
+
And making "backup copies" of commercial DVD's (I think--I'm no laywer) may fall under fair use [3] .
|
12
|
+
|
11
13
|
It is controversial to use open source software to play/rip commercial DVD's.
|
12
14
|
There are a few conflicting views.
|
13
15
|
Sensible-cinema doesn't actually do any decryption or decoding, nor has any knowledge of it.
|
14
16
|
It doesn't even have knowledge
|
15
17
|
as to whether the DVD being ripped is encrypted or not. We don't distribute sensible-cinema with
|
16
|
-
the ripping program, either (the user must install it later).
|
18
|
+
the ripping program, or any ripping codes, either (the user must install it later after being prompted).
|
17
19
|
You can ask the authors of that program if it is legal. Apparently
|
18
20
|
libdvdcss (which the other programs that it calls out to use) has never been legally challenged in court (or so they say),
|
19
21
|
and uses a slightly different algorithm than those that have, so the jury's out.
|
20
|
-
|
21
|
-
|
22
|
+
Also since we only call out to another (separate) executable, we're as legal as audacity calling out to winlame.dll for its
|
23
|
+
mp3 conversions, or perhaps similar to Handbrake calling out to VLC Media Player. Use only after knowing the risk.
|
24
|
+
Using sensible-cinema is also might not be more unethical than ripping your DVD collection to your hard
|
25
|
+
drive so you can "keep your DVD's all in one place" or what not (which might be fair use), since it
|
26
|
+
basically saves away the original with sections removed. Only original content is saved.
|
22
27
|
It's about the same as using VLC media player to watch a DVD, which also uses libdvdcss.
|
23
28
|
Also note that if you watch an edited DVD in a commercial DVD player, your are using a DVD player that conforms
|
24
29
|
with encryption specifications, so that might have some sway.
|
@@ -32,16 +37,15 @@ regarding its use themselves, since they re-distribute no edited media,
|
|
32
37
|
nor distribute cracking codes. Check your country's rules first.
|
33
38
|
If it's illegal, don't use it!
|
34
39
|
|
35
|
-
Note: do not redistribute/re-sell edited DVD's. We have learned
|
36
|
-
redistributing edited commercial DVD's is against copyright in the US. We hope that sensible-cinema
|
40
|
+
Note: for sure do not redistribute/re-sell edited DVD's. We have learned from clean flicks that
|
41
|
+
redistributing (well at least renting/selling) edited commercial DVD's is against copyright in the US. We hope that sensible-cinema
|
37
42
|
is more legal, since you can get the DVD's from wherever you want, and keep the original.
|
38
43
|
Please don't redistribute. If creating copies of commercial DVD's is illegal
|
39
44
|
in your country, then don't do it! Use the "watch in realtime" option.
|
40
|
-
|
41
45
|
DO NOT MAKE ILLEGAL COPIES.
|
42
46
|
|
43
47
|
In terms of copyright, it could be legal under the The Family Home Movie Act of 2005,
|
44
|
-
at least in the United States, when viewed using the "playlist" option (v 0.10'ish,
|
48
|
+
at least in the United States, when viewed using the "playlist" option (v 0.10'ish, later removed--used VLC), or the "realtime" option (0.18.0'ish +, using mplayer).
|
45
49
|
In general, if I have the original DVD sitting next to my TV, I don't feel bad about watching
|
46
50
|
its edited copy, but please consult a laywer first if you have any concerns.
|
47
51
|
|
@@ -69,4 +73,5 @@ USING THIS SOFTWARE MIGHT BE ILLEGAL IN SOME COUNTRIES
|
|
69
73
|
Please check with your legal advisor, and if this is the case in your country, you are NOT licensed to use this freeware.
|
70
74
|
|
71
75
|
[1] http://www.gnu.org/licenses/gpl.html, also gplv3 file.
|
72
|
-
[2] http://www.videolan.org/support/faq.html
|
76
|
+
[2] http://www.videolan.org/support/faq.html
|
77
|
+
[3] http://www.macworld.com/article/150731/2010/04/dvdripping_faqs.html
|
data/README
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
Sensible-cinema (also known to us as "paranoid cinema" [our own inside joke ha ha])
|
1
|
+
Sensible-cinema (also known to us as "paranoid cinema" [our own inside joke ha ha]) allows you to apply
|
2
2
|
pre-programmed delete lists (e.g. Edit Decision Lists [2]) to DVD's you already own.
|
3
3
|
|
4
4
|
I.e. you can play or edit a DVD to "mute out" or skip certain scenes.
|
@@ -7,12 +7,12 @@ This allows you to sit back and relax as you watch a more "sensiblized" showing
|
|
7
7
|
|
8
8
|
To use it, basically install it, insert an original DVD that you want to see edited, then run sensible cinema.
|
9
9
|
It will pop up some windows where you choose what to do.
|
10
|
+
|
10
11
|
You can either watch it edited, or created an edited version of the DVD, on your hard drive.
|
11
|
-
You could burn that edited file to a new DVD, if you desire and have a DVD burner on your computer.
|
12
|
+
You could also burn that edited file to a new DVD, if you desire and have a DVD burner on your computer.
|
12
13
|
|
13
14
|
How? Sensible is essentially a linear editor [1] that applies Edit Decision Lists [2] to videos, by wrapping
|
14
|
-
a few freely available open source programs [3]
|
15
|
-
to accomplish the editing for you.
|
15
|
+
a few freely available open source programs [3] to accomplish the editing for you.
|
16
16
|
|
17
17
|
Note that the whole process can at times take hours, so budget some time for it.
|
18
18
|
|
@@ -20,7 +20,7 @@ Also note that just because a video lacks profanity...does not immediately make
|
|
20
20
|
I'd suggest carefully evaluating your motives, and going with those.
|
21
21
|
Sensible cinema does not a clean movie make of a dirty one. Don't watch it if it's not wholesome! Be nice to yourself!
|
22
22
|
dove.org is a good reference for discovering the "uplifting" level of movies [4]. And of course sensible cinema does help
|
23
|
-
a little bit.
|
23
|
+
a little bit with that, too.
|
24
24
|
Also note that even if you have an edited copy of a DVD floating around, if you have kids, chances are they
|
25
25
|
will eventually find (and watch) the unedited originals, so be careful there, and do what is needful.
|
26
26
|
|
@@ -28,16 +28,14 @@ Enjoy your movies!
|
|
28
28
|
|
29
29
|
[1] http://en.wikipedia.org/wiki/Linear_video_editing
|
30
30
|
[2] http://en.wikipedia.org/wiki/Edit_decision_list
|
31
|
-
[3] mostly GPL programs, see http://www.gnu.org/licenses/ VLC Media Player, Mplayer/mencoder, ffmpeg,
|
31
|
+
[3] mostly GPL programs, see http://www.gnu.org/licenses/ VLC Media Player, Mplayer/mencoder, ffmpeg, et al.
|
32
32
|
[4] http://lds.org/library/display/0,4945,161-1-11-1,00.html search for the word "wholesome"
|
33
33
|
|
34
34
|
== Installation ==
|
35
35
|
|
36
|
-
|
37
|
-
then unzip it (right click -> Extract all)
|
38
|
-
then "click into it" and search for and run the file "run sensible cinema.bat"
|
36
|
+
Instructions available here: http://rogerdpack.t28.net/sensible-cinema/
|
39
37
|
|
40
|
-
== Creating Your Own Delete Lists, or modifying previously existing ones ==
|
38
|
+
== Creating Your Own Delete Lists, or modifying the previously existing ones ==
|
41
39
|
|
42
40
|
See the accompanied how_to_create.txt file.
|
43
41
|
|
@@ -50,16 +48,19 @@ A. You could burn a new DVD with it. First create it on your hard drive. Then
|
|
50
48
|
For OS X : iDVD might work well.
|
51
49
|
You might be able to move your laptop over to near your TV and hook it in from there.
|
52
50
|
Or buy a very long cord and plug it in as an extra monitor from your desktop.
|
51
|
+
You could buy a projector, attach it to your computer as a display, and then use that to display the video.
|
53
52
|
If you're interested in also being able to "beam" it from your computer to your game console (ex: PS3) ping me--I might have
|
54
|
-
something in mind that could help, though hasn't been created yet.
|
53
|
+
something in mind that could help, though hasn't been created yet. (Playon.tv does something like this, too, but
|
54
|
+
I might come up with a competitor to it if the same is desired).
|
55
|
+
If you're really good you could try VGA over an Ethernet cable, too: http://ps3mediaserver.org/forum/viewtopic.php?f=6&t=5731#p34279
|
55
56
|
|
56
57
|
Q. I want to give an edited DVD to a friend, how do I do that?
|
57
|
-
A. Probably give them the original DVD and a link to sensible-cinema :)
|
58
|
-
You may want to loan them a DVD burner if they don't have one.
|
58
|
+
A. Probably give them the original DVD and email them a link to download and play it using sensible-cinema :)
|
59
|
+
You may want to loan them a DVD burner if they don't have one and want one, too.
|
59
60
|
|
60
61
|
== Caveats ==
|
61
62
|
|
62
|
-
NB that "someone" has to create a delete list, per DVD.
|
63
|
+
NB that "someone" has to first create a delete list, per DVD.
|
63
64
|
If one doesn't yet exist for the DVD you want edited,
|
64
65
|
you could employ somebody to create it, or create it yourself. Make sure to submit it
|
65
66
|
back to us when you're done, so that everyone can benefit from it.
|
@@ -70,63 +71,78 @@ Also note that if your DVD has scratches that cause it to skip, the time signatu
|
|
70
71
|
== Motivation ==
|
71
72
|
|
72
73
|
The initial motivation for the project was that I dislike deity profanity in movies.
|
73
|
-
And
|
74
|
-
|
75
|
-
Also sometimes only certain scenes in movies
|
76
|
-
and I'd rather not watch a movie that has them.
|
74
|
+
And really any profanity is jarring, if you're not used to it in real life, and can
|
75
|
+
put you a bit on edge when you watch a movie.
|
76
|
+
Also sometimes only certain scenes (read sex scenes) in movies are offensive to me,
|
77
|
+
and don't contribute to the overall plot, and I'd rather not watch a movie that has them.
|
78
|
+
But I still want to be able to watch movies at all :)
|
79
|
+
|
77
80
|
I tried Clearplay (a realtime filtering DVD player)
|
78
|
-
but (for me) it didn't seem to cut it. It costs money (I'm too cheap to pay--and many
|
79
|
-
many other people don't
|
81
|
+
but (for me) it didn't seem to cut it. It costs money monthly (I'm too cheap to pay--and many
|
82
|
+
many other people don't use it because of that...). Their
|
80
83
|
filters sometimes don't cut out all unwanted content (ex: Saints and
|
81
|
-
Soldiers left profanity in
|
82
|
-
|
83
|
-
are slightly
|
84
|
-
|
85
|
-
confusing subscription policy,
|
86
|
-
|
87
|
-
|
88
|
-
They
|
89
|
-
|
90
|
-
|
91
|
-
|
84
|
+
Soldiers left profanity in...which wasn't what I had
|
85
|
+
expected). Others have noted that sometimes their edit timings (or perhaps DVD players)
|
86
|
+
are slightly mismatched so that it will mute sections just previous to profanity, while
|
87
|
+
not muting the profanity itself. Clearplay apparently also runs a rather
|
88
|
+
confusing subscription policy, I'm told [1], as well as selling DVD players that
|
89
|
+
seem to be a bit lackluster at times [2].
|
90
|
+
Clearplay also has little community collaboration/review (though you can email them feedback).
|
91
|
+
They no longer seem to have a "request a filter" option, though they used to.
|
92
|
+
They also don't have filters for all movies that I, at times, would like to watch edited (Condorman and Tron
|
93
|
+
lacking last time I checked...probably because they are too
|
94
|
+
obscure.) Also, some people watch movies only on computer, and they
|
95
|
+
no longer have a computer player, only DVD players. They also don't edit streamed
|
92
96
|
online movies either (last time I checked, anyway). So overall I
|
93
97
|
wanted to build my own that overcame some of these hurdles and was
|
94
|
-
also more accessible/open.
|
98
|
+
also more accessible/open/cheap.
|
99
|
+
I also emailed them once (2003?) to inform them I'd be making an open source
|
100
|
+
equivalent, and haven't heard back from them, which I assume to mean implicitly
|
101
|
+
they're all for the idea :)
|
95
102
|
|
96
103
|
I also wanted to get a prototype out there of some of my ideas so that
|
97
|
-
others can't patent them and pretend that they were inventors :)
|
104
|
+
others can't patent them and pretend that they were first inventors :)
|
98
105
|
|
99
106
|
So originally the project started off as a prototype that could "watch hulu (online) and netflix instant movies
|
100
|
-
edited" (it uses screen
|
101
|
-
timestamp,
|
102
|
-
However, this functionality, though working, is disabled for patent
|
103
|
-
|
104
|
-
Some older released versions had it enabled, but not
|
107
|
+
edited" (it uses/used screen snap-shotting and track, using OCR, the on-screen
|
108
|
+
timestamp of the player, monitor it for specific times, and react appropriately).
|
109
|
+
However, this functionality, though working, is disabled currently for patent
|
110
|
+
concerns.
|
111
|
+
Some older released versions had it enabled, but not latest releases.
|
105
112
|
Then I realized I could basically create the same effect using
|
106
|
-
(more patent friendly) pre-processing and deletion lists (basically
|
113
|
+
(more patent friendly) pre-processing and/or deletion lists (basically
|
107
114
|
Edit Decision Lists enforced using playlists for
|
108
115
|
VLC, like play from second x to y, then from x to mu, etc.).
|
109
|
-
I just pass in a playlist, it does all the work for me.
|
110
|
-
There are a few released versions that
|
116
|
+
I just pass in a playlist, it does all the work for me, without real-time tracking.
|
117
|
+
There are a few released versions that did this.
|
111
118
|
Then it occurred to me that you could grab the several clean segments
|
112
119
|
off a DVD, and piece them together to create an edited copy. This avoids
|
113
120
|
realtime tracking. This seems reasonably patent friendly, so it is
|
114
121
|
what I release here.
|
122
|
+
I also added mplayer functionality later, which does real-time tracking, as well.
|
123
|
+
The playlist option is currently disabled, as it was deemed too user-non-friendly.
|
115
124
|
|
116
|
-
See also the LICENSE.TXT file.
|
125
|
+
See also the LICENSE.TXT file for more legal information.
|
117
126
|
|
118
|
-
[1] http://www.amazon.com/
|
127
|
+
[1] http://www.amazon.com/gp/product/B002YPRW7S/ref=cm_rdp_product
|
128
|
+
"...I agree that it is not made clear on their website that if you don't continue your membership, you can't continue
|
129
|
+
to use the [previously downloaded] filters"
|
119
130
|
|
131
|
+
[2] http://deseretbook.com/ClearPlay-HDMI-DVD-Player-30-Day-Trial-Membership/i/5038491
|
132
|
+
"We bought a clearplay player about 2 years ago. It worked great, until it just stopped working. I called their support line,
|
133
|
+
and they told us the model we got was defective, and that the new one was much better and we could get it at a discount, but
|
134
|
+
the next one just died also."
|
135
|
+
|
120
136
|
== License ==
|
121
137
|
|
122
|
-
See the included LICENSE file for licensing and usage terms (basically it's under gplv3 for all the source).
|
138
|
+
See the included LICENSE.TXT file for licensing and usage terms (basically it's under gplv3 for all the source).
|
123
139
|
Some other programs are (distributed separately and) used by this one, typically they are under the gplv2 license.
|
124
140
|
|
125
141
|
All files (c) 2010 Roger Pack
|
126
142
|
|
127
143
|
== Related ==
|
128
144
|
|
129
|
-
The concept isn't too novel. Some other previously existing examples:
|
145
|
+
The concept isn't too novel. Some other previously existing related type examples:
|
130
146
|
|
131
147
|
Edited "airplane edit" style movies.
|
132
148
|
Commercial TV (ABC, NBC) show their own (edited) movies.
|
@@ -151,7 +167,7 @@ http://forums.gbpvr.com/showthread.php?10606-Automated-Cutting-and-Transcoding-G
|
|
151
167
|
http://www.imdb.com/swiki/special?ParentalGuideHelp (search for "scene description")
|
152
168
|
http://www.mythtv.org/wiki/Removing_Commercials
|
153
169
|
Using the remote control with the pause, mute, stop, fast forward, and play buttons, along with previous knowledge of scene locations
|
154
|
-
The scissors and old VHS tapes (Clean Flicks' origin, if I remember correctly).
|
170
|
+
The scissors and old VHS tapes (Clean Flicks' origin, if I remember correctly). http://www.familysafemedia.com/home_movie_editor.html
|
155
171
|
Windows Movie Maker. Allows for users to cut and copy scenes of movies to their heart's content.
|
156
172
|
http://forum.videolan.org/viewtopic.php?f=7&t=56998 VLC Media Player using EDL's via playlists
|
157
173
|
Corel WinDVD has "Quick Clip" settings for capturing from DVD.
|
@@ -181,12 +197,29 @@ If you don't know what this means then you're probably ok and don't have to worr
|
|
181
197
|
"DVDNAV stream read error!"
|
182
198
|
this typically means a dirty or scratched DVD.
|
183
199
|
|
184
|
-
|
200
|
+
You try to play back a sensible cinema-ized video file and it plays back without
|
201
|
+
audio or video (example: windows media player)?
|
202
|
+
|
203
|
+
This probably means you're using windows media player, and don't have "codecs" installed
|
204
|
+
to handle this type of video. Not to fear, just download the "ffdshow tryouts"
|
205
|
+
and, when it gives you the option, be sure to check "mpeg2 video" and then
|
206
|
+
it should "just work." You could also play the file in VLC Media Player or smplayer
|
207
|
+
(there's a button for that).
|
208
|
+
|
209
|
+
== Thanks ==
|
185
210
|
|
186
|
-
|
211
|
+
Thanks to Jarmo for the win32-screenshot gem, mini_magick gem authors, jruby guys, etc.
|
212
|
+
The combination of these tools made programming this actually something of a pleasure.
|
213
|
+
|
214
|
+
== Feedback/Development ==
|
215
|
+
|
216
|
+
Feedback, including feature requests, comments, etc. welcome:
|
217
|
+
|
218
|
+
(for example it's windows only currently--if you want that changed, send an email, etc.):
|
187
219
|
|
188
220
|
Mailing List: http://groups.google.com/group/sensible-cinema
|
189
221
|
|
190
|
-
If you're a developer and want to help out with programmming
|
191
|
-
|
192
|
-
|
222
|
+
If you're a developer and want to help out with programmming or look and feel, etc., please do!
|
223
|
+
See development.txt
|
224
|
+
|
225
|
+
You can see a full list of features from the various releases in the file ChangeLog.txt
|
data/Rakefile
CHANGED
@@ -7,12 +7,12 @@ Jeweler::Tasks.new do |s|
|
|
7
7
|
s.homepage = "http://github.com/rdp"
|
8
8
|
s.authors = ["Roger Pack"]
|
9
9
|
s.add_dependency 'sane', '>= 0.22.0'
|
10
|
-
s.add_dependency 'rdp-win32screenshot', '>= 0.0.
|
10
|
+
s.add_dependency 'rdp-win32screenshot', '>= 0.0.8'
|
11
11
|
s.add_dependency 'mini_magick', '>= 3.1' # for ocr...
|
12
12
|
s.add_dependency 'whichr', '>= 0.3.6'
|
13
13
|
s.add_dependency 'jruby-win32ole'
|
14
14
|
s.add_dependency 'rdp-ruby-wmi'
|
15
|
-
s.add_dependency 'ffi' # mouse, etc.
|
15
|
+
s.add_dependency 'ffi' # mouse, etc. needed at least for MRI
|
16
16
|
s.add_development_dependency 'rspec' # prefer rspec 2 I guess...
|
17
17
|
s.add_development_dependency 'jeweler'
|
18
18
|
s.add_development_dependency 'hitimes' # now jruby compat!
|
@@ -66,7 +66,7 @@ task 'bundle_dependencies' => 'gemspec' do
|
|
66
66
|
Dir['vendor/cache/*'].each{|f|
|
67
67
|
unless f =~ /jruby.*jar/ # that one takes too long to download...
|
68
68
|
FileUtils.rm_rf f
|
69
|
-
raise 'unable to delete ' + f if File.exist?(f)
|
69
|
+
raise 'unable to delete: ' + f if File.exist?(f)
|
70
70
|
end
|
71
71
|
}
|
72
72
|
FileUtils.mkdir_p 'vendor/cache'
|
@@ -75,7 +75,6 @@ task 'bundle_dependencies' => 'gemspec' do
|
|
75
75
|
system("#{Gem.ruby} -S gem unpack #{d.name}")
|
76
76
|
}
|
77
77
|
to_here = "jruby-complete-1.5.5.jar"
|
78
|
-
p 'do you need to delete your old jruby complete...do you?'
|
79
78
|
unless File.exist? to_here
|
80
79
|
url = "/downloads/1.6.0.RC1/jruby-complete-1.6.0.RC1.jar"
|
81
80
|
puts 'downloading in jruby-complete.jar file ' + url
|
@@ -103,7 +102,7 @@ task 'create_distro_dir' do
|
|
103
102
|
spec = eval File.read('sensible-cinema.gemspec')
|
104
103
|
dir_out = spec.name + "-" + spec.version.version + '/sensible-cinema'
|
105
104
|
FileUtils.rm_rf Dir['sensible-cinema-*'] # remove old versions
|
106
|
-
raise 'unable to delete' if Dir[spec.name + '-*'].length > 0
|
105
|
+
raise 'unable to delete zip' if Dir[spec.name + '-*'].length > 0
|
107
106
|
|
108
107
|
existing = Dir['*']
|
109
108
|
FileUtils.mkdir_p dir_out
|
@@ -126,11 +125,13 @@ task 'deploy' do
|
|
126
125
|
p 'copying in'
|
127
126
|
raise unless system("scp #{name} rdp@ilab1.cs.byu.edu:~/incoming")
|
128
127
|
p 'copying over'
|
129
|
-
raise unless system("ssh rdp@ilab1.cs.byu.edu \"scp ~/incoming/#{name} wilkboar@freemusicformormons.com:~/www/rogerdpackt28/sensible-cinema\"")
|
128
|
+
raise unless system("ssh rdp@ilab1.cs.byu.edu \"scp ~/incoming/#{name} wilkboar@freemusicformormons.com:~/www/rogerdpackt28/sensible-cinema/releases\"")
|
130
129
|
end
|
131
130
|
|
132
131
|
desc 'j -S rake bundle_dependencies create_distro_dir ... (releases with clean cache dir, which we need now)'
|
133
132
|
task 'full_release' => [:bundle_dependencies, :create_distro_dir, :build] do # :release sigh
|
133
|
+
raise unless system("git pull")
|
134
|
+
raise unless system("git push origin master")
|
134
135
|
system("cp -r vendor/cache ../cache.bak")
|
135
136
|
gems = Dir['pkg/*.gem']
|
136
137
|
gems[0..-2].each{|f| File.delete f} # kill old versions...
|
@@ -138,8 +139,8 @@ task 'full_release' => [:bundle_dependencies, :create_distro_dir, :build] do # :
|
|
138
139
|
FileUtils.rm_rf 'pkg'
|
139
140
|
Rake::Task["zip"].execute
|
140
141
|
Rake::Task["deploy"].execute
|
141
|
-
system("
|
142
|
-
|
142
|
+
system(c = "cp -r ../cache.bak/* vendor/cache")
|
143
|
+
p 'ran', c
|
143
144
|
|
144
|
-
puts "don't forget to blog about it...
|
145
|
+
puts "don't forget to blog about it...UPDATE THE LINK"
|
145
146
|
end
|
data/TODO
CHANGED
@@ -1,69 +1,137 @@
|
|
1
|
-
==
|
1
|
+
== high prio like blocking bugs ==
|
2
2
|
|
3
3
|
== up next release ==
|
4
4
|
|
5
|
+
a single netflix descriptor
|
6
|
+
post demo of it doing netflix (just screencast local computer)
|
7
|
+
|
8
|
+
== slightly lower than that, only somewhat ordered ==
|
9
|
+
|
10
|
+
can have the mouse jerk "only every so often"
|
11
|
+
use DVD navigator?
|
12
|
+
wow terrifying
|
13
|
+
http://msdn.microsoft.com/en-us/library/dd388584(v=VS.85).aspx
|
14
|
+
http://msdn.microsoft.com/en-us/library/ms787412(VS.85).aspx
|
15
|
+
is there a dshow c++ demo? PlayPeriodInTitleAutoStop EC_DVD_PLAYPERIOD_AUTOSTOP
|
16
|
+
blu-ray descriptor
|
17
|
+
infer from url for netflix
|
18
|
+
post some playon.tv demo screencast..this should prove all shouldn't it [?]
|
19
|
+
|
20
|
+
post a demo of it playing back blu-ray edited, local computer, projector
|
21
|
+
does blu-ray work with my C++ project?
|
22
|
+
post a demo of it playing back via streaming to another computer, +- only streaming a particular region of the screen
|
5
23
|
edl straight DVD replay:
|
6
|
-
work cars
|
24
|
+
work cars, monsters inc
|
7
25
|
clear runnings
|
8
|
-
have ben and chris test it out
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
if
|
16
|
-
|
17
|
-
|
18
|
-
change it to be aggressive sometimes yes, other times no
|
19
|
-
note: can make several different versions, with different filenames, and should rewatch the film after finalizing it (edited), like "grab to hard drive" and have a friend watch it, if desired.
|
26
|
+
have ben and chris test it out, then ask about quality
|
27
|
+
make it so it can suck in from "another wiki" the DL's, at package time
|
28
|
+
check if the python one lines up or not/ping them
|
29
|
+
port to linux
|
30
|
+
add a "play edited file for current DVD" button
|
31
|
+
fix "play DVD unedited" button
|
32
|
+
vendor smplayer * 2
|
33
|
+
test if latest smplayer can work with edl and seek [?]
|
34
|
+
"release" it to developers
|
35
|
+
plug.org, more rubyists?
|
20
36
|
note to previewer "you are about to preview these edits"
|
21
|
-
note you can use fast preview with the other going in the background
|
22
|
-
add "revision"...
|
23
|
-
the "edited.avi" *must* be playable in WMP
|
24
|
-
don't exit program if they don't select a disk :)
|
25
|
-
if they type in a "new" start time, use that as the default end time input too
|
26
|
-
linearize edl's
|
27
|
-
don't use them linear, just linearize
|
28
|
-
mpeg is lossy (at least my current one pass conversion still is...) and smplayer can't play it right unedited
|
29
|
-
frame accurate splitter naive
|
30
|
-
vendorize ffmpeg
|
31
37
|
more DL's
|
32
|
-
my dvd's (loose timestamps...)
|
38
|
+
my dvd's (with loose timestamps...)
|
33
39
|
cars backport real EDL :)
|
34
40
|
enlist chris' help
|
35
|
-
|
36
|
-
|
37
|
-
partner for filters (Jon, Karlie if interested...give beta)
|
41
|
+
friend dvd's, me create Delete List [?]
|
42
|
+
partner for filters (Jon, Karlie [any family interested], and for beta-testing)
|
38
43
|
all only after linearize, new year, frame accurate
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
44
|
+
gherkin'ize
|
45
|
+
after I do my own DVD's
|
46
|
+
ask for more beta testers for use, ask for more beta testers for creation
|
47
|
+
facebook? lds lists?
|
48
|
+
mpeg is lossy (at least my current one pass conversion still is...) and smplayer can't play it right unedited
|
49
|
+
frame accurate splitter naive
|
50
|
+
fast preview: change it to be aggressive sometimes yes, other times no
|
51
|
+
10 minute splits for much faster viewage [edl fast preview seems way too lossy ?]
|
52
|
+
beta release: rinse and repeat with various ppl
|
53
|
+
make website more "pictures-zy"/professional
|
54
|
+
own really long url movie bad scene skipper sensible cinema.t28.net add in there content editor or something lots of google SEO happy words
|
55
|
+
actually, just use sourceforge for hosting...
|
56
|
+
compare various computer DVD timings with physical player's timings...
|
50
57
|
propaganda-ize
|
58
|
+
advertise in LDS newsgroups et al, for beta testers?
|
51
59
|
advertise in christian places
|
52
60
|
blogs that have ever mentioned clearplay :P
|
53
61
|
free google adwords (?)
|
54
|
-
advertise
|
62
|
+
advertise ruby flow
|
55
63
|
only after new year, new LLC
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
64
|
+
http://ldscinema.blogspot.com/
|
65
|
+
advertise facebook (at least their page :) [?]
|
66
|
+
fast preview mode: look for modifications to file, kill mplayer instances for them :)
|
67
|
+
fast preview tends to "go too far" [like the end of profanity is still there when played via the "real way"]
|
68
|
+
better "how to create" file, rename
|
69
|
+
a button for "just play a dvd unedited" for normal users
|
70
|
+
fantom edit DL
|
71
|
+
an editor that can track and overlay...use OCR! :)
|
72
|
+
youtube videos -> new account
|
73
|
+
post demo of it selecting categories.
|
62
74
|
|
63
|
-
== DVD backlog (unordered, some very low prio, basically all never do) ==
|
64
|
-
|
75
|
+
== DVD backlog (totally unordered, some very low prio, basically all never do) ==
|
76
|
+
|
77
|
+
move template .bat's to a template folder
|
78
|
+
have them use a real version of jruby.jar (the right er version)
|
79
|
+
use wget to download [newer version of] jruby, then can use RC2+ then can rename bin's
|
80
|
+
more from that guy, here or there
|
81
|
+
force categories to match [?]
|
82
|
+
K-Lite Standard codec pack might allow for DVD playback free [?]
|
83
|
+
post a demo of it streaming to a console device
|
84
|
+
a fully javascript version...hmm...maybe an applet overlay [post 2020 ?]
|
85
|
+
alpha transparent "grey" overlay (for partial parts of the window)
|
86
|
+
video using play on -> console (+- window only)
|
87
|
+
certain sections: can speed them up, to make them less scary or what not, but you can still see what's happening. Not sure how audio could/should apply here.
|
88
|
+
donate to mplayer, others [?] [VLC ja, which includes libdvdcss, h264 kind of] dvd flick alternative.to, dns hosting
|
89
|
+
google android TV app/iTV ?
|
90
|
+
advertise ldsliving once I have patentable stuff done... [?]
|
91
|
+
md5 the zips at release time
|
92
|
+
somehow map DVD's to the "subdownloader" style subtitles?
|
93
|
+
use their md5 now?
|
94
|
+
advertise related bounties
|
95
|
+
don't exit if a timestamps has same beginning as end, but do warn
|
96
|
+
a pro website
|
97
|
+
the final "edited.avi" really "could/should" be playable in WMP...
|
98
|
+
but double check if they can watch it, either way.
|
99
|
+
vendor ffmpeg
|
100
|
+
can I use ffmpeg to re-sync audio, and be able to re-play the edited copy, and thus avoid the small but extra harddup overhead (basically "just avoid")?
|
101
|
+
I can live with "watching while grabbing" being lack luster...or maybe I can grab it with acodec copy (typically), then reencode it somehow later into something that is friendlier to computer players...or is it encoders?
|
102
|
+
appears the only messed up audio one is smplayer...and probably mplayer with DVD's [?]
|
103
|
+
do this after frame accurate
|
104
|
+
cleanup look of readme file
|
105
|
+
can convert auto to JSON, too, for consumption by other players [?]
|
106
|
+
use voice recognition for profanity [?]
|
107
|
+
easier submit for DL's
|
108
|
+
replay on iphone edited
|
109
|
+
linearize edl's
|
110
|
+
don't use them linear, just linearize
|
111
|
+
add tooltips
|
112
|
+
monkey.png is in bin...
|
113
|
+
better icon
|
114
|
+
better installer etc.
|
115
|
+
note: can do the two types of preview at same time...concurrently...
|
116
|
+
@mplayer: seeking to within EDL failz
|
117
|
+
can make community overlay "comments" somehow or other/whatever cyberlink does :)
|
118
|
+
temple EDL at home, just finish don't burn
|
119
|
+
some way for, super easy, as they play, it can mark the time signature and add it in...like super easy contribution...hmm...
|
120
|
+
auto-upload?
|
121
|
+
mencoder playlist mode/batch file style [?]
|
122
|
+
just youtube for the various videos
|
123
|
+
better icon
|
124
|
+
don't exit program if they don't select a disk originally :)
|
125
|
+
button start EDL playback from dvd here [?] (for create mode)
|
126
|
+
re-play as EDL button for both modes--describe on the how to better
|
127
|
+
fix prio for first ffmpeg instance [huh?]
|
128
|
+
calculating md5...do this while they choose it [low prio] :)
|
129
|
+
@dvd flick: right click on a movie file "write this file to DVD .iso as only title (no menu), burn this file as DVD only title (no menu)"
|
130
|
+
@dvd flick: default should not be to loop
|
131
|
+
@dvd flick: use first aspect ratio by default.
|
132
|
+
burn from files to disc
|
133
|
+
vendorize ffmpeg, then they don't have to install imagemagick...
|
65
134
|
@smplayer: provide a command line param for "extra params to run this time around" or what not...
|
66
|
-
create a "fantom edit"
|
67
135
|
check if a newer version of smplayer (+- forum links) can replace raw usage of mplayer now?
|
68
136
|
integrate sub-titles-zy-er (like the Python fella)
|
69
137
|
or maybe...use theirs?
|
@@ -182,14 +250,20 @@ a "certified clean" list
|
|
182
250
|
advertise my "splitting joining" google doc page. also test the various options there for accurateness :)
|
183
251
|
a check for "newer version available" or not...
|
184
252
|
buy blu-ray decrypter, and drive, try it out.
|
185
|
-
|
253
|
+
|
186
254
|
|
187
255
|
== random non-DVD backlog ... note: just plow forward, to "grab" available ideas...except that for now, just what *I* plan on needing for myself (filters for what I need/want). ==
|
188
|
-
|
256
|
+
|
257
|
+
take out use_class_name for descriptors
|
258
|
+
|
259
|
+
after 2020: DVD Navigator in C++ ?
|
260
|
+
it should track "is paused" better (OCR)
|
261
|
+
|
262
|
+
something that works with cable TV, too, somehow?
|
189
263
|
figure out why I need to uses dvdnav:// sometimes, dvd:// others to not crash :P
|
190
264
|
|
191
265
|
if sued, could use straight mplayer -ss (+- one at a time, or possibly in a playlist [?] like VLC can...)
|
192
|
-
-hr-edl-seek ?
|
266
|
+
-hr-edl-seek ?
|
193
267
|
|
194
268
|
fade in/fade out volume, video
|
195
269
|
make the other stuff work again, since I no longer use YAML...
|
@@ -343,6 +417,8 @@ OCR the captioning as an auto profanity filter? (or perhaps download subtitles t
|
|
343
417
|
|
344
418
|
--server? optionally higher prio?
|
345
419
|
|
420
|
+
@MRI:
|
421
|
+
|
346
422
|
irb(main):001:0> a = File.open('big1', 'w')
|
347
423
|
=> #<File:big1>
|
348
424
|
irb(main):002:0> a.seek 10_000_000_000
|
@@ -358,25 +434,24 @@ package with portable imagemagick (meh)
|
|
358
434
|
create a "book edit list" (word x is at position y...)
|
359
435
|
|
360
436
|
@dvd flick:
|
361
|
-
don't re-encode if not necessary
|
362
437
|
are your highest settings optimal?
|
363
|
-
accept subtitled video...
|
438
|
+
accept subtitled video...huh?
|
439
|
+
accept multi-audio track videos
|
364
440
|
|
365
441
|
@smplayer: your CD config is awful.
|
366
442
|
@mencoder: can't split
|
367
443
|
something like you watch it *with* you friends and can all chat together...hmm...
|
368
|
-
donate money to several projects I use/like :)
|
369
|
-
after have LLC
|
370
444
|
|
371
445
|
@mencoder: ripping like this results in an (avidemux, VLC) fourcc of 'ugh': mencoder2 dvdnav://1 -oac copy -ovc copy -o D:\raw_rip_mpeg_example.avi -endpos 20 -dvd-device E:\
|
372
446
|
|
373
447
|
@jruby: system("mencoder") from a button doesn't get interrupted by an exception [!]
|
374
448
|
@vlc: replay mp4's are too dark.
|
375
449
|
|
376
|
-
@rspec:
|
377
|
-
|
378
|
-
|
379
|
-
|
450
|
+
@rspec:
|
451
|
+
1) EdlParser should raise for end before beginning
|
452
|
+
Failure/Error: proc{ go({"mutes"=>{105=>104.9}})}.should raise_error(/SyntaxError/)
|
453
|
+
expected Exception with message matching /SyntaxError/, got #<SyntaxError: warning--detected an end before a start 104.9 < 105.0>
|
454
|
+
# edl_parser.spec.rb:115
|
380
455
|
# :1
|
381
456
|
|
382
457
|
message confusing :)
|