录音和朗诵的实现

如何实现语音和朗诵的功能:

using System;
using System.Windows.Forms;
using System.IO;
using System.Media;
using System.Runtime.InteropServices;

namespace 播放TTS
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        //根目录
        string address = System.AppDomain.CurrentDomain.BaseDirectory;
        private void btnPlay_Click(object sender, EventArgs e)
        {
           
            foreach (string s in textBox1.Text.Split(' '))
            {
                //string wavFile = @".\Video" + s + ".wav";
                string wavFile = address+@"Video\" + s.ToLower() + ".wav";
                if (File.Exists(wavFile))
                {
                    SoundPlayer sp = new SoundPlayer(wavFile);
                    sp.PlaySync();
                }
            }
        }
        [DllImport("winmm.dll", EntryPoint = "mciSendString", CharSet = CharSet.Auto)]
        private static extern int mciSendString(
         string lpstrCommand,
         string lpstrReturnString,
         int uReturnLength,
         int hwndCallback
        );

        private static void mciSendString(String cmd)
        {
            mciSendString(cmd, "", 0, 0);
        }

        private static void StartRecord()
        {
            mciSendString("close movie");
            mciSendString("open new type WAVEAudio alias movie");
            mciSendString("record movie");
        }

        private static void StopRecord(string filename)
        {
            mciSendString("stop movie");
            mciSendString("save movie " + filename);
            mciSendString("close movie");
        }

        //开始录音
        private void btnBegin_Click(object sender, EventArgs e)
        {
            StartRecord();
        }

        private void btnStop_Click(object sender, EventArgs e)
        {
            string title = ttbTitle.Text;
            string saveAddress = address + @"\Video\" + title.ToLower() + ".wav";
            if (File.Exists(saveAddress))
            {
                MessageBox.Show("文件已存在,重命名");
            }
            else
            {
                StopRecord(saveAddress);
                MessageBox.Show("录音完毕");
            }
           
           
        }

    }
}

 

时间: 2024-10-24 23:09:11

录音和朗诵的实现的相关文章

录音软件goldwave怎么制作朗诵作品

  录音软件goldwave怎么制作朗诵作品?现在,不少人都在学习怎么使用录音软件goldwave.有些用户在问,在录音软件goldwave中,如何实现从配乐的导入.人声的录制.处理及音频合成导出成一个符合我们派派网所需的有声作品及朗诵作品!下面我们将用文字和图片结合的方式进行说明.一起来看看录音软件goldwave怎么制作朗诵作品吧! 一.打开软件后,我们先点击"新建",在此可以设置采样率.声道及预设录制的音轨时间长度,如下图所示. 二.goldwave如何实现背景音乐的同步录制呢?

html提交录音录音文件已找到

问题描述 html提交录音录音文件已找到 html进行录音操作,获取到文件,如何提交到服务 input file 无法赋值 模拟键盘操作也不行 解决方案 http://www.it165.net/design/html/201406/2651.html 解决方案二: 需要点击file控件选中文件上传,不能给file控件赋值的,安全问题,要是给赋值就没安全性可言了.访问你站点你的file可以随便设置客户端文件上传还得了. 解决方案三: 我现在用的是html5+beego 开发的,后台服务只能通过地

从录音中提取语音特征,再去做个性化语音合成

问题描述 从录音中提取语音特征,再去做个性化语音合成 诸位 语音分析处理等相关领域的高人, 小民实在有事相求, 现在只能广发此求助信,希望能得到些许帮助.!2016年1月3日我们用笔记本拍的唯一一次全家福 现在我手上只有若干个语音文件(wav), 我老婆生前留下来的, 简单的来说, 就是想要三岁的孩子,以后还能听到妈妈的声音, 孩子叫妈妈, 妈妈会答应一声, 再奢望一点,就是孩子能和妈妈 能简单的对话, 让孩子感觉到 妈妈还在他身边. 我有很多种空想和假设,但是实现起来,却是如此的困难, 翻遍互

android-一个关于上传录音的问题

问题描述 一个关于上传录音的问题 03-11 11:04:00.406: A/libc(5586): Fatal signal 6 (SIGABRT) at 0x0000036e (code=0), thread 5586 (fe.ptcityenvweb) 03-11 11:04:00.406: E/ActivityManager(878): Error reading /data/anr/traces.txt 03-11 11:04:00.406: E/ActivityManager(878

IPhone之AVAudioRecorder 录音

#import   需要引入   //获取document目录的路径- (NSString*) documentsPath {  if (! _documentsPath) {   NSArray *searchPaths =    NSSearchPathForDirectoriesInDomains    (NSDocumentDirectory, NSUserDomainMask, YES);   _documentsPath = [searchPaths objectAtIndex: 0

VEGAS 5.0 音频新手入门——录音的软件操作实例

第四课 录音的软件操作实例 录音对系统配置及操作系统的基本要求:支持win98以上的所有操作系统,DX8.1上,推荐DX9.0B,内存当然越大越好,128MB的内存推荐使用win98,256MB内存以上推荐使用winxp,CPU当然是越快越好,挂DX插件多的话系统资源耗的少些,一般现在的主流或者稍落伍的电脑都没问题,硬盘当然是越大越好,最好是7200转的,在多轨混音时可以跑更多的轨,系统的DMA通道一定要打开(inter系列和SII系列的主板安装它的应用增强程序自动打开,VIA系列的主板安装4I

VEGAS 5.0 音频新手入门——录音的硬件操作实例

第三课 录音的硬件操作实例 下面主要是介绍录音的硬件使用和操作方法: 1.处理录音环境,保证安静和隔音(最好能做吸音处理,但是业余条件不好,这个有点难,我也没法做到,呵呵). 2.将话筒固定到话筒架,一定要安放稳当,以免震动造成杂音.当然,有条件能支一个防噗罩(阻挡歌手气流的噗噗声)更好了. 3.连接话筒到前置放大器,如果使用的是专业的话放或者调音台的话放,建议用卡龙接口线(大三芯)平衡接法连接,这样信号质量更加稳定,因连线接触问题影响质量的因素要小些. 4.连接前置放大器的输出到声卡的线性输入

VB.NET实现DirectSound9 (7) 录音

关键字: VB.NET DirectX 9 DirectSound 录音 riff文件格式 作者:董含君 下午看了微软提供的例子,居然把录音定位成Beginner级别晕哦,虽说我认为这个例子是微软提供的最"直接"的例子,但是步骤超多.而且还牵扯到多线程开辟缓冲区回调riff文件格式 IO 输出等等.由于录音的复杂性,以及微软这个例子的直接性,坚持原创的我最终还是复制了大量的代码.(希望不要骂我....) OK,先来说录音的步骤,里面牵扯到riff或者使用技巧的地方,有注释.我仅仅说步骤

Skype录音答录机编程思路和代码

Skype是免费的语音通话软件,不但可以点对点用电脑进行免费的语音通话,而且只需花费低廉的费用就可以直接呼叫固定电话或手机,Skype以优秀的通话质量而赢得了全世界不少用户的亲睐,我就是Skype的忠实用户,下图就是我的Skype截图: 我常常使用Skype和台湾同胞还有国外的朋友进行联系,有时因为业务需要需要将语音通话录音并保留下来,在我有这个想法的那个时候(2006年)Skype官方并没有提供录音功能,咱们是做程序的嘛,没有的功能可以自己来添加啊,这也是为什么我酷爱编程的原因. 应广大网友的