视频转码

/// <summary>
        /// 转换成MP4格式
        /// </summary>
        /// <param name="fromFilePath"></param>
        /// <returns></returns>
        public static string ToMp4(string fromFilePath)
        {
            string ffmpeg = HttpContext.Current.Server.MapPath("/") + "ffmpeg\\bin\\ffmpeg.exe";//ffmpeg执行文件的路径
            int lastIndexPort = fromFilePath.LastIndexOf(".");
            string toPathFileName = fromFilePath.Substring(0, lastIndexPort) + ".mp4";
            if ((!System.IO.File.Exists(ffmpeg)))
            {
                return string.Empty; ;
            }
            //转mp4格式
            string Command = " -i \"" + fromFilePath + "\"  -c:v libx264 -strict -2 \"" + toPathFileName + "\"";
            using (System.Diagnostics.Process p = new System.Diagnostics.Process())
            {
                p.StartInfo.FileName = ffmpeg;
                p.StartInfo.Arguments = Command;
                //p.StartInfo.WorkingDirectory = HttpContext.Current.Server.MapPath("~/temp/");
                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.Dispose();
                return toPathFileName;
            }
        }

 

posted @ 2017-11-28 08:52  _York  阅读(427)  评论(0编辑  收藏  举报