ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

использование SAPI через C++
  #1  
Старый 16.03.2009, 11:40
fire64
Участник форума
Регистрация: 01.04.2008
Сообщений: 200
Провел на форуме:
1059196

Репутация: 39
По умолчанию использование SAPI через C++

Написал код преобразующий текст в голос и сохраняющий его в wav файл, но файл получается битым

и открывается только VLC плеером

PHP код:
//========= Copyright © 2009, Fire64, All rights reserved. ============
//
// Purpose: 
//
// $NoKeywords: $
//=============================================================================

#include <stdio.h>
#include <string.h>
#include <sapi.h>
#include <tchar.h>

int mainint argcchar **argv )
{
    
wchar_t *m_sText L"This sounds normal  but the pitch drops half way through";

    
ISpStream *spStream NULL;

    
ISpVoice pVoice NULL;

    
WAVEFORMATEX _fmt;

    if (
FAILED(CoInitialize(NULL)))
    {
        return 
0;
    }

    
CoCreateInstance(CLSID_SpVoiceNULLCLSCTX_ALLIID_ISpVoice, (void **)&pVoice);


    
CoCreateInstance(CLSID_SpStreamNULLCLSCTX_ALLIID_ISpStream, (void **)&spStream);


    
_fmt.wFormatTag=WAVE_FORMAT_PCM;
    
_fmt.nChannels=1;
    
_fmt.wBitsPerSample=16// 16 bit
    
_fmt.nSamplesPerSec=44100// 44 khc
    
_fmt.nBlockAlign=2;
    
_fmt.nAvgBytesPerSec=88200;
    
_fmt.cbSize=0;


    
spStream->BindToFile(L"out.wav"SPFM_CREATE_ALWAYS, &SPDFID_WaveFormatEx, &_fmt,SPFEI_ALL_EVENTS);


    
pVoice->SetOutputspStreamTRUE );

    
pVoice->Speak(m_sText0NULL);

    
pVoice->Release();

    
pVoice NULL


    
CoUninitialize();


    return 
0;


Последний раз редактировалось fire64; 16.03.2009 в 18:05..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Продам акки вконтакте [FREE] Покупка, продажа, услуги в Соц. Сетях 57 27.03.2009 22:08
Active Perl через проксю Elekt Анонимность 7 10.03.2008 22:14
Как выйти в интернет с ноутбука через мобильник novichok Сотовый фрикинг 1 08.03.2006 02:18
Взлом через cookie k00p3r Чужие Статьи 0 13.06.2005 13:56
Получение шела через Cgi приложения k00p3r Чужие Статьи 0 08.06.2005 15:04



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