sensible-cinema 0.9.4 → 0.9.7

Sign up to get free protection for your applications and to get access to all the features.
data/README CHANGED
@@ -6,7 +6,7 @@ It then tracks whichever player you are using, and mutes or blanks out the syste
6
6
  during the scenes specified.
7
7
 
8
8
  It works out of the box with the hulu and VLC players on windows. It isn't hard to
9
- add new players, and probably wouldn't be too hard to add more operating systems.
9
+ add new players, and probably wouldn't be too hard to add more operating systems etc.
10
10
 
11
11
  == How to Use ==
12
12
 
@@ -48,7 +48,7 @@ It will proceed do a few "demo" mutes and blank outs.
48
48
 
49
49
  To program sensible-cinema, you create a scene description list it can use.
50
50
 
51
- An Edit Decision List (EDL) looks something like this trivial example:
51
+ A Program Description List (Edit Decision List--EDL) looks something like this example:
52
52
 
53
53
  mutes:
54
54
  "01:00:00" : "01:01:02.5" # mute from exactly one hour to one hour, one minute, two seconds and a half will be muted.
@@ -66,27 +66,34 @@ To create it, basically you notice something you want to add to the list, add it
66
66
  in your media player, and it should now be muted/blanked out automatically.
67
67
 
68
68
  So here is a way to create your scene descriptions file.
69
- First create a new file [2], and now select it for use in sensible-cinema (even though it's still blank).
70
- Now "preview" your movie. As you do, you're going to add scenes to that file, and then test your additions.
71
69
 
72
- So as you watch when you encounter a questionable scene, go back several seconds using your player's
73
- controls. When you encounter it again, track its beginning and ending time. One way to do this
70
+ First create a new file
71
+
72
+ The easiest way to do this is to start sensible-cinema, then instead of choosing an existing file,
73
+ "right click" on the existing file "example_scene_list.yml" and choose "Copy"
74
+ now right click below the list of files and choose "paste"
75
+ This will create the file "example_scene_list Copy.yml"
76
+ Right click on it, choose rename, and give it a better name.
77
+ Now "right click -> Open" to open it in an editor (recommend installing notepad++ and using that).
78
+ Note that you can edit this file *on the fly* while the player is editing. It will catch
79
+ changes as the file is saved and apply them.
80
+
81
+ Now select it for use in sensible-cinema (even though it's still blank).
82
+ Now "screen" your movie. As you watch it, you're going to add scenes to
83
+ that file, and then re-watch the scene to test your additions.
84
+
85
+ As you watch when you encounter a questionable scene, go back several seconds using your player's
86
+ controls. When you encounter it once again, track its beginning and ending time. One way to do this
74
87
  is to, just before and just after the scene, hit the space bar *in the sensible-cinema window*.
75
88
  Hitting the space bar outputs the current time. If you hit it twice, once before and once after,
76
89
  you should now have two reasonably accurate "timestamps" displayed.
77
- Add the beginning and ending times to your scene descriptions file (changes will be automatically picked up),
78
- then review your additions by rewinding your player and letting it play through the scene in question again.
79
- It should now skip it appropriately. If not, adjust your timestamps and try again.
90
+ Add the beginning and end times to your scene description file (changes will be automatically picked up),
91
+ then review your additions by rewinding your player and letting it play through the scene again.
92
+ It should now skip it (play it "sensibly"). If not, adjust your timestamps and try again.
80
93
 
81
- Once you're done then you can contribute your scene descriptions file if desired, back to the project [1].
94
+ Once you're done then you can contribute your scene descriptions file if desired, back to the project itself [1].
82
95
 
83
96
  [1] http://github.com/rdp/sensible-cinema/issues
84
- [2] The easiest way to do this is to start sensible-cinema, then instead of choosing an existing file,
85
- "right click" on the existing file "example_scene_list.yml" and choose "Copy"
86
- now right click below the list of files and choose "paste"
87
- This will create the file "example_scene_list Copy.yml"
88
- Right click on it, choose rename, and give it a better name.
89
- Now "right click -> Open" to open it in an editor (recommend installing notepad++ and using that).
90
97
 
91
98
  == FAQ ==
92
99
 
@@ -162,7 +169,7 @@ http://forum.bsplayer.com/feature-requests-feedback-suggestions/7157-chapter-pla
162
169
  http://www.inmatrix.com/ "scene cut editor" of the zoom player
163
170
  http://wiki.xbmc.org/?title=EDL_(commercial_skipping)_and_SceneMarker_support (XBMC's scene cut support--also links to more others)
164
171
  http://code.google.com/p/movie-content-editor (same thing, but in Python and only for VLC)
165
- http://clearplay.com similar, but commercial (closed), and only for DVD's (has its own DVD-player)
172
+ http://clearplay.com similar, but commercial (closed source, costs money, no user contribution), and only for DVD's (uses its own DVD-player).
166
173
 
167
174
  though none of them are universal like this one is :)
168
175
 
data/TODO CHANGED
@@ -9,21 +9,40 @@
9
9
  can parse IMDB (require they put in the URL by hand)
10
10
  try the new GOCR sources...
11
11
  PISH
12
- add stuffs to imdb
12
+ add stuffs to imdb hmmm
13
+ more often yell at them "not working"
13
14
 
14
15
  == random backlog ... based on user request..remember: just local files for my own needs...==
15
16
 
17
+ "just choose VLCx55" LOL
18
+
19
+ itunes video on demand
20
+
21
+ blockbuster "rent" on demand, online
22
+
23
+ beep at them when not tracking [?]
24
+
16
25
  note: just plow forward, to "grab" available ideas...except that for now, just what *I*
17
26
  plan on needing for myself (filters for what I need/want).
18
27
 
19
28
  re-advertise on ruby talk
20
29
 
21
- no money making for now...all volunteer...
30
+ a real website
31
+
32
+ advertise on ruby flow
33
+
34
+ no money making for now...all volunteer...more respectful.
35
+ or make it so it can work with an editor of some kind...like a "save here" command line snip this tuck that.
36
+ probably only possible after creating the desktop streamer hmm
22
37
 
23
- an "online anybody can chat while watching this movie" (or anybody can edit this wav and listen to it a overlay...)
38
+ integrate with librivox' audio so you can avoid profanity in classics. Somehow. This would be nice for portable players.
39
+
40
+ itunes player for profanity (music)?
41
+
42
+ an "online anybody can chat while watching this movie" (or anybody can edit this wav and listen to it as overlay...) prefer the latter.
24
43
 
25
44
  an online applet web runnable? Why not?
26
- click here to watch your favorite film edited! Just click! [* yea!]
45
+ click here to watch your favorite film edited on hulu! Just click! [* yea!]
27
46
  a chrome plugin with imdb/community backing :)
