challenge 音声合成でHello, world!

与えられた文字列を音声合成して再生する関数を作ってください。

使用したライブラリはタグでつけてください。またOSに依存する場合もタグでつけてください。日本語文字列も発音できることが好ましいですが、必須ではありません。

以下はサンプルです。

>>> say("Hello, world!")
>>> say("con nitch were") # 「こんにちは」
>>> say("daw cat coo org, sole what program mar know tum yen know Colosseum death")

Posted feedbacks - Scheme

c-wrapperのホームページに張ってあるサンプルコードそのままです。Objective-CとSchemeが融合した変なコードになっています。
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
(c-load "Cocoa/Cocoa.h" 
        :libs "-framework Foundation -framework Cocoa")

[[NSAutoreleasePool :alloc] :init]

(define say 
  (let1 s [[NSSpeechSynthesizer :alloc] :init]
    (lambda (str)
      [s :startSpeakingString (@ str)])))

(say "Hello, world")

しまった、最初の(use objc-wrapper)が抜けていた。正しくは以下の通りです。
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
(use objc-wrapper)

(c-load "Cocoa/Cocoa.h"
        :libs "-framework Foundation -framework Cocoa")

[[NSAutoreleasePool :alloc] :init]

(define say 
  (let1 s [[NSSpeechSynthesizer :alloc] :init]
    (lambda (str)
      [s :startSpeakingString (@ str)])))

(say "Hello, world")

Index

Feed

Other

Link

Pathtraq

loading...