sensible-cinema 0.26.1 → 0.26.2

Sign up to get free protection for your applications and to get access to all the features.
data/TODO CHANGED
@@ -24,19 +24,16 @@
24
24
 
25
25
  == high prio like blocking bugs ==
26
26
 
27
- == under next release specific items: ==
28
- test out DVD upscale
29
- no super scale res?
30
-
31
27
  == next things I was working on ==
32
- a srt that works with my DVD...does it match netflix instant jonah?
33
28
  unit tests work
34
- innerspace
35
- screen recording
29
+ screen recording sintel
36
30
  more netflix instant timing
37
- bluray jonah
31
+ bluray jonah total time vs. other
38
32
 
39
33
  == yes do ordered for release ==
34
+ test out DVD upscale
35
+ no super scale res?
36
+
40
37
  add srt instructions to docu, release
41
38
  fake "tenseness" metric
42
39
  netflix instant descriptor for OS X/work at all
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.26.1
1
+ 0.26.2
@@ -1,3 +1,7 @@
1
+ == 0.26.2 ==
2
+
3
+ Fix license acceptance code, quick redeploy
4
+
1
5
  == 0.26.1 ==
2
6
 
3
7
  Cleaned up the upconvert interface, added a way for easier comparison of different upconversion settings (automated-ly-zy).
@@ -427,7 +427,6 @@ module SensibleSwing
427
427
  def require_blocking_license_accept_dialog program, license_name, license_url_should_also_be_embedded_by_you_in_message,
428
428
  title = 'Confirm Acceptance of License Agreement', message = nil
429
429
  puts 'Please confirm license agreement in open window.'
430
- # cancel button stays the same...
431
430
 
432
431
  message ||= "Sensible Cinema requires a separately installed program (#{program}), not yet installed.
433
432
  You can install this program manually to the vendor/cache subdirectory, or Sensible Cinema can download it for you.
@@ -438,12 +437,11 @@ module SensibleSwing
438
437
  You agree that you are responsible for the download and use of this program, within sensible cinema or otherwise."
439
438
  answer = JOptionPane.show_select_buttons_prompt message, :yes => 'Accept', :no => "View #{license_name}"
440
439
  assert_confirmed_dialog answer, license_url_should_also_be_embedded_by_you_in_message
441
- p 'confirmation of sensible cinema related license saved of: ' + license_name
442
- throw unless returned == 0
443
-
440
+ p 'confirmation of sensible cinema related license noted of: ' + license_name # LODO require all licenses together :P
441
+ throw unless answer == :yes
444
442
  end
445
443
 
446
- def assert_confirmed_dialog answer, license_url_should_also_be_embedded_by_you_in_message
444
+ def assert_confirmed_dialog returned, license_url_should_also_be_embedded_by_you_in_message
447
445
  # :yes, :no, :cancel
448
446
  # 1 is view button was clicked
449
447
  # 0 is accept
data/spec/notes CHANGED
@@ -1,5 +1,39 @@
1
1
  up next:
2
2
 
