EN code ByteArray的使用MP3 AS3 [英] encode Bytearray to mp3 using as3

查看:303
本文介绍了EN code ByteArray的使用MP3 AS3的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我的项目中使用闪光灯CS6,采用waveEn codeR类AS3我成功连接code字节组的麦克风并上传在服务器端 它工作在服务器,但是当我下载它,并尝试将闪存内打它,它不玩了 我需要帮助EN code的MP3文件,该文件的工作,当我尝试在Flash播放 这里是我的code

 进口org.bytearray.micrecorder.en coder.WaveEn codeR;
VAR ENCO:WaveEn codeR =新WaveEn codeR();
功能upload_s(用户名:字符串,USER_ID:字符串)
{
VAR SERVICE_PATH:字符串=HTTP://myserver.php;
    VAR○:的ByteArray = enco.en code(soundO3,1)

VAR soundFileName =用户名+ USER_ID +MP3
VAR loaderjp:的URLLoader =新的URLLoader();

变种网址:字符串= SERVICE_PATH +?NAME =+ soundFileName;

VAR REQ:的URLRequest =新的URLRequest(URL);

//确保服务器知道它是越来越图像
req.requestHeaders =新阵列(新URLRequestHeader(内容类型,音频/ MP3));

loaderjp.dataFormat = URLLoaderDataFormat.BINARY;

req.contentType =音频/ MP3;

req.method = URLRequestMethod.POST;

req.data = O;

//发送文件
loaderjp.load(REQ);

}
 

感谢的

解决方案

  **我的解决方案:**
 

从这个链接下载shinemp3En codeR <一href="https://github.com/kikko/Shine-MP3-En$c$cr-on-AS3-Alchemy">https://github.com/kikko/Shine-MP3-En$c$cr-on-AS3-Alchemy 那么下面code的工作完美:)

 进口org.bytearray.micrecorder.en coder.WaveEn codeR;
进口fr.kikko.lab.ShineMP3En codeR;
VAR ENCO:WaveEn codeR =新WaveEn codeR();

    VAR loaderjp:的URLLoader =新的URLLoader();

    VAR REQ:的URLRequest
    功能upload_s(用户名:字符串,USER_ID:字符串)
    {
    VAR SERVICE_PATH:字符串=HTTP://server/saveme.php;
        VAR○:的ByteArray = enco.en code(soundO3,1)// soundO3距离麦克风创建字节数组
        VAR mp3En codeR

    VAR映像文件名称=用户名+ USER_ID +MP3

    变种网址:字符串= SERVICE_PATH +?NAME =+映像文件名称;

    REQ =新的URLRequest(URL);

    //确保服务器知道它是越来越图像
    req.requestHeaders =新阵列(新URLRequestHeader(内容类型,音频/ MP3));

    loaderjp.dataFormat = URLLoaderDataFormat.BINARY;

    req.contentType =音频/ MP3;

    req.method = URLRequestMethod.POST;
    EN codeToMP3(O)

     功能连接codeToMP3(wavData:字节阵列):无效{

            mp3En codeR =新ShineMP3En codeR(wavData);
            跟踪(jjjjjjjjjjjkk+ mp3En codeR)
            mp3En coder.addEventListener(引发Event.COMPLETE,mp3En code请完成);
            mp3En coder.addEventListener(使用ProgressEvent.PROGRESS,mp3En codeProgress);
            mp3En coder.addEventListener(ErrorEvent.ERROR,mp3En codeError);
            mp3En coder.start();
    }

     功能mp3En codeProgress2(事件:ProgressEvent):无效{

            跟踪(event.bytesLoaded,event.bytesTotal);
    }
     功能mp3En codeError(事件:的ErrorEvent):无效{

            跟踪(错误:event.text);
    }
    VAR ARR:ByteArray的=新的ByteArray()

     功能mp3En code请完成(事件:事件):无效{

            跟踪(完成!,mp3En coder.mp3Data.length);

    //跟踪(mp3En coder.mp3Data)

     req.data = mp3En coder.mp3Data
    loaderjp.load(REQ);
    }

    //发送文件

    }
 

thaaank是所有

In my project using flash cs6 ,as3 I success to encode bytearray from microphone using waveEncoder class and upload it on the server side It works in the server but when I download it and try to play it inside the flash ,it doesn’t play I need help to encode mp3 file that's work when I try to play it inside flash here is my code

import org.bytearray.micrecorder.encoder.WaveEncoder;
var enco:WaveEncoder=new WaveEncoder();
function upload_s(user_name:String,user_id:String)
{
var SERVICE_PATH:String = "http://myserver.php";
    var o:ByteArray=enco.encode(soundO3,1)

var soundFileName=user_name+user_id+".mp3"
var loaderjp:URLLoader = new URLLoader();

var url:String = SERVICE_PATH + "?name=" + soundFileName;

var req:URLRequest = new URLRequest(url);

// make sure the server knows it is getting an image
req.requestHeaders =  new Array(new URLRequestHeader("Content-Type", "audio/mp3"));

loaderjp.dataFormat = URLLoaderDataFormat.BINARY;

req.contentType ="audio/mp3";

req.method = URLRequestMethod.POST;

req.data = o;

// send the file            
loaderjp.load(req);

}

Thank’s

解决方案

**My Solution:**

download shinemp3Encoder from this link https://github.com/kikko/Shine-MP3-Encoder-on-AS3-Alchemy then the following code work perfectly :)

import org.bytearray.micrecorder.encoder.WaveEncoder;
import fr.kikko.lab.ShineMP3Encoder;
var enco:WaveEncoder=new WaveEncoder();

    var loaderjp:URLLoader = new URLLoader();

    var req:URLRequest
    function upload_s(user_name:String,user_id:String)
    {
    var SERVICE_PATH:String = "http://server/saveme.php";
        var o:ByteArray=enco.encode(soundO3,1) // soundO3 is Byte Array created from mic
        var mp3Encoder

    var imageFileName=user_name+user_id+".mp3"

    var url:String = SERVICE_PATH + "?name=" + imageFileName;

    req = new URLRequest(url);

    // make sure the server knows it is getting an image
    req.requestHeaders =  new Array(new URLRequestHeader("Content-Type", "audio/mp3"));

    loaderjp.dataFormat = URLLoaderDataFormat.BINARY;

    req.contentType ="audio/mp3";

    req.method = URLRequestMethod.POST;
    encodeToMP3(o)

     function encodeToMP3(wavData:ByteArray):void {

            mp3Encoder = new ShineMP3Encoder(wavData);
            trace("jjjjjjjjjjjkk "+mp3Encoder)
            mp3Encoder.addEventListener(Event.COMPLETE, mp3EncodeComplete);
            mp3Encoder.addEventListener(ProgressEvent.PROGRESS, mp3EncodeProgress);
            mp3Encoder.addEventListener(ErrorEvent.ERROR, mp3EncodeError);
            mp3Encoder.start();
    }

     function mp3EncodeProgress2(event : ProgressEvent) : void {

            trace( event.bytesLoaded, event.bytesTotal);
    }
     function mp3EncodeError(event : ErrorEvent) : void {

            trace("Error : ", event.text);
    }
    var arr:ByteArray=new ByteArray()

     function mp3EncodeComplete(event : Event) : void {

            trace("Done !", mp3Encoder.mp3Data.length);

    //      trace(mp3Encoder.mp3Data)

     req.data = mp3Encoder.mp3Data
    loaderjp.load(req);
    }

    // send the file            

    }

thaaank's all

这篇关于EN code ByteArray的使用MP3 AS3的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