如何使用ASPX脚本闪光灯AS3.0转换字节数组到MP3? [英] How to convert byte array to mp3 using aspx script from flash as3.0?

查看:190
本文介绍了如何使用ASPX脚本闪光灯AS3.0转换字节数组到MP3?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在闪存AS3.0记录的话音被存储在一个BytesArray变量。现在需要存储录制的声音作为mp3或者.wav文件的ASPX脚本。任何能帮助我吗?如何字节数组转换为音频格式并保存在服务器中的任何概念,欢迎交流。

In Flash as3.0 recorded voice is stored in a BytesArray variable. Now need to store the recorded sound as .mp3 or .wav file in aspx script. Any can help me? How to convert byte array to audio format and save in server any concept please share.

推荐答案

指一个关注我的code。这code是有关录制你的声音后转换为WAV或MP3救技能。转换输出MP3和WAV文件是保证有关使用C和Java的socket通信。我在Windows-XP测试(32位)的Windows7(64位),MacOSX上,Android系统。

refer a following my code. this code is skills about after recording your voice to be converted to wav or mp3 to save. converted output mp3 and wav file is is guaranteed about socket communication with the C and Java. I tested in Windows-xp(32bit) Windows7(64bit), MacOSX, Android.

这里使用框架是链接。

WAVWriter: <一href="http://$c$c.google.com/p/ghostcat/source/browse/trunk/ghostcatfp10/src/ghostcat/media/WAVWriter.as?r=424"相对=nofollow> WAVWriter

WAVWriter: WAVWriter

ShineMP3En codeR: ShineMP3En codeR

ShineMP3Encoder: ShineMP3Encoder

import com.adobe.audio.format.WAVWriter;
import fr.kikko.lab.ShineMP3Encoder;
import flash.events.SampleDataEvent;
import flash.media.Microphone;
import flash.media.Sound;
import flash.utils.ByteArray;
import flash.events.Event;

var mp3encoder:ShineMP3Encoder;
var microphone:Microphone;
var isRecording:Boolean=false;
var soundRecording:ByteArray;

function startMicRecording():void 
{
    isRecording=true;
    soundRecording = new ByteArray();
    microphone=Microphone.getMicrophone();
    microphone.rate=44;
    microphone.addEventListener(SampleDataEvent.SAMPLE_DATA, gotMicData);
}

function stopMicRecording():void {

    isRecording=false;
    microphone.removeEventListener(SampleDataEvent.SAMPLE_DATA, gotMicData);
    soundRecording.position=0;

    convert2MP3();
}


function gotMicData(micData:SampleDataEvent):void 
{
    soundRecording.writeBytes(micData.data);
}

function convert2MP3():void
{
    var wavWrite:WAVWriter = new WAVWriter();
    wavWrite.numOfChannels=1;
    wavWrite.sampleBitRate=16;
    wavWrite.samplingRate=44100;

    var wav:ByteArray = new ByteArray();

    wavWrite.processSamples(wav, soundRecording, 44100,1);
    wav.position=0;

    /* 
     If the process is compressed into mp3 if you have big problems, 
     just as .wav format save. following code: 
     var file:FileReference = new FileReference();
     file.save(wav,"your_file_name.wav");
    */

    mp3encoder=new ShineMP3Encoder(wav);
    mp3encoder.addEventListener(Event.COMPLETE, onEncoded);
    mp3encoder.start();
}

function onEncoded(e:Event):void 
{
    mp3encoder.mp3Data.position=0;
    mp3encoder.saveAs("your_file_name.mp3");
}

startMicRecording();

这篇关于如何使用ASPX脚本闪光灯AS3.0转换字节数组到MP3?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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