3
+ curious george 2 http://movies.netflix.com/WiPlayer?trkid=805148&movieid=70130481 37:35 has an accomplish oh my g
4
+
5
+ == netflix upscale notes ==
6
+
7
+ :width=>657 for "HD" that said it was playing in HD, eh? ... hmm...
8
+
9
+ hulu has "up to 480p" as options...hmm...
10
+ 360p speedracer displays as {:start_x=>535, :start_y=>328, :width=>542, :height=>410}
11
+ 480p speedracer displays as {:start_x=>524, :start_y=>331, :width=>550, :height=>408} (same)
12
+ and always the same size minimzed eh...
13
+
14
+ netflix instant
15
+ default minimum size is {:start_x=>38, :start_y=>109, :width=>649, :height=>372}
16
+ Jonah is in hd
17
+ http://blog.netflix.com/2011/03/netflix-lowers-data-usage-by-23-for.html 1080p possible, typically it's 720p apparently [?]
18
+ 720p:
19
+ 2200 kbps/192 kbps
20
+ while "buffering hd" it looks a bit jagged...hmm...
21
+ if you drag, it loses and discards all buffering. yipes.
22
+ "DIS" allowing HD at first looks junky, then looks really good LOL
23
+ HD looks basically perfect, though maybe some sharpening or what not could help still...
24
+ the lines look awesome to good (this is "apparently probably" 1080p
25
+ non HD, with their upconversion
26
+ lines look pretty good, maybe a teeny touchup
27
+ coloring maybe a bit weak
28
+ maybe barely non sharp lines
29
+ no artifacts that I can tell
30
+ might not need hqdn3d?
31
+ unless they have/use their own...
32
+
33
+ TODO CGI netflix instant 1080p
34
+ compare HD and non...
35
+
36
+
3
37
  == netflix instant vs srt ==
4
38
 
5
39
  00:02:34,427 --> 00:02:36,361
@@ -1535,23 +1569,40 @@ hulu
1535
1569
  15: wash your hands [before] you eat
1536
1570
  30: a man that .. can count on to deliver his message yes [well]
1537
1571
  45: just before the big grin from duck
1572
+ sum: 1:22:51 1:22:52 in thing, seems to get that far... hmm...
1573
+
1538
1574
 
1539
1575
  youtube jonah: appears lower quality?
1540
1576
  15: wash your hands before you [eat]
1541
1577
  30: yes well [you] and ...
1542
1578
  45: big smile, turns [to his right]
1543
-
1544
- powerdvd 8:
1545
- 15: wash your hands before you [eat] --- wash your hands [before] you eat --- wash your [hands] before you eat LOL
1546
- 30: can count on to deliver his messages yes [] well --- yes well ... you and [] ... are like peas in a pod ai ai
1547
- 45: big smile [] he turns to his right --- turns [to his right] -- [] turns to his right
1579
+ sum: (says 1:22:59 for pay version [?]) says 1:22:54 in index, and on vid, felt really like 1:22:52 or so
1580
+
1581
+
1582
+ powerdvd 8 (DVD):
1583
+ 15:
1584
+ wash your hands before you [eat]
1585
+ wash your hands [before] you eat
1586
+ wash your [hands] before you eat LOL
1587
+ 30:
1588
+ can count on to deliver his messages yes [] well
1589
+ yes well ... you and [] ... are like peas in a pod
1590
+ 45:
1591
+ big smile [] he turns to his right
1592
+ turns [to his right]
1593
+ [] turns to his right
1548
1594
 
1549
1595
  wmp windows 7: [wmp feels slightly unstable timing-wise]
1550
1596
  15: before [] you eat --- before [you] eat
1551
1597
  30: yes []well --- yes well[]
1552
1598
  45: turns [to his right] --- turns to his right[]
1553
1599
 
1554
- LODO jonah blu ray timings
1600
+ blu-ray powerdvd:
1601
+ 30: deep in my family [] my uncle * 2
1602
+ 45: blue light shines down 44:58 or 59
1603
+ duck 44:47 look left about 44:48
1604
+ 1:22:45 sum, seems to have the same closing credits et al...
1605
+ totally uses 100% cpu
1555
1606
 
1556
1607
  netflix instant jonah
1557
1608
 
@@ -1569,7 +1620,7 @@ netflix instant jonah
1569
1620
  [fr]om the Lord.
1570
1621
  me[ss]age from the Lord [HD]
1571
1622
 
1572
- conclusion: browser doesn't matter, at lesat for HD streams, at work
1623
+ conclusion: browser doesn't matter, (at least for HD stream at work)
1573
1624
 
1574
1625
  30: like two humps on a camel, you always sway the same way, humor runs in my family, my uncle was a [big] star
1575
1626
  IE at work: humor runs very deep in my family[] my uncle was, my uncle was[] a big star, my [uncle] was a big star
@@ -1579,7 +1630,11 @@ netflix instant jonah
1579
1630
  chrome: 1.5 seconds as blue light fades in
1580
1631
  it's like 10 seconds in...
1581
1632
  same with mac
1633
+ 47 duck
1582
1634
  conclusion: netflix doesn't care about mac versus pc timing-wise
1635
+ 59 blu ray how apropo
1636
+
1637
+ conclusion (based on this compared with the blu-ray): netflix instant seems to match pretty close, within 1s to the blu-ray
1583
1638
 
1584
1639
  conclusion: netflix varies pretty widely from instance to instance of playing back (same computer, same movie, same browser).
1585
1640
 
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: sensible-cinema
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.26.1
5
+ version: 0.26.2
6
6
  platform: ruby
7
7
  authors:
8
8
  - Roger Pack
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2011-09-07 00:00:00 Z
13
+ date: 2011-09-08 00:00:00 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: os
@@ -266,8 +266,6 @@ files:
266
266
  - lib/keyboard_input.rb
267
267
  - lib/media_info_parser.rb
268
268
  - lib/mencoder_wrapper.rb
269
- - lib/mouse.rb
270
- - lib/mouse_draw.rb
271
269
  - lib/mouse_forever.rb
272
270
  - lib/mplayer_edl.rb
273
271
  - lib/muter.rb
@@ -298,7 +296,6 @@ files:
298
296
  - spec/keyboard_input.spec.rb
299
297
  - spec/media_info_parser.spec.rb
300
298
  - spec/mencoder_wrapper.spec.rb
301
- - spec/mouse.spec.rb
302
299
  - spec/mplayer_edl.spec.rb
303
300
  - spec/muter.spec.rb
304
301
  - spec/notes
@@ -307,7 +304,6 @@ files:
307
304
  - spec/screen_tracker.spec.rb
308
305
  - spec/sensible_cinema_gui.spec.rb
309
306
  - spec/subtitle_profanity_finder.spec.rb
310
- - spec/swing_helpers.spec.rb
311
307
  - spec/test_yaml.yml
312
308
  - spec/tsmuxer.output
313
309
  - spec/vlc_programmer.spec.rb
data/lib/mouse.rb DELETED
@@ -1,148 +0,0 @@
1
- =begin
2
- Copyright 2010, Roger Pack
3
- This file is part of Sensible Cinema.
4
-
5
- Sensible Cinema is free software: you can redistribute it and/or modify
6
- it under the terms of the GNU General Public License as published by
7
- the Free Software Foundation, either version 3 of the License, or
8
- (at your option) any later version.
9
-
10
- Sensible Cinema is distributed in the hope that it will be useful,
11
- but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
- GNU General Public License for more details.
14
-
15
- You should have received a copy of the GNU General Public License
16
- along with Sensible Cinema. If not, see <http://www.gnu.org/licenses/>.
17
- =end
18
- require 'rubygems'
19
- require 'ffi'
20
- require 'java'
21
-
22
- module Mouse
23
- extend FFI::Library
24
- MouseInfo = java.awt.MouseInfo
25
-
26
- ffi_lib 'user32'
27
- ffi_convention :stdcall
28
-
29
- MOUSEEVENTF_MOVE = 1
30
- INPUT_MOUSE = 0
31
- MOUSEEVENTF_ABSOLUTE = 0x8000
32
- MOUSEEVENTF_LEFTDOWN = 0x0002
33
- MOUSEEVENTF_LEFTUP = 0x0004
34
-
35
-
36
- class MouseInput < FFI::Struct
37
- layout :dx, :long,
38
- :dy, :long,
39
- :mouse_data, :ulong,
40
- :flags, :ulong,
41
- :time, :ulong,
42
- :extra, :ulong
43
- end
44
-
45
- class InputEvent < FFI::Union
46
- layout :mi, MouseInput
47
- end
48
-
49
- class Input < FFI::Struct
50
- layout :type, :ulong,
51
- :evt, InputEvent
52
- end
53
-
54
- # UINT SendInput(UINT nInputs, LPINPUT pInputs, int cbSize);
55
- attach_function :SendInput, [ :uint, :pointer, :int ], :uint
56
-
57
- # poller...
58
- attach_function :GetAsyncKeyState, [:int], :uint
59
-
60
- class << self
61
-
62
- def jitter_forever_in_own_thread
63
-
64
- old_x, old_y = get_mouse_location
65
- Thread.new {
66
- loop {
67
- move_y = 8 # just enough for VLC when full screened...
68
- cur_x, cur_y = get_mouse_location
69
- if(cur_x == old_x && cur_y == old_y)
70
- @total_movements += 1
71
- # blit it up
72
- move_mouse_relative(0, move_y)
73
- move_mouse_relative(0, move_y * -1)
74
- # let it move it back
75
- sleep 0.05
76
- old_x, old_y = get_mouse_location
77
- sleep 0.75
78
- else
79
- # user has been moving the mouse around, so we don't need to, to not annoy them
80
- old_x, old_y = get_mouse_location
81
- sleep 3
82
- end
83
- }
84
- }
85
-
86
- end
87
-
88
- def move_mouse_relative dx, dy
89
- myinput = Mouse::Input.new
90
- myinput[:type] = Mouse::INPUT_MOUSE
91
- in_evt = myinput[:evt][:mi]
92
- in_evt[:mouse_data] = 0 # null it out
93
- in_evt[:flags] = Mouse::MOUSEEVENTF_MOVE
94
- in_evt[:time] = 0
95
- in_evt[:extra] = 0
96
- in_evt[:dx] = dx
97
- in_evt[:dy] = dy
98
- SendInput(1, myinput, Mouse::Input.size)
99
- end
100
-
101
- def single_click_left_mouse_button
102
- left_mouse_down!
103
- left_mouse_up!
104
- p "CLICKED LEFT MOUSE BUTTON"
105
- end
106
-
107
- def left_mouse_down!
108
- send_left_mouse_button MOUSEEVENTF_LEFTDOWN
109
- end
110
-
111
- def left_mouse_up!
112
- send_left_mouse_button MOUSEEVENTF_LEFTUP
113
- end
114
-
115
- VK_LBUTTON = 0x01 # mouse left button for GetAsyncKeyState (seeing if mouse down currently or not)
116
-
117
- def left_mouse_button_state
118
- GetAsyncKeyState(VK_LBUTTON) # ignore a first response, which also tells us if it has changed at all since last call
119
- if GetAsyncKeyState(VK_LBUTTON) == 0 # zero means up
120
- :up
121
- else
122
- :down
123
- end
124
- end
125
-
126
- # [x, y]
127
- def get_mouse_location
128
- loc = MouseInfo.getPointerInfo.getLocation
129
- [loc.x, loc.y]
130
- end
131
-
132
- attr_accessor :total_movements
133
-
134
- private
135
-
136
- def send_left_mouse_button action_type
137
- myinput = Mouse::Input.new
138
- myinput[:type] = Mouse::INPUT_MOUSE
139
- in_evt = myinput[:evt][:mi]
140
- in_evt[:flags] = action_type
141
- SendInput(1, myinput, Mouse::Input.size)
142
- end
143
-
144
-
145
- end
146
-
147
- end
148
- Mouse.total_movements=0 # ruby is a bit freaky with these...
data/lib/mouse_draw.rb DELETED
@@ -1,43 +0,0 @@
1
- require 'mouse'
2
-
3
-
4
- class MouseDraw
5
-
6
- def self.go
7
-
8
- require 'java'
9
-
10
- java_import 'javax.swing.JFrame'
11
- java_import 'javax.swing.JButton'
12
- java_import 'com.sun.awt.AWTUtilities'
13
-
14
- f = JFrame.new
15
- f.add JButton.new('capture window')
16
- f.set_size(200,200)
17
-
18
- AWTUtilities.set_window_opacity(f, 0.5)
19
-
20
- # wait till mouse goes down...
21
- while(Mouse.left_mouse_button_state == :up)
22
- sleep 0.05
23
- print 'waiting'
24
- end
25
- f.undecorated = true
26
- f.default_close_operation = JFrame::EXIT_ON_CLOSE
27
- f.always_on_top = true
28
- f.visible = true
29
- f.set_location(Mouse.get_mouse_location)
30
- while(Mouse.left_mouse_button_state == :down)
31
- # set_size
32
- p 'waiting for end'
33
- p Mouse.get_mouse_location
34
- end
35
- f.dispose
36
- end
37
-
38
- end
39
-
40
-
41
- if $0 == __FILE__
42
- MouseDraw.go
43
- end
data/spec/mouse.spec.rb DELETED
@@ -1,65 +0,0 @@
1
- =begin
2
- Copyright 2010, Roger Pack
3
- This file is part of Sensible Cinema.
4
-
5
- Sensible Cinema is free software: you can redistribute it and/or modify
6
- it under the terms of the GNU General Public License as published by
7
- the Free Software Foundation, either version 3 of the License, or
8
- (at your option) any later version.
9
-
10
- Sensible Cinema is distributed in the hope that it will be useful,
11
- but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
- GNU General Public License for more details.
14
-
15
- You should have received a copy of the GNU General Public License
16
- along with Sensible Cinema. If not, see <http://www.gnu.org/licenses/>.
17
- =end
18
- require File.expand_path(File.dirname(__FILE__) + '/common')
19
- require_relative '../lib/mouse'
20
-
21
- p 'dont move the mouse!'
22
-
23
- describe Mouse do
24
-
25
- it "should move it a couple times" do
26
- old = Mouse.total_movements
27
- begin
28
- Timeout::timeout(2) {
29
- Mouse::jitter_forever_in_own_thread.join
30
- }
31
- rescue Timeout::Error
32
- end
33
- Mouse.total_movements.should be > old
34
- end
35
-
36
- it "should not move it if the user does" do
37
- old = Mouse.total_movements
38
- begin
39
- Timeout::timeout(2) {
40
- Mouse::jitter_forever_in_own_thread
41
- x = 1
42
- loop {java.awt.Robot.new.mouse_move(500 + (x+=1),500); sleep 0.1; }
43
- }
44
- rescue Timeout::Error
45
- end
46
- Mouse.total_movements.should == old + 1
47
- end
48
-
49
- it "should be able to left mouse click" do
50
- Mouse.left_mouse_button_state.should be :up
51
- Mouse.left_mouse_down!
52
- Mouse.left_mouse_button_state.should be :down
53
- Mouse.left_mouse_up!
54
- Mouse.left_mouse_button_state.should be :up
55
- end
56
-
57
- it "should be able to click" do
58
- Mouse.left_mouse_button_state.should be :up
59
- Mouse.single_click_left_mouse_button
60
- Mouse.left_mouse_up!
61
- Mouse.left_mouse_up!
62
- Mouse.left_mouse_button_state.should be :up
63
- end
64
-
65
- end
@@ -1,44 +0,0 @@
1
- =begin
2
- Copyright 2010, Roger Pack
3
- This file is part of Sensible Cinema.
4
-
5
- Sensible Cinema is free software: you can redistribute it and/or modify
6
- it under the terms of the GNU General Public License as published by
7
- the Free Software Foundation, either version 3 of the License, or
8
- (at your option) any later version.
9
-
10
- Sensible Cinema is distributed in the hope that it will be useful,
11
- but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
- GNU General Public License for more details.
14
-
15
- You should have received a copy of the GNU General Public License
16
- along with Sensible Cinema. If not, see <http://www.gnu.org/licenses/>.
17
- =end
18
- require File.expand_path(File.dirname(__FILE__) + '/common')
19
- require 'os'
20
- require_relative '../lib/swing_helpers'
21
- module SensibleSwing
22
- describe SensibleSwing do
23
-
24
- it "should close its modeless dialog" do
25
-
26
- dialog = NonBlockingDialog.new("Is this modeless?")
27
- dialog = NonBlockingDialog.new("Is this modeless?\nSecond lineLL")
28
- dialog = NonBlockingDialog.new("Is this modeless?\nSecond lineLL\nThird line too!")
29
- dialog = NonBlockingDialog.new("Can this take very long lines of input, like super long?")
30
- #dialog.dispose # should get here :P
31
- # let user close it :P
32
- end
33
-
34
- it "should be able to convert filenames well" do
35
- if OS.windows?
36
- "a/b/c".to_filename.should == "a\\b\\c"
37
- else
38
- "a/b/c".to_filename.should == "a/b/c"
39
- end
40
- end
41
-
42
- end
43
- end
44
- puts 'close the windows...'