28
47
 
29
48
  code refactors: "screen time change", order should be swapped in bin/x output
@@ -44,7 +63,7 @@ TSR that monitors "oh you're opening a VLC? you're playing the E drive? That's b
44
63
 
45
64
  a netflix online player descriptor
46
65
 
47
- add my stuff to imdb...?
66
+ add my stuff to imdb...? wiki ?
48
67
 
49
68
  make youtube work if you have *several* open
50
69
 
@@ -75,6 +94,7 @@ replay certain film sections :P
75
94
 
76
95
  overlay/replace current playback with some url of audio or video
77
96
  user editable overlays (like a wiki...)
97
+ realtime overlays (like group chat for those watching the film...)
78
98
 
79
99
  control volume programmatically (using mouse) on the player itself.
80
100
  control mute programmatically (using mouse) on the player itself.
@@ -108,4 +128,12 @@ star trek: generations first profanidade...
108
128
 
109
129
  "Showing EDL Information During Playback"
110
130
 
111
- integrate with google TV/bravia...maybe...somehow...boxxee?
131
+ integrate with google TV/bravia...maybe...somehow...boxxee?
132
+ itunes TV, too?
133
+
134
+ OCR the captioning as an auto profanity filter? (or perhaps download subtitles to be able to pre-screen), like the python fella does..
135
+ what else does python do that we can learn from? can we combine projects somehow, perhaps?
136
+
137
+ make an index of watchable on imdb based on stars (?)
138
+
139
+ http://en.wikipedia.org/wiki/RiffTrax
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.9.4
1
+ 0.9.7
data/bin/sensible-cinema CHANGED
@@ -1,3 +1,5 @@
1
+ #!/usr/bin/ruby
2
+
1
3
  puts 'Welcome to Sensible Cinema...'
