asp.net音频转换之.amr转.mp3(利用ffmpeg转换法)

前言

上篇文章已经跟大家分享了asp.net利用七牛转换法将.amr转.mp3的方法,当时也说了还有另外一种方法是利用ffmpeg转换法,下面这篇文章就给大家详细介绍这种方法。这种方法相对第一种来说,要简单的多!

FFmpeg的名称来自MPEG视频编码标准,前面的“FF”代表“Fast Forward”,FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。可以轻易地实现多种视频格式之间的相互转换。

ffmpeg转换法

首先,你得下载个“ffmpeg.exe” 插件,然后把它放到你的项目中,如下图:

程序中会调用该文件,以助于转换音频格式!

上代码:

using System;
using System.Threading;
using System.IO;
using System.Diagnostics;
using System.Security;

public partial class cowala_201512Chritmas_amrtest : System.Web.UI.Page
{
 protected void Page_Load(object sender, EventArgs e)
 {
    if (!IsPostBack)
    {
      changedPlay.Visible = false;
    }
 }

 protected void Ffmpeg_Click(object sender, EventArgs e)
 {
 if (AmrFileUp.HasFile)
 {
  string key = AmrFileUp.FileName;
  string savepath = Server.MapPath("~/upload/amr/") + key;
  AmrFileUp.SaveAs(savepath);

  string mp3SavePth = Server.MapPath("~/upload/mp3/") + key.Split('.')[0].ToString() + ".mp3";

  if (!string.IsNullOrEmpty(ConvertToMp3(savepath, mp3SavePth)))
  {
  changedPlay.Visible = true;
  changedPlay.Attributes.Add("src", "upload/mp3/" + key.Split('.')[0].ToString() + ".mp3");
  Response.Write("<script>alert('转换成功!');</script>");
  }
 }
 }

 public string ConvertToMp3(string pathBefore, string pathLater)
 {
 string c = Server.MapPath("/ffmpeg/") + @"ffmpeg.exe -i " + pathBefore + " " + pathLater;
 string str = RunCmd(c);
 return str;
 }

 /// <summary>
 /// 执行Cmd命令
 /// </summary>
 private string RunCmd(string c)
 {
 try
 {
  ProcessStartInfo info = new ProcessStartInfo("cmd.exe");
  info.RedirectStandardOutput = false;
  info.UseShellExecute = false;
  Process p = Process.Start(info);
  p.StartInfo.UseShellExecute = false;
  p.StartInfo.RedirectStandardInput = true;
  p.StartInfo.RedirectStandardOutput = true;
  p.StartInfo.RedirectStandardError = true;
  p.Start();
  p.StandardInput.WriteLine(c);
  p.StandardInput.AutoFlush = true;
  Thread.Sleep(1000);
  p.StandardInput.WriteLine("exit");
  p.WaitForExit();
  string outStr = p.StandardOutput.ReadToEnd();
  p.Close();

  return outStr;
 }
 catch (Exception ex)
 {
  return "error" + ex.Message;
 }
 }
}

接着来张效果图:

总结

好了,就这么简单,不要不敢不相信你的眼睛,其实就是这么简单!以上就是asp.net音频转换之.amr转.mp3(利用ffmpeg转换法)的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

(0)

