`
shirlly
  • 浏览: 1646497 次
  • 性别: Icon_minigender_2
  • 来自: 福州
社区版块
存档分类
最新评论

asp.net实现调用ffmpeg实现视频格式的转换

    博客分类:
  • .NET
阅读更多
视频格式转换的函数
 //视频转换
    public void VideoConvertFlv(string FromName, string ExportName)
    {

        string ffmpeg = HttpContext.Current.Server.MapPath("~/UploadFiles/FLV/ffmpeg.exe");
        FromName = HttpContext.Current.Server.MapPath(FromName);
        ExportName = HttpContext.Current.Server.MapPath(ExportName);
        string Command = " -i \"" + FromName + "\" -y -ab 32 -ar 22050 -b 800000 -s  480*360 \"" + ExportName + "\""; //Flv格式  
        //string Command = " -i \"test.wmv\" -y -ab 32 -ar 22050 -b 800000 -s 320*240 \"2.flv\"";

        //string Command = "E:\\FFmpeg\\ffmpeg.exe -i E:\\ClibDemo\\VideoPath\\admin\\a.wmv -y -ab 56 -ar 22050 -b 500 -r 15 -s 320*240 " ExportName;
        System.Diagnostics.Process p = new System.Diagnostics.Process();
        p.StartInfo.FileName = ffmpeg;
        p.StartInfo.Arguments = Command;
        p.StartInfo.WorkingDirectory = HttpContext.Current.Server.MapPath("~/UploadFiles/FLV/");
        p.StartInfo.UseShellExecute = false;
        p.StartInfo.RedirectStandardInput = true;
        p.StartInfo.RedirectStandardOutput = true;
        p.StartInfo.RedirectStandardError = true;
        p.StartInfo.CreateNoWindow = false;
        //开始执行
        p.Start();
        p.BeginErrorReadLine();
        p.WaitForExit();
        p.Close();
        p.Dispose();
    }

调用视频格式转换
protected void btnSaveUploadVod_Click(object sender, EventArgs e)
    {
        string fileName = txtATitle.Text;//上传文件的名称的命名规则是标题
        bool flag = true;  //视频格式是否正确的标志
        if (fileName.Equals(""))
        {
            Response.Write("<script>alert('请先填写标题!')</script>");
        }
        else
        {
            filePathTemp = "UploadFiles/武夷概况/视频"; 
            string fpath = Path.Combine(Request.PhysicalApplicationPath, filePathTemp);
            UploadFile upFile = AspnetUpload.GetUploadFile("file2");
            if (upFile != null)
            {
                string sourceFileName = Path.GetFileName(upFile.get_FileName()); //取出上传的视频的文件名,进而取出该文件的扩展名
                string extendName = sourceFileName.Substring(sourceFileName.LastIndexOf(".") + 1);
                //上传后的文件名的命名规则是:标题+数字+后缀  
                if (!isAllowedVodType(extendName))
                {
                    flag = false;
                }
                else
                {
                    
                    VodWarehouseManage vodWarehouseBll = new VodWarehouseManage();
                    //先上传到服务器,然后转换格式,最后删掉原来非FLV格式的视频 
                    //上传后的文件名的命名规则是:标题+后缀  
                    string fileNameTemp = fileName + "." + extendName; 
                    string savePath = filePathTemp + "/" + fileNameTemp;
                    upFile.SaveAs(Path.Combine(fpath, fileNameTemp));
                    if (!extendName.ToLower().Equals("flv"))
                    {//进行视频转换


                        //调用视频转换函数将其它格式的视频转为FLV格式的视频  
                        string fromName = "~/" + savePath;
                        string exportName = "~/" + filePathTemp + "/" + fileName + ".flv";
                        // Response.Write("<script>alert('fromName=" + fromName + " and exportName=" + exportName + "')</script>");

                        //转换视频格式
                        VideoConvertFlv(fromName, exportName);

                        //删除非FLV格式的视频
                        vodWarehouseBll.DeleteFile(Path.Combine(fpath, fileNameTemp));

                        savePath = filePathTemp + "/" + fileName + ".flv";

                    }

                    //保存视频的信息 
                    VodWarehouse vodWarehouse = new VodWarehouse();
                    vodWarehouse.VodSortId = 17;//1代表媒体的类型为武夷概况
                    vodWarehouse.VodPath = savePath;
                    vodWarehouse.AttachId = Int32.Parse(articleId.Value);//隐藏域中的值

                    if (vodWarehouseBll.SaveVodsInfo(vodWarehouse) == false)
                    {
                        Response.Write("<script>alert('保存视频的过程出错!')</script>");
                    }
                    else
                    {
                        //Response.Write("<script>alert('视频上传成功!')</script>");
                        //将上传的路径写入相应的上传文本框中 

                    }
                }
            }//end foreach

            if (flag == true)
            {
                this.upLoadVodResult.Text = "视频上传成功";
                this.vodPannel.Visible = false;
            }
            else
            {
                //this.upLoadVodResult.Text = "您选择的视频的格式不正确,请确保您的视频的格式是:flv/mov/wmv/avi/mp4";
                Response.Write("<script>alert('您选择的视频的格式不正确,请确保您的视频的格式是:flv/mov/wmv/avi/mp4!')</script>");
            }
        }
    }
分享到:
评论

相关推荐

    .net core使用ffmpeg实现视频转换

    本项目采用.net core+.net standard搭建... 1、支持读取视频信息(格式、fps、width、height等) 2、支持转换为指定视频类型 3、支持webApi调用 4、支持任务调度(job),可设置指定时间运行 5、支持DI(Autofac)

    ASP.NET 使用FFmpeg实现MP4转换M3U8示例源码

    要实现在ASP.NET中使用FFmpeg转换MP4为M3U8,首先需要在项目中引入FFmpeg的执行文件。这通常可以通过NuGet包管理器安装第三方库,如`FFmpeg.AutoGen`,该库提供了与FFmpeg交互的C#接口。然后,需要确保FFmpeg的可...

    ASP.NET 利用ffmpeg.exe进行音频格式转换

    在ASP.NET中集成`ffmpeg.exe`,可以实现服务器端的音频格式转换。 首先,你需要在你的开发环境中安装`ffmpeg`。你可以从其官方网站下载最新版本,并将其添加到你的服务器或开发机器的路径中,这样可以通过命令行...

    asp.net+ffmpeg.exe在线视频转码

    ASP.NET结合FFmpeg.exe进行在线视频转码是一个常见的技术应用场景,尤其在现代互联网服务中,为了适应不同设备和网络环境,视频内容往往需要被转换成不同的格式和分辨率。本技术主要涉及以下几个关键知识点: 1. **...

    asp.net 视频格式转换成flv格式

    3. "详细的视频格式转换代码":这可能是指使用ASP.NET编写的一段代码,用于调用上述两个工具(mencoder或ffmpeg),实现视频格式的转换。 在ASP.NET中实现视频格式转换,通常会涉及以下步骤: 1. **上传视频**:...

    asp.net 利用ffmpeg.exe将视频转码mp4,视频截图

    总结来说,通过ASP.NET结合ffmpeg.exe,我们可以实现视频格式转换和截图功能,使得视频内容能够更好地适应网页播放环境。这个过程涉及到命令行调用、进程管理等技术,是ASP.NET开发中的实用技能。同时,理解ffmpeg的...

    asp.net视频截图及格式转换DEMO(采用ffmpeg.exe)

    在本DEMO中,ASP.NET被用来实现一个视频处理功能,主要包括视频截图和格式转换。 首先,视频截图是通过ffmpeg.exe工具来实现的。ffmpeg是一个强大的开源跨平台命令行工具,能够处理各种视频和音频格式。在ASP.NET...

    asp.net 利用ffmpeg将视频封装成mp4的源代码技术资料

    在本技术资料中,我们将聚焦于如何利用FFmpeg库在ASP.NET环境下将视频封装成MP4格式,这是一个常见的视频处理需求,尤其在现代多媒体网站和移动应用中。 FFmpeg是一款开源的跨平台多媒体处理工具,能够处理音频、...

    Asp.net 上传视频时将视频格式转换成.flv格式的domo!

    在Asp.net开发中,有时候我们需要处理用户上传的视频文件,并可能需要将其转换为特定的格式,例如.flv。此示例(domo)展示了如何实现这个功能。下面我们将详细探讨涉及的技术点。 1. **视频上传**: 在Asp.net中...

    演示C#如何调用ffmpeg API_FFmpeg.AutoGen_ffmpeg

    在本文中,我们将深入探讨如何在C#环境中利用FFmpeg.AutoGen库来调用FFmpeg API,以便处理视频和音频任务。FFmpeg是一个强大的开源工具集,用于处理多媒体数据,包括转换、编码、解码、流媒体等。而FFmpeg.AutoGen是...

    ASP.NET视频无水印解析

    在ASP.NET中,处理视频内容通常涉及到多媒体处理库,例如FFmpeg,这是一个开源的跨平台解决方案,可以用于转换、解码、编码视频和音频。开发者可能会利用FFmpeg的API或者通过命令行接口在ASP.NET应用中集成视频处理...

    ASP.NET-[其他类别]视频Flv格式的在线转换源码.zip

    这个压缩包“ASP.NET-[其他类别]视频Flv格式的在线转换源码.zip”包含了一个利用ASP.NET技术实现的视频文件转换系统,特别是将视频文件转换为FLV(Flash Video)格式的源代码。 FLV是Adobe Flash Player支持的一种...

    .net 上传视频 转换格式 播放视频

    ASP.NET提供了多种方法来处理文件上传,如`HttpPostedFile`类,它可以从`Request`对象中获取上传的文件。用户通过浏览器选择视频文件,然后提交表单,服务器端接收到请求后,可以将视频文件保存到服务器的特定目录。...

    asp.net 转换为flv

    在这个场景中,我们要讨论的是如何在ASP.NET环境中将多种视频格式转换为FLV(Flash Video)格式。FLV是一种流行的网络流媒体格式,尤其在Flash Player广泛使用的年代,它被广泛应用于在线视频播放。 首先,要实现...

    视频格式转换工具 asp代码实现上传视频

    本教程将详细讲解如何使用ASP.NET代码实现视频上传、转换格式以及播放的功能。 首先,让我们从视频上传开始。在ASP.NET中,可以使用`HttpPostedFileBase`类来接收用户通过表单上传的文件。在服务器端,我们需要创建...

    在ASP.Net中实现flv视频转换

    在提供的代码片段中,我们可以看到通过调用FFmpeg和MEncoder命令行工具来进行视频格式转换的操作。 - **使用FFmpeg进行转换**: ```csharp public void RunFFMpeg(string strCmd) { Process p = new Process();...

    asp.net中将各种视频文件转换成.flv格式

    将各种视频文件转换为FLV格式在ASP.NET环境下是一个综合性的技术挑战,涉及前端用户界面设计、后端逻辑处理、以及外部工具的调用。正确配置应用设置、理解并利用FFmpeg和Mencoder的能力、以及精心设计前后端交互流程...

    在asp.net中做视频转换,将各种视频文件转换成.flv格式

    在ASP.NET环境中实现视频转换,将各种视频文件转化为.FLV(Flash Video)格式,是一项常见的需求,特别是对于那些希望在网页上提供视频流服务的开发者来说。.FLV格式因其良好的跨平台性和对Flash Player的良好支持而...

    视频转换格式,截取图片中某一帧所需要的工具(asp.net/Java)

    在asp.net或Java项目中,可以调用ffmpeg的命令行接口,实现服务器端的视频处理功能。 2. mencoder: mencoder是MPlayer的编码部分,同样用于视频转换,支持多种输入和输出格式。相比ffmpeg,mencoder可能更专注于...

    ASP.NET源码——视频Flv格式的在线转换源码.zip

    接着,视频转换的过程可能会通过调用FFmpeg的命令行工具实现。在C#中,可以使用Process类来执行外部命令,传递FFmpeg的参数,如输入文件路径、输出文件路径、编码器设置等。转换过程中可能需要设置目标视频的分辨率...

Global site tag (gtag.js) - Google Analytics