zoukankan      html  css  js  c++  java
  • 录音函数网络对讲机C#服务器 Android客户端(二) C#服务器代码分析 附加

    时光紧张,先记一笔,后续优化与完善。

        

        整完的工程下载址地(源码)

        :http://download.csdn.net/detail/zhujinghao09/5313666

        C# 录音功能现实

        引用 第三方库    

        

     WaveLib.IWaveControl wave;

        

        

                wave = new WaveLib.Wave();
                wave.ErrorEvent += new WaveLib.ErrorEventHandle(wave_ErrorEvent);
                wave.RecordQuality = WaveLib.Quality.Height;

        录音按钮点击函数

        

    private void btnrecord_Click(object sender, EventArgs e)
            {
                string path = "recordes";
                if (!Directory.Exists(path))                                            //建创文件夹
                {
                    Directory.CreateDirectory(path);
                }
                string strnow = DateTime.Now.ToString("yyyyMMdd-hh-mm-ss");             //系统时光定名录音文件
                recodpath = "recordes\\"+strnow+".wav";
                wave.SavedFile = recodpath;
                wave.Start();
                timer1.Start();                                 //录音记时
            }

        录音止停按钮

        

    private void btnstop_Click(object sender, EventArgs e)
            {
                wave.Stop();
                timer1.Stop();
                AddVoiceToListBox("Server", wave.SavedFile, true);               //把录音文件径路添加到音声表列
            }

        播放功能现实

                          在VS工具箱空白处键右,添加

        

        

        会在工具箱中现出,windowMediaplayer 控件

        播放按钮现实函数

        每日一道理
    信念是巍巍大厦的栋梁,没有它,就只是一堆散乱的砖瓦;信念是滔滔大江的河床,没有它,就只有一片泛滥的波浪;信念是熊熊烈火的引星,没有它,就只有一把冰冷的柴把;信念是远洋巨轮的主机,没有它,就只剩下瘫痪的巨架。
    private void btnPlay_Click(object sender, EventArgs e)
            {
               // this.axWindowsMediaPlayer1.URL = "D:\\Android\\huaxiang.mp3";     //测试
                string temp = voiceLB.SelectedItem.ToString();                    //从listbox 选中要择播放文件径路
    
                string path = temp.Substring(temp.IndexOf("##$$") + 4);          //得获址地
                this.axWindowsMediaPlayer1.URL = path;
                this.axWindowsMediaPlayer1.Ctlcontrols.play();                  //播放     
            }

        

        在程线中操纵控件,本程序中label, ListBox

        法方应用委托

    private delegate void ShowGetvoice(bool falg);
            private void UpdateLabel(bool flag)
            {
                if (InvokeRequired)
                    Invoke(new ShowGetvoice(UpdateLabel), flag);
                else
                {
                    if (flag)
                        label3.Text = "接收保存胜利!!";
                }
            }
    private delegate void DaddVoiceToListBox(string name, string path, bool flag);
            private void AddVoiceToListBox(string name, string path, bool flag)
            {
                if (InvokeRequired)
                    Invoke(new DaddVoiceToListBox(AddVoiceToListBox), name, path, flag);
                else
                {
                    if (flag)
                    {
                        voiceLB.Items.Add(name + "##$$" + path);
                    }
                }
            }

        应用法:在程线中直接应用函数,和一般函数一样

        

        整完的工程下载址地(源码)

        :http://download.csdn.net/detail/zhujinghao09/5313666

    文章结束给大家分享下程序员的一些笑话语录: 一条狗在街上闲逛,看见橱窗里一张告示:「招聘程序员。会编程,有团队精神,至少精通两种语言。均等机会。」
      那条狗就进去申请,但是被拒绝了。
      「我不能雇一条狗在公司里做事。」经理说。
      狗不服气,指着告示上「均等机会」几字抗议。
      经理没法,叹了口气,不屑地问道:「你会编程吗?」
      那条狗默默地走到电脑前,编了个程序,运作准确。
      「你有团队精神吗?」经理问。
      那条狗掉头看了看门外,一大群野狗在外面虎视耽耽。
      「我真的不能雇狗做这份工作。」经理气急败坏地说。
      「就算会编程、有团队精神,但是我需要的雇员至少要能精通两种语言。」
      那条狗抬头看着经理说:「喵-噢。」

  • 相关阅读:
    自动化测试-02-Unittest-单元测试框架介绍
    自动化测试-01-cookie认识
    Java面试汇总
    多线程总结一:基本概念
    用Java编写你自己的简单HTTP服务器
    Spring高级事务管理难点剖析
    Http协议详解
    Java 互联网工程师要具备哪些技能或技术?
    架构师都要懂哪些知识
    java学习路线
  • 原文地址:https://www.cnblogs.com/xinyuyuanm/p/3050606.html
Copyright © 2011-2022 走看看