2
4
  require 'rubygems'
3
5
  require 'sane'
@@ -37,7 +39,7 @@ else
37
39
  player_description = ARGV.shift.to_s
38
40
  if !File.exist?(player_description)
39
41
  puts 'Please Select Computer Player'
40
- player_description = FileChooser.choose_file("SELECT COMPUTER PLAYER", __dir__ + "/../zamples/players")
42
+ player_description = FileChooser.choose_file(" SELECT COMPUTER PLAYER", __dir__ + "/../zamples/players")
41
43
  end
42
44
 
43
45
  scene_list = ARGV.shift.to_s
@@ -49,7 +51,7 @@ else
49
51
  else
50
52
  if !File.exist? scene_list
51
53
  puts 'Select Scene Descriptions file'
52
- scene_list = FileChooser.choose_file("SELECT SCENE DESCRIPTIONS FILE", __dir__ + "/../zamples/scene_lists")
54
+ scene_list = FileChooser.choose_file(" SELECT SCENE DESCRIPTIONS FILE", __dir__ + "/../zamples/scene_lists/dvds")
53
55
  end
54
56
 
55
57
  if !scene_list
@@ -67,7 +69,7 @@ else
67
69
  puts 'Selected player ' + File.basename(player_description) + "\n\t(full path: #{player_description})"
68
70
  # this one doesn't use any updates, so just pass in file contents, not filename
69
71
  screen_tracker = ScreenTracker.new_from_yaml File.binread(player_description), overlay
70
- Mouse.jitter_forever_in_own_thread # when this ends you know the snapshot was taken...
72
+ Mouse.jitter_forever_in_own_thread # when this ends you know a snapshot was taken...
71
73
 
72
74
  # exit early if we just wanted a screen dump...a little kludgey...
73
75
  unless overlay
@@ -135,7 +135,7 @@ class ScreenTracker
135
135
  end
136
136
  return got
137
137
  else
138
- puts 'screen time change only detected...'
138
+ puts 'screen time change only detected... [unexpected]'
139
139
  return
140
140
  end
141
141
  end
data/never_do CHANGED
@@ -1,4 +1,4 @@
1
- == well, probably never :P ==
1
+ == well, probably never care enough to ever do these :P ==
2
2
 
3
3
  allow x2,y2 for player descriptions...
4
4
 
