win32-sapi 0.1.2-mswin32

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.
Files changed (6) hide show
  1. data/CHANGES +11 -0
  2. data/MANIFEST +12 -0
  3. data/README +31 -0
  4. data/lib/win32/sapi5.rb +121 -0
  5. data/test/tc_sapi5.rb +109 -0
  6. metadata +44 -0
data/CHANGES ADDED
@@ -0,0 +1,11 @@
1
+ == 0.1.2 - 17-Jun-2005
2
+ * Added a gemspec.
3
+ * Some minor updates to the README and test file.
4
+ * Removed the doc/sapi5.rd file. Made the doc/sapi5.txt file roc friendly.
5
+
6
+ == 0.1.1 - 1-Mar-2005
7
+ * Moved the 'examples' directory to the toplevel directory.
8
+ * Made the CHANGES and README files rdoc friendly.
9
+
10
+ == 0.1.0 - 12-Oct-2004
11
+ * Initial release
data/MANIFEST ADDED
@@ -0,0 +1,12 @@
1
+ CHANGES
2
+ README
3
+ MANIFEST
4
+ install.rb
5
+
6
+ doc/sapi5.txt
7
+
8
+ examples/sapi5_test.rb
9
+
10
+ lib/win32/sapi5.rb
11
+
12
+ test/tc_sapi5.rb
data/README ADDED
@@ -0,0 +1,31 @@
1
+ == Description
2
+ This is an interface to the MS SAPI (Sound API) library.
3
+
4
+ == Prerequisites
5
+ The MS SAPI library, version 5.0 or later. You can find out more at
6
+ http://www.microsoft.com/speech. The download now seems to be available
7
+ at http://www.microsoft.com/downloads. Just search for "sapi".
8
+
9
+ Ruby 1.8.0 or later, though I recommend 1.8.2 or later due to bug fixes
10
+ in the OLE library.
11
+
12
+ == Installation
13
+ === Manual Installation
14
+ ruby test\tc_sapi5.rb (optional)
15
+ ruby install.rb
16
+
17
+ === Gem Remote Installation
18
+ gem install win32-sapi
19
+
20
+ === Gem Local Installation
21
+ ruby test\tc_sapi5.rb (optional)
22
+ ruby win32-sapi.gemspec
23
+ gem install win32-sapi-<version>-mswin32.gem
24
+
25
+ == Notes
26
+ This is a pure Ruby library that uses the Win32OLE package.
27
+
28
+ == Documentation
29
+ The SAPI documentation is far too extensive for me to inline here. Please see
30
+ the documentation that came with the SAPI SDK download.
31
+
@@ -0,0 +1,121 @@
1
+ require "win32ole"
2
+
3
+ module Win32
4
+ class SAPI5 < WIN32OLE
5
+ VERSION = "0.1.2"
6
+ end
7
+
8
+ class SpAudioFormat < SAPI5
9
+ def initialize
10
+ super("{9EF96870-E160-4792-820D-48CF0649E4EC}")
11
+ end
12
+ end
13
+
14
+ class SpCustomStream < SAPI5
15
+ def initialize
16
+ super("{8DBEF13F-1948-4aa8-8CF0-048EEBED95D8}")
17
+ end
18
+ end
19
+
20
+ class SpFileStream < SAPI5
21
+ def initialize
22
+ super("{947812B3-2AE1-4644-BA86-9E90DED7EC91}")
23
+ end
24
+ end
25
+
26
+ class SpInProcRecoContext < SAPI5
27
+ def initialize
28
+ super("{73AD6842-ACE0-45E8-A4DD-8795881A2C2A}")
29
+ end
30
+ end
31
+
32
+ class SpInprocRecognizer < SAPI5
33
+ def initialize
34
+ super("{41B89B6B-9399-11D2-9623-00C04F8EE628}")
35
+ end
36
+ end
37
+
38
+ class SpLexicon < SAPI5
39
+ def initialize
40
+ super("{0655E396-25D0-11D3-9C26-00C04F8EF87C}")
41
+ end
42
+ end
43
+
44
+ class SpMemoryStream < SAPI5
45
+ def initialize
46
+ super("{5FB7EF7D-DFF4-468a-B6B7-2FCBD188F994}")
47
+ end
48
+ end
49
+
50
+ class SpMMAudioIn < SAPI5
51
+ def initialize
52
+ super("{CF3D2E50-53F2-11D2-960C-00C04F8EE628}")
53
+ end
54
+ end
55
+
56
+ class SpMMAudioOut < SAPI5
57
+ def initialize
58
+ super("{A8C680EB-3D32-11D2-9EE7-00C04F797396}")
59
+ end
60
+ end
61
+
62
+ class SpObjectToken < SAPI5
63
+ def initialize
64
+ super("{EF411752-3736-4CB4-9C8C-8EF4CCB58EFE}")
65
+ end
66
+ end
67
+
68
+ class SpObjectTokenCategory < SAPI5
69
+ def initialize
70
+ super("{A910187F-0C7A-45AC-92CC-59EDAFB77B53}")
71
+ end
72
+ end
73
+
74
+ class SpPhoneConverter < SAPI5
75
+ def initialize
76
+ super("{9185F743-1143-4C28-86B5-BFF14F20E5C8}")
77
+ end
78
+ end
79
+
80
+ class SpPhraseInfoBuilder < SAPI5
81
+ def initialize
82
+ super("{C23FC28D-C55F-4720-8B32-91F73C2BD5D1}")
83
+ end
84
+ end
85
+
86
+ class SpSharedRecoContext < SAPI5
87
+ def initialize
88
+ super("{47206204-5ECA-11D2-960F-00C04F8EE628}")
89
+ end
90
+ end
91
+
92
+ class SpSharedRecognizer < SAPI5
93
+ def initialize
94
+ super("{3BEE4890-4FE9-4A37-8C1E-5E7E12791C1F}")
95
+ end
96
+ end
97
+
98
+ class SpTextSelectionInformation < SAPI5
99
+ def initialize
100
+ super("{0F92030A-CBFD-4AB8-A164-FF5985547FF6}")
101
+ end
102
+ end
103
+
104
+ class SpUnCompressedLexicon < SAPI5
105
+ def initialize
106
+ super("{C9E37C15-DF92-4727-85D6-72E5EEB6995A}")
107
+ end
108
+ end
109
+
110
+ class SpVoice < SAPI5
111
+ def initialize
112
+ super("{96749377-3391-11D2-9EE3-00C04F797396}")
113
+ end
114
+ end
115
+
116
+ class SpWaveFormatEx < SAPI5
117
+ def initialize
118
+ super("{C79A574C-63BE-44b9-801F-283F87F898BE}")
119
+ end
120
+ end
121
+ end
data/test/tc_sapi5.rb ADDED
@@ -0,0 +1,109 @@
1
+ #############################################################################
2
+ # tc_sapi5.rb
3
+ #
4
+ # Test suite for the sapi5 class. For now, we're simply going to test that
5
+ # the constructors work without incident. There are simply too many methods
6
+ # for me to test. If the constructor works, the methods should be
7
+ # available.
8
+ #
9
+ # I may eventually split each class into its own test file.
10
+ #############################################################################
11
+ base = File.basename(Dir.pwd)
12
+
13
+ if base == "test" || base =~ /win32-sapi/
14
+ Dir.chdir("..") if base == "test"
15
+ $LOAD_PATH.unshift(Dir.pwd)
16
+ $LOAD_PATH.unshift(Dir.pwd + "/lib")
17
+ end
18
+
19
+ require "win32/sapi5"
20
+ require "test/unit"
21
+ include Win32
22
+
23
+ class TC_Win32_SAPI5 < Test::Unit::TestCase
24
+ def setup
25
+ end
26
+
27
+ def test_version
28
+ assert_equal("0.1.2", SAPI5::VERSION)
29
+ end
30
+
31
+ def test_SpAudioFormat
32
+ assert_nothing_raised{ SpAudioFormat.new }
33
+ end
34
+
35
+ def test_SpCustomStream
36
+ assert_nothing_raised{ SpCustomStream.new }
37
+ end
38
+
39
+ def test_SpFileStream
40
+ assert_nothing_raised{ SpFileStream.new }
41
+ end
42
+
43
+ def test_SpInProcRecoContext
44
+ assert_nothing_raised{ SpInProcRecoContext.new }
45
+ end
46
+
47
+ def test_SpInprocRecognizer
48
+ assert_nothing_raised{ SpInprocRecognizer.new }
49
+ end
50
+
51
+ def test_SpLexicon
52
+ assert_nothing_raised{ SpLexicon.new }
53
+ end
54
+
55
+ def test_SpMemoryStream
56
+ assert_nothing_raised{ SpMemoryStream.new }
57
+ end
58
+
59
+ def test_SpMMAudioIn
60
+ assert_nothing_raised{ SpMMAudioIn.new }
61
+ end
62
+
63
+ def test_SpMMAudioOut
64
+ assert_nothing_raised{ SpMMAudioOut.new }
65
+ end
66
+
67
+ def test_SpObjectToken
68
+ assert_nothing_raised{ SpObjectToken.new }
69
+ end
70
+
71
+ def test_SpObjectTokenCategory
72
+ assert_nothing_raised{ SpObjectTokenCategory.new }
73
+ end
74
+
75
+ def test_SpPhoneConverter
76
+ assert_nothing_raised{ SpPhoneConverter.new }
77
+ end
78
+
79
+ def test_SpPhraseInfoBuilder
80
+ assert_nothing_raised{ SpPhraseInfoBuilder.new }
81
+ end
82
+
83
+ def test_SpSharedRecoContext
84
+ assert_nothing_raised{ SpSharedRecoContext.new }
85
+ end
86
+
87
+ def test_SpSharedRecognizer
88
+ assert_nothing_raised{ SpSharedRecognizer.new }
89
+ end
90
+
91
+ def test_SpTextSelectionInformation
92
+ assert_nothing_raised{ SpTextSelectionInformation.new }
93
+ end
94
+
95
+ def test_SpUnCompressedLexicon
96
+ assert_nothing_raised{ SpUnCompressedLexicon.new }
97
+ end
98
+
99
+ def test_SpVoice
100
+ assert_nothing_raised{ SpVoice.new }
101
+ end
102
+
103
+ def test_SpWaveFormatEx
104
+ assert_nothing_raised{ SpWaveFormatEx.new }
105
+ end
106
+
107
+ def teardown
108
+ end
109
+ end
metadata ADDED
@@ -0,0 +1,44 @@
1
+ --- !ruby/object:Gem::Specification
2
+ rubygems_version: 0.8.10
3
+ specification_version: 1
4
+ name: win32-sapi
5
+ version: !ruby/object:Gem::Version
6
+ version: 0.1.2
7
+ date: 2005-06-17
8
+ summary: An interface to the MS SAPI (Sound API) library.
9
+ require_paths:
10
+ - lib
11
+ email: djberg96@gmail.com
12
+ homepage: http://www.rubyforge.org/projects/win32utils
13
+ rubyforge_project:
14
+ description: An interface to the MS SAPI (Sound API) library.
15
+ autorequire:
16
+ default_executable:
17
+ bindir: bin
18
+ has_rdoc: true
19
+ required_ruby_version: !ruby/object:Gem::Version::Requirement
20
+ requirements:
21
+ -
22
+ - ">"
23
+ - !ruby/object:Gem::Version
24
+ version: 0.0.0
25
+ version:
26
+ platform: mswin32
27
+ authors:
28
+ - Daniel J. Berger
29
+ files:
30
+ - lib/win32/sapi5.rb
31
+ - CHANGES
32
+ - MANIFEST
33
+ - README
34
+ - test/tc_sapi5.rb
35
+ test_files:
36
+ - test/tc_sapi5.rb
37
+ rdoc_options: []
38
+ extra_rdoc_files:
39
+ - README
40
+ - CHANGES
41
+ executables: []
42
+ extensions: []
43
+ requirements: []
44
+ dependencies: []