录制后停止播放jRecorder

mat*_*mmo 0 javascript flash jquery jrecorder

我一直在使用jRecorder一段时间,考虑到它的轻量级,这是非常好的.

现在,我有一个案例需要阻止jRecorder在录制后播放录制的音频.我已经尝试了jRecorder中的几乎所有功能,文档也不是很好.

每个遇到过的人都绕过这个?

这是代码,只是标准的jRecorder的东西.

$.jRecorder({
    'swf_path': '/scripts/jrecorder1.1/jRecorder.swf',
    'host': host,
    'callback_started_recording': function() {
        $('.audio-recorder').addClass('recording');
    },
    'callback_finished_recording': function() {
        $('.audio-recorder').removeClass('recording');
    },
    'callback_stopped_recording': function() {
        $.jRecorder.sendData();
        $('.audio-recorder').removeClass('recording');
    },
    'callback_error_recording': function() {
        $('.audio-recorder').removeClass('recording');
    },
    'callback_activityTime': function(time) {
    },
    'callback_activityLevel': function(level) {
    },
    'callback_finished_sending': function(response) {
    }
}, $('.audio-recorder .audio-recorder-singleton'));
Run Code Online (Sandbox Code Playgroud)

mat*_*mmo 5

经过一天的尝试几乎所有事情,我终于找到了解决方案.我想我会在这里完整发布,因为jRecorder网站上有很多关于如何做到这一点的评论,但是没有答案.

为此,您需要执行以下操作:

  1. 转到https://github.com/sythoos/jRecorder和下载的一切在闪存FLA文件夹中.确保在本地计算机上完全匹配flash-fla文件夹结构的文件夹.

  2. 完成后,如果您还没有,那么您将需要下载Flash.我使用免费的30天试用版,你也可以这样做.

  3. 打开你现在应该在本地目录中的Main.as文件并删除第160行,如下所示:

    private function recordComplete(e:Event):void
    {
        //fileReference.save(recorder.output, "recording.wav");
    
    
        //finalize_recording();
    
        preview_recording(); <----- **DELETE THIS**
    
    
    }
    
    Run Code Online (Sandbox Code Playgroud)
  4. 现在,您需要在Flash中打开AudioRecorderCS4-1.0.fla文件并导出影片(文件 - >导出 - >导出影片).

  5. 导出后(并命名为可以找到它),引用/包含项目中的新SWF并更改swfPathjRecorder参数以匹配新的SWF和瞧!:)

  • 谢谢马蒂.很高兴看到人们重复使用代码,编辑和自定义以满足自己的需求.由于工作繁忙,我无法很好地维护图书馆. (2认同)