@@ -6,10 +6,12 @@ user-assignable "confidence" (how much time to 'wrap' surround the mutes, etc. t
6
6
 
7
7
  able to make it "quieter" at certain parts, arbitrarily...
8
8
 
9
- OCR the captioning as an auto profanity filter?
10
-
11
9
  can overlay with a "fuzzer-outer" for specific coordinates somehow or other...
12
10
 
11
+ "tivo" for BYU-TV or what not. Tell it when, it records it for you (cut? uncut?)
12
+
13
+ amazon video on demand
14
+
13
15
  super easy streamer windows -> {XBOX360, wii, etc..} basically playon.tv competitor, which appears to have no free equivalent, I guess, though you can
14
16
  Currently it's either a cable, a computer (with its cable), or "ask me for this it might already work"
15
17
  todo: refit a VLC version that works *if your soundcard supports it*
@@ -24,4 +26,6 @@ super easy streamer windows -> {XBOX360, wii, etc..} basically playon.tv competi
24
26
  blu-ray
25
27
  over wired (?)
26
28
  LAN?
27
- does blu-ray work with HDMI well?
29
+ does blu-ray work with HDMI well?
30
+
31
+ "If someone builds an app that will allow Google TV to stream video from my computer's iTunes collection, it *could* be worth the investment."
@@ -21,4 +21,4 @@ Here is how to specify a regex anywhere:
21
21
  like
22
22
  key_name: !ruby/regexp /abc/
23
23
 
24
- Post back with difficulties and/or questions.
24
+ Post back with difficulties and/or questions. You may need to tweak the unit tests for the OCR engine, too. Non-trivial.
@@ -1,27 +1,34 @@
1
1
  "profanity categories, so you don't have to write them":
2
2
 
3
- euphemized:
4
- oh my gosh, dang, etc. (these prolly aren't as important to note)
5
-
3
+ euphemization: (these prolly aren't as important to note)
4
+ 1 oh my gosh
5
+ 2 dang
6
+ 3 crap
7
+
6
8
  religious reference:
7
- "lord have mercy"
9
+ 1 "L*** have mercy"
8
10
 
9
11
  religious exclamation:
10
- da**...
11
- he**
12
+ 1 da**
13
+ 2 he**
12
14
 
13
15
  religious exclamation deity:
14
- oh my ****
15
- g** d*** ***
16
+ 1 oh my ****
17
+ 2 g** d***
18
+
19
+ bodily function mild:
20
+ 1 crap
21
+ 2 suck(s)
16
22
 
17
- bodily function slang:
18
- poop, crap, crud, suck
19
23
  bodily function strong:
20
- s***
24
+ 1 s***
21
25
 
22
26
  innuendo:
23
- language that has sexual overtones
27
+ language that has sexual overtones
28
+
24
29
  sexual profanity:
25
- f***
26
- body parts:
27
- dick, etc.
30
+ 1 f***
31
+
32
+ body stuff:
33
+ 1 a**
34
+ 2 dick
@@ -3,7 +3,7 @@ player: VLC
3
3
  mutes:
4
4
  # one hour one minute and a half second to one hour one minute and 1.5s
5
5
  "0:34:35" : "0:34:35" # "may doc have mercy on your soul"
6
- "36:09" : "36:11" # she just likes me for muh body
6
+ "36:09" : "36:11" # likes me for muh body
7
7
  "37:05" : "37:06" # Mater makes a fart noise when discussing gas
8
8
  "40:16" : "40:18" # ...good look at that sexy hot-rod
9
9
  "44:24" : "44:46" # hill billy hxxx
@@ -0,0 +1,9 @@
1
+ # comments can go after the # on each line
2
+ mutes:
3
+ 19:51 : 19:52 #religious exclamation#
4
+
5
+ blank_outs:
6
+
7
+
8
+ title: making marriage work
9
+
@@ -1,26 +1,30 @@
1
- # comments can go after the # on each line
1
+ # comment and descriptions can go after a # on each line. See http://github.com/rdp/sensible-cinema for complete creation instructions
2
2
  mutes:
3
- 2.0 : 3.0
4
- 4.0 : 5.0 # mute from second 4 to second 5
5
- 9.0 : 13.0 # mute from second 9 to second 13
6
- 44.0 : 50.0 # mute for 6 seconds starting at second 44
7
- # This next means mute from one minute to one minute one second
8
- 1:00 : 1:01
9
- 10:01 : 10:02 # mute from ten minutes, one second to ten minutes, 2 seconds
10
- # if you use decimals, you'll have to put them in quotes
11
- # 01:01:01.05 (for one hour, one minute, one second and a half) does not work
12
- # "01:01:01.05" does
13
- "01:01:00.5" : "01:01:01.5" # mute from one hour one minute and a half second to one hour one minute and 1.5s
14
- # items can be out of chronological order
15
- 2.0 : 3.0
3
+ "00:00:01" : "00:00:02" # mute from second 1 to second 2
4
+ # so an example would be:
5
+ "00:00:01" : "00:00:02" # profanity: dang
6
+ "01:01:00" : "01:02:00" # mute from one hour one minute to one hour two minutes
7
+ # note: items can be out of chronological order
16
8
 
17
9
  blank_outs:
18
- "00:15" : "00:18" # blank from second 15 to 18
19
- 01:01 : "01:02.0" # blank from one minute one second to one minute two seconds, etc.
20
- 1:00:00 : 1:00:30 # note also that if you blank something out it isn't muted unless you *also* add it to the mute list, above. Message me if you want that changed.
10
+ # this first one blanks (by overlaying *over* the video, a black window)
11
+ # from one hour one minute to one hour two minutes, like:
12
+ "01:01:00" : "01:02:00" # "sex scene"
13
+ # you can also use fractions, like 3 minutes 3 seconds and a half to 3 minutes 4 seconds and a half:
14
+ "00:03:03.5" : "00:03:04.5"
15
+ # if you don't want to be explicit, you can reference a *number*
16
+ # from the category descriptions.yml file, like
17
+ "01:01:00" : "01:02:00" # "bodily function strong # 1"
18
+ # instead of
19
+ "01:01:00" : "01:02:00" # s***
21
20
 
22
- title: Forever Strong
23
- source: Hulu # these aren't required fields -- mutes and blank_outs are
24
- something_else: "for now you can add whatever categories you want, like what_it_would_now_be_rated
25
- what_aspects_were_not_able_to_be_removed, url, DVD label, etc, though in reality the only required ones are mutes and blank_outs"
26
-
21
+ # (if it's not there then just write it in your file and I'll add it later, or notify me)
22
+
23
+ # you can also add other notes, too, like title, source, whatever you want
24
+ # these are basically free form and not used for anything else yet
25
+ missing_content: "this doesn't list some mild name calling"
26
+ title: Forever Strong
27
+ source: Hulu
28
+ url: http://www.byutv.org/watch/1790-100
29
+ possible_new_rating: PG
30
+ whatever_else_you_want: "this is the old version of the film"
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 9
8
- - 4
9
- version: 0.9.4
8
+ - 7
9
+ version: 0.9.7
10
10
  platform: ruby
11
11
  authors:
12
12
  - Roger Pack
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-09-12 00:00:00 -06:00
17
+ date: 2010-10-08 00:00:00 -06:00
18
18
  default_executable: sensible-cinema
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
@@ -223,7 +223,7 @@ files:
223
223
  - vendor/imagemagick/msvcp90.dll
224
224
  - vendor/imagemagick/msvcr90.dll
225
225
  - vendor/imagemagick/vcomp90.dll
226
- - zamples/players/how_to_create_more.txt
226
+ - zamples/players/how_to_create_more_players.txt
227
227
  - zamples/players/hulu/total_length_over_an_hour.yml
228
228
  - zamples/players/vlc/full_screened_total_length_over_an_hour.yml
229
229
  - zamples/players/vlc/windowed_total_length_over_an_hour.yml
@@ -233,14 +233,15 @@ files:
233
233
  - zamples/players/youtube/full_screened_1680x1050.yml
234
234
  - zamples/players/youtube/normal_in_youtube.com.yml
235
235
  - zamples/players/youtube/note_these_assume_less_than_10_minutes_length.txt
236
- - zamples/scene_lists/White Christmas.yml
237
- - zamples/scene_lists/all_dogs_go_to_heaven_dvd.yml
238
236
  - zamples/scene_lists/category descriptions.yml
239
- - zamples/scene_lists/disney_cars.yml
237
+ - zamples/scene_lists/dvds/White Christmas.yml
238
+ - zamples/scene_lists/dvds/all_dogs_go_to_heaven_dvd.yml
239
+ - zamples/scene_lists/dvds/disney_cars.yml
240
+ - zamples/scene_lists/dvds/happy_feet_dvd.yml
241
+ - zamples/scene_lists/dvds/labyrinth.yml
242
+ - zamples/scene_lists/dvds/making marriage work.yml
240
243
  - zamples/scene_lists/example_scene_descriptions_list.yml
241
244
  - zamples/scene_lists/gummy_bear_song_youtube.yml
242
- - zamples/scene_lists/happy_feet_dvd.yml
243
- - zamples/scene_lists/labyrinth.yml
244
245
  - zamples/scene_lists/nuki_song_youtube.yml
245
246
  - zamples/scene_lists/star_trek_generations_hulu.yml
246
247
  has_rdoc: true