camtasy 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +4 -12
- data/bin/camtasy +19 -0
- data/camtasy.gemspec +2 -0
- data/lib/camtasy/client.rb +3 -3
- data/lib/camtasy/server.rb +4 -8
- data/lib/camtasy/version.rb +1 -1
- metadata +29 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2eeb8b9e9939c5c08377fe6c9f0772ec68564164
|
4
|
+
data.tar.gz: dd70b87cf92d971ab74f783ab5cf8ad315e80269
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7a34c3ca0740a65401d6a69b75b8aa08a0392ec4f7a34577dbd84ed1c667518cd760832bfe7d9545b56399b7a71bbd4cc833dee9ec9e6c62d831c287d6de4f99
|
7
|
+
data.tar.gz: 2e91820650a139f34ccd3bf9f44e2e0142d072d8752a635bc8810131266a29462af04ab8a1e90aad0b55a841c9d7d74cd0470e7c2277cfa0b404fd0846075de3
|
data/README.md
CHANGED
@@ -1,24 +1,16 @@
|
|
1
1
|
# Camtasy
|
2
2
|
|
3
|
-
|
3
|
+
A fancy dancy cam server based on the gorgeous work of that lovely
|
4
|
+
[tenderlove](http://tenderlovemaking.com/2014/03/26/webcam-photos-with-ruby.html)
|
4
5
|
|
5
6
|
## Installation
|
6
7
|
|
7
|
-
Add this line to your application's Gemfile:
|
8
|
-
|
9
|
-
gem 'camtasy'
|
10
|
-
|
11
|
-
And then execute:
|
12
|
-
|
13
|
-
$ bundle
|
14
|
-
|
15
|
-
Or install it yourself as:
|
16
|
-
|
17
8
|
$ gem install camtasy
|
18
9
|
|
19
10
|
## Usage
|
20
11
|
|
21
|
-
|
12
|
+
$ camtasy server
|
13
|
+
$ camtasy client | open -f -a /Applications/Preview.app
|
22
14
|
|
23
15
|
## Contributing
|
24
16
|
|
data/bin/camtasy
CHANGED
@@ -1,3 +1,22 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
3
|
require 'camtasy'
|
4
|
+
require "thor"
|
5
|
+
|
6
|
+
module Camtasy
|
7
|
+
class CLI < Thor
|
8
|
+
DEFAULT_URI='druby://localhost:8787'
|
9
|
+
|
10
|
+
desc 'server', 'starts a server.'
|
11
|
+
def server
|
12
|
+
PhotoServer.new.run(DEFAULT_URI)
|
13
|
+
end
|
14
|
+
|
15
|
+
desc 'client', 'connect to a server'
|
16
|
+
def client
|
17
|
+
Client.new(DEFAULT_URI).run
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
Camtasy::CLI.start
|
data/camtasy.gemspec
CHANGED
@@ -18,6 +18,8 @@ Gem::Specification.new do |spec|
|
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
19
|
spec.require_paths = ["lib"]
|
20
20
|
|
21
|
+
spec.add_runtime_dependency "thor", '~> 0.19'
|
22
|
+
spec.add_runtime_dependency "av_capture", '~> 1.0'
|
21
23
|
spec.add_development_dependency "bundler", "~> 1.6"
|
22
24
|
spec.add_development_dependency "rake"
|
23
25
|
spec.add_development_dependency "rspec"
|
data/lib/camtasy/client.rb
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
module Camtasy
|
2
2
|
class Client
|
3
|
-
def initialize(
|
4
|
-
@server =
|
3
|
+
def initialize(uri, stdout = $stdout)
|
4
|
+
@server = DRbObject.new_with_uri(uri)
|
5
5
|
@stdout = stdout
|
6
6
|
end
|
7
7
|
|
8
8
|
def run
|
9
|
-
@stdout.print server.take_photo
|
9
|
+
@stdout.print @server.take_photo
|
10
10
|
end
|
11
11
|
end
|
12
12
|
end
|
data/lib/camtasy/server.rb
CHANGED
@@ -1,7 +1,5 @@
|
|
1
1
|
module Camtasy
|
2
2
|
class PhotoServer
|
3
|
-
attr_reader :request, :response
|
4
|
-
|
5
3
|
def initialize
|
6
4
|
@request = Queue.new
|
7
5
|
@response = Queue.new
|
@@ -15,19 +13,17 @@ module Camtasy
|
|
15
13
|
end
|
16
14
|
end
|
17
15
|
|
18
|
-
def run
|
16
|
+
def run(uri)
|
19
17
|
Thread.new do
|
20
18
|
AVCapture::Session.new.run_with(AVCapture.devices.find(&:video?)) do |connection|
|
21
|
-
while
|
22
|
-
|
19
|
+
while @request.pop
|
20
|
+
@response.push(connection.capture)
|
23
21
|
end
|
24
22
|
end
|
25
23
|
end
|
26
24
|
|
27
|
-
DRb.start_service(
|
25
|
+
DRb.start_service(uri, self)
|
28
26
|
DRb.thread.join
|
29
27
|
end
|
30
28
|
end
|
31
29
|
end
|
32
|
-
|
33
|
-
PhotoServer.new.run
|
data/lib/camtasy/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: camtasy
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- mo khan
|
@@ -10,6 +10,34 @@ bindir: bin
|
|
10
10
|
cert_chain: []
|
11
11
|
date: 2014-08-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: thor
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0.19'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0.19'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: av_capture
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '1.0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '1.0'
|
13
41
|
- !ruby/object:Gem::Dependency
|
14
42
|
name: bundler
|
15
43
|
requirement: !ruby/object:Gem::Requirement
|