C# 使用ffmpeg.exe进行音频转换完整demo-asp.net转换代码

上一篇说了在winform下进行调用cmd.exe执行ffmpeg.exe进行音频转换完整demo.后来我又需要移植这个方式到asp.net中,但是asp.net和winform程序有很多不同。

需要修改WavConvertToAmr的方法,支持asp.net

1、WavConvertToAmr修改执行权限:如果在windows server中可能会遇到权限问题,需要配置IIS权限:

先从IIS中找到你的网站,在右键--【属性】中看看使用的应用程序池是哪个,然后【在应用程序池】目录下找到它,右键---【属性】

找到【标识】选项卡,再找到【预定义账户】,在后边的下拉菜单中选择“本地系统”就可以了!

这样一来,你的网站就可以随心所欲的执行cmd命令了,其实不仅仅是执行cmd命令,简直是至高无上的权限!

提醒一下,这样更改的是应用程序池权限,因此所有使用这个应用程序池的网站都有很高的权限,这是相当危险的,还须谨慎使用!!

这个方法存在危险,也通过设置执行的用户名和密码来设置:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

   /// <summary>

        /// 执行Cmd命令

        /// </summary>

        private string  Cmd(string c)

        {

            try

            {

                System.Diagnostics.Process process = new System.Diagnostics.Process();

                process.StartInfo.FileName = "cmd.exe";

                process.StartInfo.UseShellExecute = false;

               

                process.StartInfo.CreateNoWindow = true;

                process.StartInfo.UserName = "user";

                //构造用户密码,假定密码为123,必须一个字符一个字符的添加  

                System.Security.SecureString password = new System.Security.SecureString();

                password.AppendChar(‘p‘);

                password.AppendChar(‘a‘);

                password.AppendChar(‘s‘);

                password.AppendChar(‘s‘); 

                process.StartInfo.Password = password;  

                 

                process.StartInfo.RedirectStandardInput = true;

                process.StartInfo.RedirectStandardOutput = true;

                process.StartInfo.RedirectStandardError = true;

                process.Start();

                process.StandardInput.WriteLine(c);

                process.StandardInput.AutoFlush = true;

                Thread.Sleep(1000);

                process.StandardInput.WriteLine("exit");

                process.WaitForExit();

                //StreamReader reader = process.StandardOutput;//截取输出流           

                string outStr = process.StandardOutput.ReadToEnd();

        

          process.Close();

          

                return outStr;

            }

            catch (Exception ex)

            {

                return "error"+ex.Message;

            }

        }

注意:构造用户密码,假定密码为123,必须一个字符一个字符的添加  !

2、在asp.net中调用方式:


1

2

3

4

5

6

7

8

   protected void Button1_Click(object sender, EventArgs e)

    {

        string fileName = "d:\\2222.amr";

        string targetFileName = "d:\\2222.mp3";

        WavConvertAmr.WavConvertToAmr toamr = new WavConvertAmr.WavConvertToAmr();

        string remsg = toamr.ConvertToAmr(Server.MapPath("./ffmpeg/"), fileName, targetFileName);

       

    }

将ffmpeg.exe放在网站的目录ffmpeg的下面

在asp.net要注意ffmepg的路径:


1

2

3

4

5

6

7

8

9

10

11

12

13

./当前目录

/网站主目录

../上层目录

~/网站虚拟目录

 如果当前的网站目录为E:\wwwroot   应用程序虚拟目录为E:\wwwroot\company 浏览的页面路径为E:\wwwroot\company\news\show.asp

在show.asp页面中使用

Server.MapPath("./")   返回路径为:E:\wwwroot\company\news

 Server.MapPath("/")    返回路径为:E:\wwwroot

 Server.MapPath("../")   返回路径为:E:\wwwroot\company

 Server.MapPath("~/")   返回路径为:E:\wwwroot\company

 server.MapPath(request.ServerVariables("Path_Info")) 

 Request.ServerVariables("Path_Translated")  

上面两种方式返回路径为 D:\wwwroot\company\news\show.asp

时间: 2024-11-04 15:08:04

C# 使用ffmpeg.exe进行音频转换完整demo-asp.net转换代码的相关文章

使用ffmpeg.exe转换flv格式的asp函数 在asp中的调用_asp技巧

asp代码如下: <%  str="D:\ffmpeg.exe"  video="D:\a.mov"  video="D:\aaa.avi"  simg="D:\bbbbbb.jpg"  flv="D:\3gp2.flv"  response.write video  Set WshShell = server.CreateObject("Wscript.Shell")  Dim