相关推荐

  • Asp.Net 音频文件上传和播放代码

    一.音频文件上传和播放 在网上找到一个名叫AspNetPager的第三方控件,将AspNetPager.dll文件引用到项目的Bin中.在网页中可直接调用.引用命名空间 using Telerik.WebControls; >>上传 复制代码 代码如下: protected void Button1_Click(object sender, EventArgs e) { foreach (UploadedFile file in RadUploadContext.Current.Uploade

  • Python读取mp3中ID3信息的方法

    本文实例讲述了Python读取mp3中ID3信息的方法.分享给大家供大家参考.具体分析如下: pyid3不好用,常常有不认识的. mutagen不错,不过默认带的easyid3不会读取注释,需要手工hack一下 Python代码如下: from mutagen.mp3 import MP3 import mutagen.id3 from mutagen.easyid3 import EasyID3 EasyID3.valid_keys["comment"]="COMM::'X

  • 利用Ffmpeg获得flv视频缩略图和视频时间的代码

    问题描述:获得flv视频的缩略图和视频时间长度 谷歌了半天发现可以使用Ffmpeg获得视频的一些信息,先介绍一下FFMEPG 这里简单说一下:FFmpeg是用于录制.转换和流化音频和视频的完整解决方案,一套领先的音/视频编解码类库.官方正式版ffmpeg不支持rmvb和rm格式. 不过有很多解决方法 FFmpeg的官方网址是 http://ffmpeg.mplayerhq.hu/ . 中文Wiki是 http://www.ffmpeg.com.cn/ ,资料很多. ㈠安装FFMEPG 操作系统:

  • asp.net音频转换之.amr转.mp3(利用七牛转换法)

    前言 相信大家应该都知道吧,.amr格式用于移动设备的音频,压缩比比较大,多用于人声.通话,效果还行!所以,移动设备多采用amr格式来进行录存!比较常见的例子:通话录音,微信语音以及录音等! 但是这个鬼,用两个字来形容,就是"蛋疼":因为HTML5压根就不支持它(amr:我是个<孤儿> ,导演:佐米·希尔拉):所以,试听效果也就很难实现了!虽然微信是提供试听的,但一旦离开了页面,那就意味着,你再也无法播放你的录音了! 所以你不得不将文件转换下格式! 目前,小编掌握的转换格式

  • C#实现通过ffmpeg从flv视频文件中截图的方法

    本文实例讲述了C#实现通过ffmpeg从flv视频文件中截图的方法.分享给大家供大家参考.具体分析如下: 需要先下载ffmpeg,这是开源的,代码如下所示: 复制代码 代码如下: using System; using System.Configuration; public class PublicMethod:System.Web.UI.Page {     public PublicMethod()     {     }     //文件路径     public static stri

  • java实现mp3合并的方法

    本文实例讲述了java实现mp3合并的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: package test; import java.io.*; import java.util.*; public class Test6 {     public static void main(String[] args) throws Exception     {         String s = "D:/out.mp3"; // 输出目录 & 文件名  

  • C#实现简单播放mp3的方法

    本文实例讲述了C#实现简单播放mp3的方法.分享给大家供大家参考.具体实现方法如下: /// <summary> /// 测试 /// </summary> class TestDemo { public void Test() { clsMCI cm = new clsMCI(); cm.FileName = "alarm.mp3"; cm.play(); } } /// <summary> /// clsMci 的摘要说明. /// </s

  • python实现定时播放mp3

    程序很简单,主要是 mp3play 模块的应用 import mp3play, time filename = "Should It Matter.mp3" clip = mp3play.load(filename) while 1: if time.localtime().tm_min % 30 == 0: clip.play() print "\nStart to play" time.sleep(clip.seconds()) clip.stop() prin

  • C#定义的MP3播放类实例

    本文实例讲述了C#定义的MP3播放类.分享给大家供大家参考.具体分析如下: 这里使用C#定义一个MP3播放类,将Mp3文件作为资源文件包含到项目中,就可以播放mp3了 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO; using System.Runtime.InteropService

  • asp.net音频转换之.amr转.mp3(利用ffmpeg转换法)

    前言 上篇文章已经跟大家分享了asp.net利用七牛转换法将.amr转.mp3的方法,当时也说了还有另外一种方法是利用ffmpeg转换法,下面这篇文章就给大家详细介绍这种方法.这种方法相对第一种来说,要简单的多! FFmpeg的名称来自MPEG视频编码标准,前面的"FF"代表"Fast Forward",FFmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序.可以轻易地实现多种视频格式之间的相互转换. ffmpeg转换法 首先,你得下载

  • Android音频编辑之音频转换PCM与WAV

    前言 本篇开始讲解在Android平台上进行的音频编辑开发,首先需要对音频相关概念有基础的认识.所以本篇要讲解以下内容: 1. 常用音频格式简介 2. WAV和PCM的区别和联系 3. WAV文件头信息 4. 采样率简介 5. 声道数和采样位数下的PCM编码 6. 音频文件解码 7. PCM文件转WAV文件 现在先给出音频编辑的效果图,看看能不能提高大家的积极性~,哈哈 常用音频格式简介 在Android平台上进行音频开发,首先需要对常用的音频格式有个大致的了解.在Android平台上,常用的音

  • python脚本实现音频m4a格式转成MP3格式的实例代码

    前言 群里看到有人询问:谁会用python将微信音频文件后缀m4a格式转成mp3格式,毫不犹豫回了句:我会. 然后就私下聊起来了 解决方法介绍如下: 工具:windows系统,python2.7,转换库ffmpeg 安装ffmpeg库:下载对应电脑系统版本 https://ffmpeg.zeranoe.com/builds/ 我这里用的是window 64位 这里由于路径问题,我没有把ffmpeg加入到系统环境变量中,所以我用的是绝对路径 C:/Users/Administrator/Downl

  • java 音频转换wav格式标准音频的操作

    目录 简述 环境依赖 maven依赖 ffmpeg依赖 工具类代码 总结 简述 该工具类主要是为了将各类音频转为wav标准格式,其中可以调节采样率.声道数等指标.主要是使用ffmpeg命令进行转换. 环境依赖 maven依赖 <dependency> <groupId>org.bytedeco</groupId> <artifactId>javacv-platform</artifactId> <version>1.5.5</v

  • 如何利用FFmpeg合并音频和视频(多种方式)

    目录 一.FFmpeg 多个音频合并的2种方法 一种方法是连接到一起 另一种方法是混合到一起 音频文件截取指定时间部分 音频文件格式转换 二.FFmpeg合并视频文件的4种方法 1.使用concat协议进行视频文件的合并 2.使用concat滤镜(filter)进行视频文件的合并: 方法一:FFmpeg concat 协议 方法二:FFmpeg concat 分离器 方法三:Mencoder 连接文件并重建索引 方法四:使用 FFmpeg concat 过滤器重新编码(有损) 一.FFmpeg

  • asp.net 汉字转换拼音及首字母实现代码

    Default.aspx页面 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:

  • ASP字符串大写转换成小写 ASP小写转换成大写 ucase lcase

    LCase:转成小写 UCase:转成大写 下面是ASP中的代码,可以直接演示效果的. 复制代码 代码如下: <% dim str,str1,str2 str="AbCdEf" str1=LCase(str) str2=UCase(str) Response.write("LCase转换小写"&str1 & ",UCase转换大写" & str2) %> 而.NET中将字符串转换为大写ToUpper(),将字符

  • asp.net DataSet转换成josn并输出示例

    复制代码 代码如下: public class JsonUtil { public string ToJson(DataSet dataSet) { string jsonString = "{"; foreach (DataTable table in dataSet.Tables) { jsonString += """" + table.TableName + """:" + ToJson(table

随机推荐