[Node.js]node.jsからゆっくりボイスをしゃべらせる[ネタ]

[Node.js]node.jsからゆっくりボイスをしゃべらせる[ネタ]

Clock Icon2013.03.05 00:57

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

node.jsからゆっくりボイスをしゃべらせる



Windowssoftalk使
Mac使Yukkuroid
MacAPI
APINodObjC使
 


使


OS : MacOS X 10.7.4

Node.js : v0.8.1

Yukkuroid : v0.4.1


npm使NodObjC
% mkdir yukkuri
% cd yukkuri
% npm install NodObjC


Node.jsYukkuroid


API


yukkuri.jsAPI
Objective-C使API
var $ = require('NodObjC');
$.import('Foundation');
$.import('Cocoa');

var processName,
 host,
 proxy,
 pool;

/**
 * 初期化処理.
 * ここで自動解放プールの作成と必要なNSStringの作成.
 */
exports.init = function() {
 pool = $.NSAutoreleasePool('alloc')('init');
 processName = $.NSString('stringWithUTF8String', 'com.yukkuroid.rpc');
 host = $.NSString('stringWithUTF8String', '');
 proxy  = $.NSConnection('rootProxyForConnectionWithRegisteredName',processName,'host',host);
};

/**
 * 終了処理.リソースを解放する.
 */
exports.release = function() {
 pool('drain');
};

/**
 * NSConnectionを取得する.
 */
exports.getProxy = function() {
 return proxy;
};

/**
 * 通常テキスト欄に値をセット.
 */
exports.setKanjiText = function(jsStr) {
 var objCStr = $.NSString('stringWithUTF8String', jsStr);
 proxy('setKanjiText',objCStr);
};

exports.getKanjiText = function() {
 return proxy('getKanjiText'); 
};

/**
 * 音声を再生する.
 */
exports.play = function() {
 proxy('pushPlayButton',0);
};


API使

使


yukkuri.js使app.js
yukkuri.jsrequire

//app.js var yukkuri = require('./yukkuri');

var word;

if (process.argv.length <‖ 2) { console.log("引数にしゃべらせたい文字を指定してください"); process.exit(0); } //初期化 yukkuri.init(); //引数から文字を取得してセット yukkuri.setKanjiText(process.argv[2]); var text = yukkuri.getKanjiText(); console.log("しゃべる文字:",text); //再生 yukkuri.play(); //後処理 yukkuri.release(); [/javascript]




Yukkuroid
% node app.js ゆっくりしていってね


Node.jsNodObjCAPI
YukkuroidsoftalkAquesTalk使使

参考サイトなど

この記事をシェアする

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.