vb6.0能否接收音频触发事件?比如接收莫尔斯电码触发事件打印电文

解决方案 »

  1.   

    网上找个 VB 录音的程序,改造成每秒保存一次 wav 文件,读取并解析该 wav 文件,判断是否产生了莫尔斯编码的滴答。
    WAV 格式: http://blog.csdn.net/BlueSoal/archive/2006/07/17/932395.aspx
      

  2.   

    谢谢zhao4zhong1,NCTAudioStudio控件有什么作用,怎么加入到工程里,希望详细说明下
      

  3.   

    我的意思可能没说明白,我再阐明一下。vb能否根据接收到的不同长短的声音(滴滴声),引发不同的动作,输出不同的字符,又能否根据我们输入的字符发出不同长短的声音(滴滴声)。初学,不知vb能否实现这类功能。明白人指导一下,
      

  4.   

    一、关于声音转电码
    因为一般的录音程序都是保存成 wav 文件,为了比较“实时”地进行处理,才建议按1秒的时长分段,每录满一段就保存成 wav 文件,然后分析文件读取这些 wav 文件,将它们的数据串联起来,进行波形分析。
    对于简单的莫尔斯电码滴答声,只有更具某个阀值将声响区分为有声和无声两种,这样处理出来的波形就是规整的方波。
    然后你自己按照按键速度规定一个时长,将方波的波峰(有声)更具大于还是小于时长判定为“滴”或“答”。二、关于电码转声音
    预先准备两个 wav 文件,按照电码的滴答播放不同的声音就是了。
    一般的录音程序中都有播放功能,参考一下。
    你唯一要控制的只是必须再前一个声音播放完之后再播放下一个声音。
      

  5.   

    声音始终在接收,没有事件。如果你用 Multimedia MCI 控件录音;在 UpdateInterval 属性制定的毫米数经过后,就会发生 StatusUpdate 事件;在事件中保存 wav 文件、重新录音、进行声音分析。
    假如 UpdateInterval = 1000,就等于每秒一次消息进行处理。
      

  6.   


    用莫尔斯电码的声音响与不响的电平来控制某个装置(不是声卡),或许是COM口某脚,再由PC机探知测量时间.
    以上纯属糊扯.
      

  7.   

       ┌┐┌┐┌┐   ┌──┐┌──┐┌──┐   ┌┐┌┐┌┐   
       ││││││   │  ││  ││  │   ││││││   
    ───┘└┘└┘└───┘  └┘  └┘  └───┘└┘└┘└───
    1)先将方波转成滴答字符串。
    假设规定滴为".",答为"-",长间隔为" "(空格)。
    上面的方波就转成字符串 " ... --- ... "2)将滴答字符串用空格分段,逐段查电码表。
    转换的最终结果就是 "SOS"