zoukankan      html  css  js  c++  java
  • MUI音乐播放html5+audio模块

    html5+ audio 模块
    MUI播放音频 Audio模块用于提供音频的录制和播放功能,可调用系统的麦克风设备进行录音操作,也可调用系统的扬声器设备播放音频文件。通过plus.audio获取音频管理对象。

    权限

    "Audio": {
        "description": "访问音频设备"
    }

    录音

    // 扩展API加载完毕,现在可以正常调用扩展API 
    function onPlusReady() { 
        r = plus.audio.getRecorder(); 
    }
    function startRecord() {
        if ( r == null ) {
            alert( "Device not ready!" );
            return; 
        } 
        r.record( {filename:"_doc/audio/xx.amr"}, function () {//真机测试文件在/sdcard/Android/data/io.dcloud.HBuilder/.HBuilder/apps/HBuilder/doc下面(.HBuilder是隐藏的,要查看隐藏的文件)
            alert( "Audio record success!" );
        }, function ( e ) {
            alert( "Audio record failed: " + e.message );
        } );
    }

    这样录音就被保存下来了

    播放录音

    function player(){//播放音乐
        s = plus.audio.createPlayer( "_doc/audio/gg.mp3" );
        var num = s.getDuration();//获取音频总长度number
        setTimeout(function(){//延时获取,否则可能没有返回长度
            var num = s.getDuration();
            alert(num)
        },100)
     
        s.play( function () {//播放完成回调
            alert( "Audio play success!" ); 
        }, function ( e ) {//失败回调
            alert( "Audio play error: " + e.message ); 
        } ); 
    }

    暂停播放:

    function pause(){//暂停播放
        s.pause();
    }

    恢复播放:

    function resume() {//恢复播放
        s.resume();
    }

    跳到指定位置播放(快进):

    function seekTo(){
        s.seekTo(100);
    }

    完整测试代码:

    <!DOCTYPE html>
    <html>
        <head>
        <meta charset="utf-8">
        <title>Audio Example</title>
        <script type="text/javascript">
    // 扩展API加载完毕后调用onPlusReady回调函数 
    document.addEventListener( "plusready", onPlusReady, false );
    var r = null; 
    // 扩展API加载完毕,现在可以正常调用扩展API 
    function onPlusReady() { 
        r = plus.audio.getRecorder(); 
    }
    function startRecord() {
        if ( r == null ) {
            alert( "Device not ready!" );
            return; 
        } 
        r.record( {filename:"_doc/audio/xx.amr"}, function () {//真机测试文件在/sdcard/Android/data/io.dcloud.HBuilder/.HBuilder/apps/HBuilder/doc下面(.HBuilder是隐藏的,要查看隐藏的文件)
            alert( "Audio record success!" );
        }, function ( e ) {
            alert( "Audio record failed: " + e.message );
        } );
    }
    function stopRecord() {
        r.stop(); 
    }
    function player(){//播放音乐
        s = plus.audio.createPlayer( "_doc/audio/gg.mp3" );
        var num = s.getDuration();//获取音频总长度number
        setTimeout(function(){//延时获取,否则可能没有返回长度
            var num = s.getDuration();
            alert(num)
        },100)
     
        s.play( function () {
            alert( "Audio play success!" ); 
        }, function ( e ) {
            alert( "Audio play error: " + e.message ); 
        } ); 
    }
    function pause(){//暂停播放
        s.pause();
    }
    function resume() {//恢复播放
        s.resume();
    }
    function seekTo(){
        s.seekTo(100);
    }
        </script>
        </head>
        <body>
            <input type="button" value="Start Record" onclick="startRecord();"/> 
            <br/>
            <input type="button" value="Stop Record" onclick="stopRecord();"/>
            <br />
            <input type="button" value="player" onclick="player();"/>
            <br />
            <input type="button" value="暂停" onclick="pause();"/>
            <br />
            <input type="button" value="恢复" onclick="resume();"/>
            <br />
            <input type="button" value="跳到指定位置" onclick="seekTo();"/>
     
    </body>
    </html>
  • 相关阅读:
    XCode Playground Overview
    Swift开发学习(二):Playground
    swift网址
    swift关于is和as的解释
    Swift之 ? 和 !
    Swift 学习之二十一:?和 !(详解)
    Swift学习三
    Makefile project
    20171110面试笔记 服务器端程序员+C/C++开发
    关键字
  • 原文地址:https://www.cnblogs.com/e0yu/p/10207394.html
Copyright © 2011-2022 走看看