勘違ひだった
このコミットが含まれているのは:
-67
@@ -1,67 +0,0 @@
|
|||||||
//////////////////////////////////////////////////////////////////////
|
|
||||||
/*! @class AquesTalk2
|
|
||||||
|
|
||||||
@brief 規則音声合成エンジン AquesTalk2
|
|
||||||
|
|
||||||
音声記号列から音声波形データをメモリ上に生成する
|
|
||||||
出力音声波形は、8HKzサンプリング, 16bit,モノラル,WAVフォーマット
|
|
||||||
|
|
||||||
|
|
||||||
@author N.Yamazaki (Aquest)
|
|
||||||
|
|
||||||
@date 2009/11/28 N.Yamazaki Creation (from AuesTalk.h)
|
|
||||||
*/
|
|
||||||
// COPYRIGHT (C) 2009 AQUEST CORP.
|
|
||||||
//////////////////////////////////////////////////////////////////////
|
|
||||||
#if !defined(_AQUESTALK2_H_)
|
|
||||||
#define _AQUESTALK2_H_
|
|
||||||
#ifdef __cplusplus
|
|
||||||
extern "C"{
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(AQUESTALK2_EXPORTS)
|
|
||||||
#undef DllExport
|
|
||||||
#define DllExport __declspec( dllexport )
|
|
||||||
#else
|
|
||||||
#define DllExport
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !(defined(WIN32)||defined(WINCE))
|
|
||||||
#define __stdcall // for Linux etc.
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/////////////////////////////////////////////
|
|
||||||
//! 音声記号列から音声波形を生成
|
|
||||||
//! 音声波形データは内部で領域確保される。
|
|
||||||
//! 音声波形データの解放は本関数の呼び出し側でAquesTalk_FreeWave()にて行う
|
|
||||||
//! @param koe[in] 音声記号列(SJIS NULL終端)
|
|
||||||
//! @param iSpeed[in] 発話速度 [%] 50-300 の間で指定 default:100
|
|
||||||
//! @param pSize[out] 生成した音声データのサイズ[byte](エラーの場合はエラーコードが返る)
|
|
||||||
//! @param phontDat[in] phontデータの先頭アドレスを指定します。このDLLのデフォルトPhontを用いるときは0を指定します。
|
|
||||||
//! @return WAVフォーマットの音声データの先頭アドレス。エラー時はNULLが返る
|
|
||||||
DllExport unsigned char * __stdcall AquesTalk2_Synthe(const char *koe, int iSpeed, int *pSize, void *phontDat);
|
|
||||||
|
|
||||||
//! @param koe[in] 音声記号列(EUC NULL終端)
|
|
||||||
DllExport unsigned char * __stdcall AquesTalk2_Synthe_Euc(const char *koe, int iSpeed, int *pSize, void *phontDat);
|
|
||||||
//! @param koe[in] 音声記号列(UTF8 NULL終端 BOMはつけられない)
|
|
||||||
DllExport unsigned char * __stdcall AquesTalk2_Synthe_Utf8(const char *koe, int iSpeed, int *pSize, void *phontDat);
|
|
||||||
//! @param koe[in] 音声記号列(UTF16 NULL終端 BOMの有無は問わない エンディアンは実行環境に従う)
|
|
||||||
DllExport unsigned char * __stdcall AquesTalk2_Synthe_Utf16(const unsigned short *koe, int iSpeed, int *pSize, void *phontDat);
|
|
||||||
//! @param koe[in] 音声記号列(ローマ字表記 NULL終端)
|
|
||||||
DllExport unsigned char * __stdcall AquesTalk2_Synthe_Roman(const char *koe, int iSpeed, int *pSize, void *phontDat);
|
|
||||||
|
|
||||||
/////////////////////////////////////////////
|
|
||||||
//! 音声データの領域を開放
|
|
||||||
//! @param wav[in] AquesTalk_Synthe()で返されたアドレスを指定
|
|
||||||
DllExport void __stdcall AquesTalk2_FreeWave(unsigned char *wav);
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
#endif // !defined(_AQUESTALK2_H_)
|
|
||||||
// ----------------------------------------------------------------------
|
|
||||||
// ! Copyright AQUEST Corp. 2006- . All Rights Reserved. !
|
|
||||||
// ! An unpublished and CONFIDENTIAL work. Reproduction, adaptation, or !
|
|
||||||
// ! translation without prior written permission is prohibited except !
|
|
||||||
// ! as allowed under the copyright laws. !
|
|
||||||
// ----------------------------------------------------------------------
|
|
||||||
@@ -1,44 +0,0 @@
|
|||||||
/**********************************************************************
|
|
||||||
SampleTalk.c - AquesTalk2 Linux 規則音声合成 サンプルプログラム
|
|
||||||
|
|
||||||
標準入力から音声記号列を1行読み込み、
|
|
||||||
標準出力に音声波形(.wavフォーマット)を出力
|
|
||||||
|
|
||||||
COPYRIGHT (C) 2010 AQUEST CORP.
|
|
||||||
|
|
||||||
使用方法は、readme.txt を参照ください。
|
|
||||||
|
|
||||||
2010/01/23 N.Yamazaki Creation
|
|
||||||
**********************************************************************/
|
|
||||||
#include <stdio.h>
|
|
||||||
#include "AquesTalk2.h"
|
|
||||||
|
|
||||||
|
|
||||||
int main(int ac, char **av)
|
|
||||||
{
|
|
||||||
int size;
|
|
||||||
int iret;
|
|
||||||
char str[1024];
|
|
||||||
|
|
||||||
// 音声記号列を入力
|
|
||||||
if(fgets(str, 1024-1, stdin)==0) return 0;
|
|
||||||
|
|
||||||
// 音声合成
|
|
||||||
// unsigned char *wav = AquesTalk2_Synthe(str, 100, &size, NULL); //SJIS
|
|
||||||
// unsigned char *wav = AquesTalk2_Synthe_Euc(str, 100, &size, NULL);
|
|
||||||
unsigned char *wav = AquesTalk2_Synthe_Utf8(str, 100, &size, NULL);
|
|
||||||
// unsigned char *wav = AquesTalk2_Synthe_Utf16(wstr, 100, &size, NULL); // unsigned short *wstr
|
|
||||||
// unsigned char *wav = AquesTalk2_Synthe_Roman(str, 100, &size, NULL);
|
|
||||||
if(wav==0){
|
|
||||||
fprintf(stderr, "ERR:%d\n",size);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 音声データ(wavフォーマット)の出力
|
|
||||||
fwrite(wav, 1, size, stdout);
|
|
||||||
|
|
||||||
// 音声データバッファの開放
|
|
||||||
AquesTalk2_FreeWave(wav);
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
新しい課題から参照
ユーザをブロックする