最简单的基于FFMPEG+SDL的音频播放器 ver2 (采用SDL2.0)

简介 之前做过一个简单的音频播放器:<最简单的基于FFMPEG+SDL的音频播放器>,采用的是SDL1.2.前两天刚把原先做的<最简单的基于FFMPEG+SDL的视频播放器>更新采用了SDL2.0,于是顺手也把音频播放器更新成为SDL2.0. SourceForge项目主页:https://sourceforge.net/projects/simplestffmpegaudioplayer/ 完整工程下载地址:http://download.csdn.net/detail/leix

最简单的基于FFMPEG+SDL的音频播放器:拆分-解码器和播放器

本文补充记录<最简单的基于FFMPEG+SDL的音频播放器>中的两个例子:FFmpeg音频解码器和SDL音频采样数据播放器.这两个部分是从音频播放器中拆分出来的两个例子.FFmpeg音频解码器实现了视频数据到PCM采样数据的解码,而SDL音频采样数据播放器实现了PCM数据到音频设备的播放.简而言之,原先的FFmpeg+SDL音频播放器实现了: 音频数据->PCM->音频设备 FFmpeg音频解码器实现了: 音频数据->PCM SDL音频采样数据播放器实现了: PCM->

[原]通过配合ffmpeg.exe获取视频文件时长

import subprocess import os import time def getTime(flvpath,fid): #file_str = '1.flv' file_str = flvpath wg = subprocess.Popen(['ffmpeg.exe', '-i', file_str], stdout=subprocess.PIPE, stderr=subprocess.STDOUT) (standardout, junk) = wg.communicate() an

编译:ffmpeg,精简ffmpeg.exe

网上下载的各种 ffmpeg.exe ,最少都有11M+ 而我只需要处理 mp4 和 mp3,在网上搜索了一下精简ffmpeg的文章,折腾一天,也没有完全搞定,但多少有些收获,记录一下: 从 www.ffmpeg.org 下载 ffmpeg 最新源码代码. libx264, libxvid, libmp3lame, libvo-aacenc 都需要下载源代码进行编译,我将编译后都保存到 /msys/static/ /c/open_source/lame-3.99.5 (下载地址:http://l

实例:通过调用外部程序进行录制视频(ffmpeg.exe)

相关知识点: 1. ffmpeg可以用下面的参数来录制Windows 桌面操作的视频. ffmpeg.exe -y -rtbufsize 100M -f gdigrab -framerate 10 -draw_mouse 1 -i desktop -c:v libx264 -r 20 -crf 35 -pix_fmt yuv420p -fs 100M "fffffffffffffffff" 其中 fffffffffffffffff 部分 是需要填入 产生的视频文件名. 录制过程中,用户

使用哪个软件可以完整将PDF图纸转换成DXF格式?

使用哪个软件可以完整将PDF图纸转换成DXF格式?CAD图纸文件的两种基本格式就是DWG与DXF,将PDF转换成CAD格式的图纸文件在CAD相关工作中是需要进行操作的那么具体应该怎么样进行操作,将PDF格式文件进行转换成CAD格式,接下来小编就要来教大家的就是使用哪个软件可以完整将PDF图纸转换成DXF格式的全部操作步骤,希望以下能够帮助到你们,望采纳! 步骤一:首先需要进行启动的是你们电脑上面的CAD转换器软件,电脑上面没有这款软件的就可以去到迅捷CAD官网上面进行下载安装这款迅捷CAD转换器

IIS网站或系统验证码不显示问题——&quot;使用了托管的处理程序,但是未安装或未完整安装 ASP.NET&quot;

在IIS上发布了一个系统,但是登陆页面的验证码图片一直出不来,尝试了各种办法,权限.路径.继承父类路径等都不管用,进入Login.html,对着无验证码图片的图标,右键复制图片的网址,粘贴到地址栏,出现以下错误: 错误摘要HTTP 错误 500.21 - Internal Server Error处理程序"WebServiceHandlerFactory-Integrated"在其模块列表中有一个错误模块"ManagedPipelineHandler" 详细错误信息

最可能的原因使用的托管的处理程序,但是未安装或未完整安装asp.net

在IIS中访问APS页面时提示: "最可能的原因使用的托管的处理程序,但是未安装或未完整安装asp.net" 打开CMD窗口,执行下面的命令: "%WINDIR%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe" -iru -enable