精华内容
下载资源
问答
  • 录音文件amr转MP3

    2018-02-09 10:56:50
    可以将录音文件amr转为MP3方便使用,官网【http://www.sauronsoftware.it/projects/jave/jave-1.0.2.zip?PHPSESSID=rs8aq1fber3ivi1f1ff70oht15】,但是下载非常慢,没有资源分的私我就好...
  • CZHRecordVoice 录音功能,加上录音动画,录音文件转换成amr文件减小上传文件大小
  • ASP.NET 下载微信录音AMR文件,使用FFmpeg实现AMR转换MP3示例源码
  • 简单的通过php做了 微信的录音 其中amr转码是通过七牛云转码为MP3 代码的封装性,独立性,...2.你上传的录音微信只会帮你保存三天,所以我们需要根据这个serverid将微信上的录音文件下载下来 而需要通过根据access_to...

    简单的通过php做了 微信的录音 其中amr转码是通过七牛云转码为MP3  代码的封装性,独立性,严谨性还不够好.纯属借鉴 自己再进行处理吧.

    1.前端开始录音,结束录音,获取通过loadid获取serverid  在微信公众号官方文档上都有 就不多介绍

    2.你上传的录音微信只会帮你保存三天,所以我们需要根据这个serverid将微信上的录音文件下载下来  而需要通过根据access_token以及media_id(前端传过来的serverid)下载

    而access_token获取如下:

     

    文件下载下来后 是amr格式的文件 这里是通过七牛云转成MP3格式的  你需要去注册个七牛云账号  需要七牛云公钥 私钥 存储空间 私有队列(私有队列的速度更快)这些

    //七牛云文件的转换 ,amr转换成MP3处理和七牛云以及本地的文件存储处理
    // amr文件上传到七牛云->转换成MP3格式->删除七牛云上amr文件->下载MP3格式到本地->删除七牛云上的MP3文件->删除本地的amr文件
    //1.封装性还不够好 其实要做的话每一步都要封装成一个独立的函数 2.还有严谨性 比如每个删除的时候都要判断下这个文件是否存在
    public function QiniuChangeFile($card_id){
        $filePath="./static/mp3/".$card_id.".amr";  //本地文件路径
        $accessKey = "七牛公钥";      //七牛公钥
        $secretKey = "七牛私钥";      //七牛私钥
        $auth = new Auth($accessKey, $secretKey);
        $bucket = "uservoice";     //七牛云存储空间
        $munber=time();
        $key = $munber.'.amr';   //七牛云中保存的amr文件命名
    
        $pipeline='917130769';  //自己创建的私有队列 速度更快
    
        $notifyUrl = '';  //转码完成后通知到你的业务服务器。
        $config = new \Qiniu\Config();
        $pfop = new PersistentFop($auth, $config);
    
        $fops = "avthumb/mp3/ab/320k/ar/44100/acodec/libmp3lame|saveas/" . \Qiniu\base64_urlSafeEncode($bucket . ":".$munber.".mp3");
        $policy = array(   //使用私有队列  公有队列速度太慢
            'persistentOps' => $fops,
            'persistentPipeline' => $pipeline
        );
        $force = false;
        //指定上传命令
        $uptoken = $auth->uploadToken($bucket, $key, 3600, $policy);
    
        $uploadMgr = new UploadManager();
    
        //上传文件并转码$filePath为本地文件路径
        list($ret, $err) = $uploadMgr->putFile($uptoken, $key, $filePath);
        if ($err !== null) {
            return false;
        }else {
            $result = $pfop->execute($bucket, $key, $fops, $policy, $notifyUrl, $force);   //转码操作
            //   var_dump($result);
            //此时七牛云中同一段音频文件有amr和MP3两个格式的两个文件同时存在
            $bucketMgr = new BucketManager($auth);
            //为节省空间,删除amr格式文件
            $bucketMgr->delete($bucket, $key);
    
            //程序暂停一段时间 等待转码完成
            sleep(4);
            //下载回本地   还要删除七牛云MP3格式避免占空间  同时也要删除本地的amr格式的文件
            $Qiniu_file = file_get_contents('http://pdurqr7kr.bkt.clouddn.com/'.$munber.'.mp3');
            $save_path = './static/mp3/'.$card_id.'.mp3';  //本地文件路径和文件名
            file_put_contents($save_path, $Qiniu_file);
    
            $bucketMgr->delete($bucket, $munber.'.mp3');   //删除七牛MP3文件
            //删除本地的amr文件 判断文件存不存在
            if(file_exists('./static/mp3/'.$card_id.'.amr'))
            {
               unlink('./static/mp3/'.$card_id.'.amr');
            }
    
    
          //  return $ret['key'];
        }

     -------上面部分是图片  以下都是代码形式-------

    //用户录音下载  根据access_token以及media_id(前端就是serverid)下载
        public function downloadVoice(){
            $media_id = input('post.media_id');
            $access_token = $this->getAccessToken();
    //        echo $access_token.'###'.$media_id; //可以获取到access_token
            //微信上传下载媒体文件
            $url = "http://file.api.weixin.qq.com/cgi-bin/media/get?access_token={$access_token}&media_id={$media_id}";
            $path="./static/mp3";    //文件存储的路径
            if(!is_dir($path)){
                mkdir($path);      //判断有无这个路径 如果没有创建一个
            }
            $filename=$this->card_id.".amr";    //文件名    这里还少了一步  要将amr转换成MP3格式
            $this->downAndSaveFile($url,$path."/".$filename);   //下载并保存
            sleep(2);
            //下载成功后要进行七牛云的转码转换成MP3格式
            $this->QiniuChangeFile($this->card_id);
            echo 1;
    
        }
    
        //获取access_token
        public function getAccessToken() {
            //  access_token 应该全局存储与更新,以下代码以写入到文件中做示例
            $data = json_decode(file_get_contents("./access_token.json"));
            if ($data->expires_time < time()) {
                $appid = $this->jssdk_appid;  //自己的appid
                $appsecret = $this->jssdk_appsecret;  //自己的appsecret
                $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={$appid}&secret={$appsecret}";
                $res = json_decode($this->httpGet($url));
                $access_token = $res->access_token;
                if ($access_token) {
                    $data->expires_time = time() + 7000;
                    $data->access_token = $access_token;
                    $fp = fopen("./access_token.json", "w");
                    fwrite($fp, json_encode($data));
                    fclose($fp);
                }
            }
            else {
                $access_token = $data->access_token;
            }
            return $access_token;
        }
    
        public function httpGet($url) {
            $curl = curl_init();
            curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($curl, CURLOPT_TIMEOUT, 500);
            // 为保证第三方服务器与微信服务器之间数据传输的安全性,所有微信接口采用https方式调用,必须使用下面2行代码打开ssl安全校验。
            // 如果在部署过程中代码在此处验证失败,请到 http://curl.haxx.se/ca/cacert.pem 下载新的证书判别文件。
            curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
            curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
            curl_setopt($curl, CURLOPT_URL, $url);
    
            $res = curl_exec($curl);
            curl_close($curl);
    
            return $res;
        }
    
    
        /**
         * 根据URL地址,下载文件
         *
         * @param $url
         * @param $savePath
         */
        public function downAndSaveFile($url,$savePath)
        {
            ob_start();
            readfile($url);
            $img  = ob_get_contents();
            ob_end_clean();
            $size = strlen($img);
            $fp = fopen($savePath, 'w');
            fwrite($fp, $img);
            fclose($fp);
        }
    
        //七牛云文件的转换 ,amr转换成MP3处理和七牛云以及本地的文件存储处理
        // amr文件上传到七牛云->转换成MP3格式->删除七牛云上amr文件->下载MP3格式到本地->删除七牛云上的MP3文件->删除本地的amr文件
        //1.封装性还不够好 其实要做的话每一步都要封装成一个独立的函数 2.还有严谨性 比如每个删除的时候都要判断下这个文件是否存在
        public function QiniuChangeFile($card_id){
            $filePath="./static/mp3/".$card_id.".amr";  //本地文件路径
            $accessKey = "FlLa8ItBMB6R7LU69ET2Pi8BYXtPMylEADtWgBWx";      //七牛公钥
            $secretKey = "SJb2QJnO1CH9ZptfuQER6wrXtXhq7sH2ZonbJxnM";      //七牛私钥
            $auth = new Auth($accessKey, $secretKey);
            $bucket = "uservoice";     //七牛云存储空间
            $munber=time();
            $key = $munber.'.amr';   //七牛云中保存的amr文件命名
    
            $pipeline='917130769';  //自己创建的私有队列 速度更快
    
            $notifyUrl = '';  //转码完成后通知到你的业务服务器。
            $config = new \Qiniu\Config();
            $pfop = new PersistentFop($auth, $config);
    
            $fops = "avthumb/mp3/ab/320k/ar/44100/acodec/libmp3lame|saveas/" . \Qiniu\base64_urlSafeEncode($bucket . ":".$munber.".mp3");
            $policy = array(   //使用私有队列  公有队列速度太慢
                'persistentOps' => $fops,
                'persistentPipeline' => $pipeline
            );
            $force = false;
            //指定上传命令
            $uptoken = $auth->uploadToken($bucket, $key, 3600, $policy);
    
            $uploadMgr = new UploadManager();
    
            //上传文件并转码$filePath为本地文件路径
            list($ret, $err) = $uploadMgr->putFile($uptoken, $key, $filePath);
            if ($err !== null) {
                return false;
            }else {
                $result = $pfop->execute($bucket, $key, $fops, $policy, $notifyUrl, $force);   //转码操作
                //   var_dump($result);
                //此时七牛云中同一段音频文件有amr和MP3两个格式的两个文件同时存在
                $bucketMgr = new BucketManager($auth);
                //为节省空间,删除amr格式文件
                $bucketMgr->delete($bucket, $key);
    
                //程序暂停一段时间 等待转码完成
                sleep(4);
                //下载回本地   还要删除七牛云MP3格式避免占空间  同时也要删除本地的amr格式的文件
                $Qiniu_file = file_get_contents('http://pdurqr7kr.bkt.clouddn.com/'.$munber.'.mp3');
                $save_path = './static/mp3/'.$card_id.'.mp3';  //本地文件路径和文件名
                file_put_contents($save_path, $Qiniu_file);
    
                $bucketMgr->delete($bucket, $munber.'.mp3');   //删除七牛MP3文件
                //删除本地的amr文件 判断文件存不存在
                if(file_exists('./static/mp3/'.$card_id.'.amr'))
                {
                   unlink('./static/mp3/'.$card_id.'.amr');
                }
    
    
              //  return $ret['key'];
            }
    展开全文
  • amr文件怎么转换成mp3

    千次阅读 2019-06-21 13:03:46
    AMR是一个很特殊的音频格式,常被手机各大厂商广泛认可的一种手机录音保存格式。AMR文件的容量非常小,每秒钟的音频...许多人在拿到AMR音频的第一时间就会将这种格式的音频转换成MP格式3,那么怎么转换呢?下面我们...

    AMR是一个很特殊的音频格式,常被手机各大厂商广泛认可的一种手机录音保存格式。AMR文件的容量非常小,每秒钟的音频文件可以控制在1KB左右,所以即使是长达1分钟的音频文件,亦可以控制在50KB左右,所以许多的彩信加载人声都是采用这个格式的,但是因为这个格式的音频体积非常小,所以音质就可想而知的,非常的差。许多人在拿到AMR音频的第一时间就会将这种格式的音频转换成MP格式3,那么怎么转换呢?下面我们一起来看看吧。

    具体步骤:

    首先我们在电脑上打开迅捷音频转换器,然后点击上方“音频转换”这个选项,进入音频格式转换界面。

    随后我们点击“添加文件”或者“添加文件夹”将AMR格式音频导入,当然你也可以直接将音频从文件夹中直接拖入到软件中来。

    之后,我们在“输出文件格式”下拉框中将我们音频的输出格式设置为MP3格式。

    如果你需要设置转换音频的音质和声道,我们可以点击”高级设置”。设置好后,我们点击”确定”,即可保存更改。

    下面一步,我们可以设置转换音频的保存路径,这样以后我们的音频转换完成了,我们就能在第一时间找到我们的音频文件了。点击“更改路径”,然后选择你需要保存的文件夹,设置好后,我们点击“选择文件夹”就行了。

    最后,我们就可以开始转换音频了,点击界面底部的“开始转换”,软件便会开始转换我们的音频,然后耐心等待音频转换完成(转换一首歌整个过程大约一、两分钟)。

    当音频转换好后,我们点击“打开文件夹”,即可找到我们转换好的音频文件。

    以上便是amr文件怎么转换成mp3的全部步骤了,整个步骤介绍的还是比较详细的,大家认真的看一遍,然后跟着操作一下就行了,很轻易的就能学会。

    展开全文
  • Android录音amr实时转成MP3格式

    千次阅读 2019-10-06 21:47:49
    文章目录MP3 录音使用说明步骤一:下载NDK,并配置(Mac)步骤二:修改C代码相关路径,编译so库步骤三:应用层代码代码调用系统AudioRecord类开始录音开始录音 start()步骤四:在录音过程中实时转成MP3格式步骤五...

    MP3 录音使用说明

    资源信息下载

    链接:https://pan.baidu.com/s/1m-HqA88udn-N_kNgOtoA_Q

    提取码:8x3e

    jni:音频转成MP3格式的C库,将类名或者路径名改成自己项目路径,通过NDK生成so库。(建议把jni文件夹同时也拷贝至 mp3library 模块下面)

    mp3library:录音、格式转换的Library,包括so库和工具类。

    步骤一:下载NDK,并配置(Mac)

    1.下载地址:http://tools.android-studio.org/

    2.解压后,配置环境变量

    步骤二:修改C代码相关路径,编译成so库

    将jni目录拷贝至 mp3library 依赖模块中的根目录下

    将C代码中路径改成自己库(so库所在的位置)的路径,cd进入jni目录下,运行ndk-build 命令生成so库,之后将编译成功的libs文件下面的so库拷贝到自己的项目中。

    步骤三:应用层代码代码调用系统AudioRecord类开始录音

    try {
            String path = recAudioDir(recordFilePath).getAbsolutePath();
            recFile = new File(path, System.currentTimeMillis() + ".mp3");
    
        // 初始化录音工具类(mp3library库中),传入录音保存的路径
            mRecorder = new MP3Recorder(recFile);
        // 开始录音
            mRecorder.start();
        } catch (Exception e) {
            e.printStackTrace();
        }
     }
    

    AndioRecord 类的主要功能是让各种JAVA应用能够管理音频资源,以便它们通过此类能够录制平台的声音输入硬件所收集的声音。此功能的实现就是通过 “pulling同步AudioRecord对象的声音数据来完成的。在录音过程中,应用所需要做的就是通过 read 方法去及时地获取 AudioRecord 对象的录音数据. AudioRecord 类提供的三个获取声音数据的方法分别是read(byte[], int, int), read(short[], int, int), read(ByteBuffer, int). 无论选择使用那一个方法都必须事先设定方便用户的声音数据的存储格式。

    开始录音的时候,一个 AudioRecord 需要初始化一个相关联的声音 buffer, 这个 buffer 主要是用来保存新的声音数据。这个buffer 的大小,我们可以在对象构造期间去指定。它表明一个 AudioRecord 对象还没有被读取(同步)声音数据前能录多长的音(即一次可以录制的声音容量)。一般情况下录音实现的简单流程如下:

    • 创建一个数据流
    • 构造一个 AudioRecord 对象,其中需要的最小录音缓存 buffer 大小可以通过 getMinBufferSize 方法得到。如果 buffer 容量过小,将导致对象构造的失败
    • 初始化一个buffer,该buffer大于等于 AudioRecord 对象用于写声音数据的 buffer 大小
    • 开始录音
    • AudioRecord 中读取声音数据到初始化 buffer ,将 buffer 中数据导入数据流
    • 停止录音
    • 关闭数据流

    开始录音 start()

    public void start() throws IOException {
    
       //以地址的方式获取frameCount的值。最小缓冲区的大小
        mBufferSize = AudioRecord.getMinBufferSize(DEFAULT_SAMPLING_RATE,
        DEFAULT_CHANNEL_CONFIG, DEFAULT_AUDIO_FORMAT.getAudioFormat());
    
     /** 初始化 AudioRecord
       * DEFAULT_AUDIO_SOURCE:  音源  MediaRecorder.AudioSource.MIC  本机的声音
       * DEFAULT_SAMPLING_RATE: 采样率 44100,模拟器仅支持从麦克风输入8kHz采样率
       * DEFAULT_CHANNEL_CONFIG:录音的声道数,当前设置的 16
       * DEFAULT_AUDIO_FORMAT:  录音的比特数,当前设置的 PCMFormat.PCM_16BIT
       * mBufferSize:           期望录音时系统为其提供的缓冲区大小
       */
    
        mAudioRecord = new AudioRecord(DEFAULT_AUDIO_SOURCE,
        DEFAULT_SAMPLING_RATE, DEFAULT_CHANNEL_CONFIG, DEFAULT_AUDIO_FORMAT.getAudioFormat(),mBufferSize);
        mPCMBuffer = new short[mBufferSize];
        mAudioRecord.startRecording();
    		new Thread() {
    			@Override
    			public void run() {
    				//设置线程权限
    				android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_URGENT_AUDIO);
    				while (mIsRecording) {
    					int readSize = mAudioRecord.read(mPCMBuffer, 0, mBufferSize);
    					if (readSize > 0) {
    						mEncodeThread.addTask(mPCMBuffer, readSize);
    						calculateRealVolume(mPCMBuffer, readSize);
    					}
    				}
    				mAudioRecord.stop();
    				mAudioRecord.release();
    				mAudioRecord = null;
    			}
    	}
    }
    
    

    因为Android录音完成保存的音频格式默认为 amr,这是个体积较小,播放效果较差的音频格式,所以我们需要将 amr 格式的音频转成 mp3 格式。这个时候就需要使用我们刚刚编译的so库了。

    步骤四:在录音过程中实时转成MP3格式

    /**
      * 实现AudioRecord.OnRecordPositionUpdateListener
      * 从缓冲区中读取并处理数据,使用lame编码MP3
      * @return  从缓冲区中读取的数据的长度,缓冲区中没有数据时返回0
      */
    @Override
    public void onPeriodicNotification(AudioRecord recorder){
         if (mTasks.size() > 0) {
    	Task task = mTasks.remove(0);
    	short[] buffer = task.getData();
    	int readSize = task.getReadSize();
    	// 调用so库转成mp3
    	int encodedSize = LameUtil.encode(buffer, buffer, readSize, mMp3Buffer);
    	if (encodedSize > 0){
    	   try {
    		mFileOutputStream.write(mMp3Buffer, 0, encodedSize);
    		} catch (IOException e) {
                        e.printStackTrace();
    		  }
    		}
    		  return readSize;
    		}
    		return 0;
        }
    }
    
    

    步骤五:停止录音

     private void stopRecorder() {
            try {
                if (mRecorder != null) {
                    mRecorder.stop();
                    mRecorder = null;
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    
    
    展开全文
  • java 将微信录音amr转换mp3格式

    万次阅读 热门讨论 2016-02-01 02:34:17
    最近一直都在做微信相关的项目 ...原因,ios和安卓的录音格式不同,而audio标签不能直接播放ios的录音文件(或者ios无法播放amr格式文件,忘记了),为了实现兼容性,将音频转码后,再给用户查看播放 使用

    2020年更新,这是4前写的了文章了,今天找东西,登录账号发现一堆几年前的评论,真抱歉,我没回复你们

    如果有需要,尽量参考评论中的解决办法吧. https://blog.csdn.net/dadiyang/article/details/85003240
    我没有确认过是否可行,大致看了下应该是可以的. 毕竟如果让现在的我再实现音视频格式转换,我会直接使用ffmpeg

    以下原文

    ------------------------

    最近一直都在做微信相关的项目

    有个需求是上传录音,然后再播放

    实现方法是,调用微信接口,录音,上传到微信服务器,当用户保存的时候,从微信服务器下载下来,然后再转码成为MP3格式,在页面使用audio标签播放

    原因,ios和安卓的录音格式不同,而audio标签不能直接播放ios的录音文件(或者ios无法播放amr格式文件,忘记了),为了实现兼容性,将音频转码后,再给用户查看播放

     

    使用jave实现,上网找了很久,很久前也就想弄的,一直没实现,今天找到了一直想关文章看了下,调试了下,发现可以用,就想记下来

     

    上网下载jave-1.0.2.jar  ,一般该jar包只能在window下正常工作,要在linux下工作,需要替换改jar里面的文件,如果以后忘记了,百度下就好

     

    java代码,

    package convertVoice;
    
    import it.sauronsoftware.jave.AudioAttributes;
    import it.sauronsoftware.jave.Encoder;
    import it.sauronsoftware.jave.EncoderException;
    import it.sauronsoftware.jave.EncodingAttributes;
    import it.sauronsoftware.jave.InputFormatException;
    import java.io.File;
    
    /** 
      * @exception
      * @author zs 
      * @version 2016年1月31日 下午6:12:20 
      * @description
      * @version 1.0
      */
    public class convertVoice {
    
    	public static void main(String[] args) throws Exception {
    		change();
    	}
    	public static void change() {
    		File source = new File("E:\\gtGEHFWPLYxlsJmjaMJJYwuvvQxh6qHcZxzV-FuvCtkWM9XFimee0L2Zi9sCepqS.amr");
    		File target = new File("D:\\1381370093615.mp3");
    		AudioAttributes audio = new AudioAttributes();
    		Encoder encoder = new Encoder();
    
    
    		audio.setCodec("libmp3lame");
    		EncodingAttributes attrs = new EncodingAttributes();
    		attrs.setFormat("mp3");
    		attrs.setAudioAttributes(audio);
    
    		try {
    			encoder.encode(source, target, attrs);
    		} catch (IllegalArgumentException e) {
    			e.printStackTrace();
    		} catch (InputFormatException e) {
    			e.printStackTrace();
    		} catch (EncoderException e) {
    			e.printStackTrace();
    		}
    	}
    }
    
    

    只需要传入两个路径即可,另外,运行时会报错,但是生成的文件照样可以正常运行,报错原因,amr编码未设置,不懂怎么设置,就不设置了.

    转码前,34KB的amr文件,转码后,386KB的MP3文件     →_→ 我都不知道说什么,不理他,反正不是我用的功能

    html代码

    <audio src="media/1381370093615.mp3" controls="controls"></audio>

    我试了下,这样写就行了,在页面点击播放,就能播放,但是进度条无法调戏,点不到,只有开始/暂停按钮,音量调节按钮

     

    弄了两个jar,一个window版本的,一个是linux版本的,但是发现linux版本的jar在window下也能正常工作,想把它们两个也传上来的,但是不知道怎么传,不理它

     

     

    展开全文
  • 微信下载录音amr转换MP3(成功测试详细 public static File downloadWxFile(String mediaId) { String accessToken = WxCache.getInstance().getAccessToken().getToken(); String downloadUrl = ...
  • 免费AMR转文件软件–AMR Player,不仅可以播放使用手机所录制的*.amr音乐文件,最重要的是它能够将AMR转成MP3、WAV档,或者是将MP3、WAV档转成AMR檔。 AMR Player出来的文件是低音质,所以文件会稍微小一点点。AMR...
  • 录音文件上传且amr格式转mp3格式

    千次阅读 2018-09-27 14:44:58
    1.录音文件 前台测试代码: &lt;form id="upload" enctype="multipart/form-data" method="post"&gt; &lt;input type="file" name="file" id=&...
  • java 将微信录音amr转换mp3格式,看了这个哥们的教程 接下来就是各种坑,首先从网上下载下来的,网上的是没有后缀的,我门是window上部署的。所以哪个应用文件为0kb,我跟中代码发现的。 所以报错,然后...
  • 音频转码工具,主要用于将微信语音 amr 格式转换mp3 格式以便在 html5 的 audio 标签中进行播放 1.调用微信提供的接口获取录音的InputStream字节流 public InputStream getInputStream(String mediaId) { ...
  • 微信录音amr音频文件转mp3格式

    万次阅读 2017-02-08 14:42:12
    微信录音的音频为amr格式,不支持网页播放,且上传语音有效期3天,可用微信多媒体接口下载语音到自己的服务器,然后转码转成MP3格式
  • 根据业务需求,我们可能需要将微信录音保存到服务器,而通过微信上传语音接口上传到微信服务器的语音文件的有效期只有3天,所以需要将文件下载到我们自己的服务器。 上传语音接口 wx.uploadVoice({ localId: '...
  • 微信录音amr转mp3

    2019-09-05 12:07:44
    /** 微信录音amr转mp3 * @param filePath 需要转换文件 */ public static String transWxformMp3(String filePath, String targetPath) { File source = new File(filePath); // 转换后生成的文件 targetPath...
  • 这个文章是描述Android下如何...http://developer.samsung.com/android/technical-docs/Porting-and-using-LAME-MP3-on-Android-with-JNI 这个有JNI部分使用 http://wenku.baidu.com/view/70cebd3e580216fc700af
  • 项目背景:  之前公司开发了一个微信公众号,要求把js-sdk录音文件在web...所以amr格式要转换成MP3或wav,ogg。其中MP3最好,原因自己百度。所以自己上百度了一下,发现了下面的这个处理方式。感觉挺好的,牛逼...
  • 简单的amr转换mp3音频格式转换方法

    千次阅读 2019-08-07 11:05:32
    那今天小编就教大家使用音频转换器...大家可以在该界面上看到有很多格式可以进行选择,因为我们是要把amr转换成mp3格式,所以我们这里选择“mp3”。 3、在音频输出之前,我们还可以点击输出格式下方的音频输出编...
  • 但目前AMR格式在个人电脑上应用较少,所以目前大部门播放器都不支持AMR,为了解决这个问题我们打算在服务器端将AMR转成MP3,以便在个人电脑上通过浏览器的方式进行播放。最近公司一款基于移动互联网的产品有个短暂的...
  • java 把amr录音文件转换mp3文件,linux如果是32位请使用32位的jar包,如果是64位请使用64位的jar包,亲测可用。 开发的时候可直接使用,linux部署的时候需要使用相应的jar包
  • android 录音amr转mp3支持浏览器浏览

    千次阅读 2017-06-08 16:25:25
    最近做客服项目需要录音支持浏览器播放,用到...其中大家一定要注定MP3Recorder文件的路径为 com.example.lamemp3 不能变,变的话需要重新编译.so文件 http://download.csdn.net/detail/haxiaonan/9864660
  • 万万没想到万恶的微信小程序接口返回的录音音频格式竟然是silk格式的 , 微信接口是amr格式的 , 由于之前做过amr转mp3的功能所以没放在心上然而差不多花了我两天的时间才成功的把silk音频文件转换成mp3格式的....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,112
精华内容 844
关键字:

录音文件amr转换成mp3