当前位置: 首页 > news >正文

市建设与管理局网站公司简介ppt案例

市建设与管理局网站,公司简介ppt案例,产品关键词的搜索渠道,wordpress 登录挂件首先#xff0c;我们部署一下文件夹.在工程的目录下新建几个文件夹如下图#xff1a;UpFiles文件夹是要保存你上传的文件#xff0c;PlayFiles文件夹是用于你转换后保存的文件#xff08;用于网上播放#xff09; ImgFile文件夹是保存截取视频文件的图片#xff0c;然后那…首先我们部署一下文件夹.在工程的目录下新建几个文件夹如下图UpFiles文件夹是要保存你上传的文件PlayFiles文件夹是用于你转换后保存的文件用于网上播放 ImgFile文件夹是保存截取视频文件的图片然后那两个mencoder和ffmpeg文件夹是视频转换工具.此视频转换也 可叫做mencoderffmpeg视频转换. 首先在配置文件中给这些文件夹进行路径的配置.如下appSettings         !--工具文件夹--         add keyffmpeg valueffmpeg/ffmpeg.exe/     add keymencoder valuemencoder/mencoder.exe/     add keymplayer valuemencoder/mplayer.exe/         !--上传文件的路径--         add keyupfile valueUpFiles/         !--上专文件图片路径--         add keyimgfile valueImgFile/         !--上传文件图片大小--         add keyCatchFlvImgSize value240x180/     add keywidthSize value400/     add keyheightSize value350/         !--转换后文件路径--         add keyplayfile valuePlayFiles/     /appSettings 在上传.ASPX页面中   标题asp:TextBox IDtxtTitle runatserver Width358px/asp:TextBox         asp:RequiredFieldValidator IDRequiredFieldValidator2 runatserver ControlToValidatetxtTitle             ErrorMessage标题不为空/asp:RequiredFieldValidator        br /         asp:FileUpload IDFileUpload1 runatserver Width339px /         asp:Button IDbtnUpload runatserver OnClickbtnUpload_Click Text上传视频 Width70px /         文件类型span stylecolor:Red;(.asf|.flv|.avi|.mpg|.3gp|.mov|.wmv|.rm|.rmvb)/span             asp:RegularExpressionValidator IDimagePathValidator runatserver ErrorMessage文件类型不正确             ValidationGroupvgValidation DisplayDynamic ValidationExpression^[a-zA-Z]:(\\.)(.asf|.flv|.avi|.mpg|.3gp|.mov|.wmv|.rm|.rmvb)$             ControlToValidateFileUpload1             /asp:RegularExpressionValidator         asp:RequiredFieldValidator IDRequiredFieldValidator1 runatserver ControlToValidateFileUpload1             ErrorMessage文件不为空/asp:RequiredFieldValidator/div         div style height:0px; border-top:solid 1px red; font-size:0px;/div         div上传列表./div 程序工作的原理是视频先上传上去然后跟着就是开始转换. 所以.在CS 文件中有 这里为了方便我是用sqlDatasource数据控件做数据的操作.using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;public partial class _Default : System.Web.UI.Page  {     // 扩展名定义    string[] strArrFfmpeg  new string[] {asf,avi,mpg,3gp,mov };     string[] strArrMencoder  new string[] {wmv,rm,rmvb };     protected void Page_Load(object sender, EventArgs e)     {     }     //    protected void btnUpload_Click(object sender, EventArgs e)     {                  string upFileName  ;         if (this.FileUpload1.HasFile)         {             string fileName  PublicMethod.GetFileName(this.FileUpload1.FileName);// GetFileName();            if ((string)Session[file]  fileName)             {                 return;             }             upFileName  Server.MapPath(PublicMethod.upFile  fileName);             this.FileUpload1.SaveAs(upFileName);             string saveName  DateTime.Now.ToString(yyyyMMddHHmmssffff) ;             string playFile  Server.MapPath(PublicMethod.playFile  saveName);             string imgFile  Server.MapPath(PublicMethod.imgFile  saveName);             //System.IO.File.Copy(Server.MapPath(PublicMethod.playFile  00000002.jpg), Server.MapPath(PublicMethod.imgFileaa.jpg));            PublicMethod pm  new PublicMethod();             string m_strExtension  PublicMethod.GetExtension(this.FileUpload1.PostedFile.FileName).ToLower();             if (m_strExtension  flv)             {//直接拷贝到播放文件夹下                System.IO.File.Copy(upFileName, playFile.flv);                 pm.CatchImg(upFileName, imgFile);             }             string Extension  CheckExtension(m_strExtension);             if (Extension  ffmpeg)             {                 pm.ChangeFilePhy(upFileName, playFile, imgFile);             }             else if (Extension  mencoder)             {                  pm.MChangeFilePhy(upFileName, playFile, imgFile);             }             InsertData(this.txtTitle.Text, fileName,saveName);             Session[file]  fileName;         }              }       //    private string CheckExtension(string extension)     {         string m_strReturn  ;         foreach (string var in this.strArrFfmpeg)         {             if (var  extension)             {                 m_strReturn  ffmpeg; break;             }         }         if (m_strReturn  )         {             foreach (string var in strArrMencoder)             {                 if (var  extension)                 {                     m_strReturn  mencoder; break;                 }             }         }         return m_strReturn;     }     #region 插入数据到数据库中     private void InsertData(string MediaName,string fileName,string saveName)     {         //string namefileName.Substring(0, fileName.LastIndexOf(.));        string imgName  saveName  .jpg;//图片文件名;        string playName  saveName  .flv;         string sqlstr  insert into Media(FMediaName,FMediaUpPath,FMediaPlayPath,FMediaImgPath) values(MName,MUppath,MPlaypath,MImgpath);         //string constr  ConfigurationManager.ConnectionStrings[sqlcon].ToString();        SqlDataSource1.InsertCommand  sqlstr;         SqlDataSource1.InsertCommandType  SqlDataSourceCommandType.Text;// CommandType.Text;        SqlDataSource1.InsertParameters.Add(MName,MediaName);         SqlDataSource1.InsertParameters.Add(MUppath,PublicMethod.upFilefileName);         SqlDataSource1.InsertParameters.Add(MPlaypath,PublicMethod.playFileplayName);         SqlDataSource1.InsertParameters.Add(MImgpath,PublicMethod.imgFileimgName);         SqlDataSource1.Insert();     }     #endregion   }PublicMethod类如下 在这个类里面主要是做文件转换和保存在转换文件的时候CPU的利用率可以达100%. 它的主要原理是另起一个进程在转换的时候你会发现你的进程里多了一个.using System;using System.Configuration;/// summary/// Summary description for PublicMethod/// /summarypublic class PublicMethod:System.Web.UI.Page {     public PublicMethod()     {               }     //文件路径    public static string ffmpegtool  ConfigurationManager.AppSettings[ffmpeg];     public static string mencodertool  ConfigurationManager.AppSettings[mencoder];     public static string mplayertool  ConfigurationManager.AppSettings[mplayer];     public static string upFile  ConfigurationManager.AppSettings[upfile]  /;     public static string imgFile  ConfigurationManager.AppSettings[imgfile]  /;     public static string playFile  ConfigurationManager.AppSettings[playfile]  /;     //文件图片大小    public static string sizeOfImg  ConfigurationManager.AppSettings[CatchFlvImgSize];     //文件大小    public static string widthOfFile  ConfigurationManager.AppSettings[widthSize];     public static string heightOfFile  ConfigurationManager.AppSettings[heightSize];     //   // //获取文件的名字    public static string GetFileName(string fileName)     {         int i  fileName.LastIndexOf(\\)  1;         string Name  fileName.Substring(i);         return Name;     }     //获取文件扩展名    public static string GetExtension(string fileName)     {         int i  fileName.LastIndexOf(.)1;         string Name  fileName.Substring(i);         return Name;     }     //    #region //运行FFMpeg的视频解码(这里是绝对路径)     /// summary     /// 转换文件并保存在指定文件夹下面(这里是绝对路径)     /// /summary     /// param namefileName上传视频文件的路径原文件/param     /// param nameplayFile转换后的文件的路径网络播放文件/param     /// param nameimgFile从视频文件中抓取的图片路径/param     /// returns成功:返回图片虚拟地址;   失败:返回空字符串/returns    public  string ChangeFilePhy(string fileName, string playFile, string imgFile)     {         //取得ffmpeg.exe的路径,路径配置在Web.Config中,如:add   keyffmpeg   valueE:\51aspx\ffmpeg.exe   /           string ffmpeg  Server.MapPath(PublicMethod.ffmpegtool);         if ((!System.IO.File.Exists(ffmpeg)) || (!System.IO.File.Exists(fileName)))         {             return ;         }         //获得图片和(.flv)文件相对路径/最后存储到数据库的路径,如:/Web/User1/00001.jpg                   string flv_file  System.IO.Path.ChangeExtension(playFile, .flv);         //截图的尺寸大小,配置在Web.Config中,如:add   keyCatchFlvImgSize   value240x180   /           string FlvImgSize  PublicMethod.sizeOfImg;         System.Diagnostics.ProcessStartInfo FilestartInfo  new System.Diagnostics.ProcessStartInfo(ffmpeg);         FilestartInfo.WindowStyle  System.Diagnostics.ProcessWindowStyle.Hidden;         FilestartInfo.Arguments   -i   fileName   -ab 56 -ar 22050 -b 500 -r 15 -s   widthOfFile  x  heightOfFile     flv_file;         //ImgstartInfo.Arguments     -i     fileName     -y   -f   image2   -t   0.05   -s     FlvImgSize       flv_img;         try         {             //转换            System.Diagnostics.Process.Start(FilestartInfo);             //截图            CatchImg(fileName, imgFile);             //System.Diagnostics.Process.Start(ImgstartInfo);        }         catch         {             return ;         }         //        return ;     }     //    public string CatchImg(string fileName,string imgFile)     {         //        string ffmpeg  Server.MapPath(PublicMethod.ffmpegtool);         //        string flv_img imgFile.jpg;         //        string FlvImgSize  PublicMethod.sizeOfImg;         //        System.Diagnostics.ProcessStartInfo ImgstartInfo  new System.Diagnostics.ProcessStartInfo(ffmpeg);         ImgstartInfo.WindowStyle  System.Diagnostics.ProcessWindowStyle.Hidden;         //        ImgstartInfo.Arguments     -i     fileName    -y  -f  image2   -ss 2 -vframes 1  -s     FlvImgSize       flv_img;         try         {             System.Diagnostics.Process.Start(ImgstartInfo);         }         catch         {             return ;         }         //        if (System.IO.File.Exists(flv_img))         {             return flv_img;         }         return ;     }     #endregion     //    #region //运行FFMpeg的视频解码(这里是(虚拟)相对路径)     /// summary     /// 转换文件并保存在指定文件夹下面(这里是相对路径)     /// /summary     /// param namefileName上传视频文件的路径原文件/param     /// param nameplayFile转换后的文件的路径网络播放文件/param     /// param nameimgFile从视频文件中抓取的图片路径/param     /// returns成功:返回图片虚拟地址;   失败:返回空字符串/returns    public  string ChangeFileVir(string fileName, string playFile, string imgFile)     {         //取得ffmpeg.exe的路径,路径配置在Web.Config中,如:add   keyffmpeg   valueE:\51aspx\ffmpeg.exe   /           string ffmpeg  Server.MapPath(PublicMethod.ffmpegtool);         if ((!System.IO.File.Exists(ffmpeg)) || (!System.IO.File.Exists(fileName)))         {             return ;         }         //获得图片和(.flv)文件相对路径/最后存储到数据库的路径,如:/Web/User1/00001.jpg           string flv_img  System.IO.Path.ChangeExtension(Server.MapPath(imgFile), .jpg);         string flv_file  System.IO.Path.ChangeExtension(Server.MapPath(playFile), .flv);         //截图的尺寸大小,配置在Web.Config中,如:add   keyCatchFlvImgSize   value240x180   /           string FlvImgSize  PublicMethod.sizeOfImg;         System.Diagnostics.ProcessStartInfo FilestartInfo  new System.Diagnostics.ProcessStartInfo(ffmpeg);         System.Diagnostics.ProcessStartInfo ImgstartInfo  new System.Diagnostics.ProcessStartInfo(ffmpeg);         FilestartInfo.WindowStyle  System.Diagnostics.ProcessWindowStyle.Hidden;         ImgstartInfo.WindowStyle  System.Diagnostics.ProcessWindowStyle.Hidden;         //此处组合成ffmpeg.exe文件需要的参数即可,此处命令在ffmpeg   0.4.9调试通过          //ffmpeg -i F:\01.wmv -ab 56 -ar 22050 -b 500 -r 15 -s 320x240 f:\test.flv        FilestartInfo.Arguments   -i   fileName   -ab 56 -ar 22050 -b 500 -r 15 -s   widthOfFile  x  heightOfFile     flv_file;         ImgstartInfo.Arguments     -i     fileName     -y   -f   image2   -t   0.001   -s     FlvImgSize       flv_img;         try         {             System.Diagnostics.Process.Start(FilestartInfo);             System.Diagnostics.Process.Start(ImgstartInfo);         }         catch         {             return ;         }         /**/         ///注意:图片截取成功后,数据由内存缓存写到磁盘需要时间较长,大概在3,4秒甚至更长;            ///这儿需要延时后再检测,我服务器延时8秒,即如果超过8秒图片仍不存在,认为截图失败;            ///此处略去延时代码.如有那位知道如何捕捉ffmpeg.exe截图失败消息,请告知,先谢过!           if (System.IO.File.Exists(flv_img))         {             return flv_img;         }         return ;     }     #endregion     #region //运行mencoder的视频解码器转换(这里是(绝对路径))     public string MChangeFilePhy(string vFileName, string playFile, string imgFile)     {         string tool  Server.MapPath(PublicMethod.mencodertool);         //string mplaytool  Server.MapPath(PublicMethod.ffmpegtool);                 if ((!System.IO.File.Exists(tool)) || (!System.IO.File.Exists(vFileName)))         {             return ;         }         string flv_file  System.IO.Path.ChangeExtension(playFile, .flv);         //截图的尺寸大小,配置在Web.Config中,如:add   keyCatchFlvImgSize   value240x180   /           string FlvImgSize  PublicMethod.sizeOfImg;         System.Diagnostics.ProcessStartInfo FilestartInfo  new System.Diagnostics.ProcessStartInfo(tool);                 FilestartInfo.WindowStyle  System.Diagnostics.ProcessWindowStyle.Hidden;         FilestartInfo.Arguments     vFileName   -o   flv_file   -of lavf -lavfopts    i_certify_that_my_video_stream_does_not_use_b_frames -oac mp3lame -lameopts abr:br56 -ovc lavc -lavcopts vcodecflv:vbitrate200:mbd2:mv0:trell:v4mv:cbp:last_pred1:dia-1:cmp0:vb_strategy1 -vf scale  widthOfFile  : heightOfFile   -ofps 12 -srate 22050;         try         {             System.Diagnostics.Process.Start(FilestartInfo);             CatchImg(flv_file, imgFile);         }         catch         {             return ;         }          //        return ;     }     #endregion } 转载于:https://www.cnblogs.com/moviestar/archive/2007/12/21/1009388.html
http://wiki.neutronadmin.com/news/4922/

相关文章:

  • 网站建设常用问题库网站后期维修问题
  • 找别人做网站需要什么信息商标注册的原则
  • 网站建设导向明确南宁网站建公司
  • 东莞网络织梦网站怎样做seo
  • 郑州网站商城建设安康市传媒公司
  • 东莞网站竞价推广运营手机系统优化软件
  • wordpress软件网站模板下载失败免费一键生成logo网站
  • 网站内容优化的主要方法开个平台需要多少钱
  • 网站引导页在线做上海网站建设|网站制作
  • 怎样组建企业网站云匠网
  • 报价网站系统wordpress前端编辑插件
  • 做网站用什么软件最好网站服务器转移视频吗
  • 定制网站建设多少钱北大青鸟计算机培训学费
  • 百度网站开发语言蛋糕店网站开发策划书
  • 国外专门做杂志的共享网站怎么网站怎么建设框架
  • 苏州建设交通官方网站免费vip电影网站怎么做
  • 佛山主题网站设计多少钱wordpress是mvc架构吗
  • 网站首页英文开发公司章程
  • 网站做微信支付接口银川市建设厅网站
  • 高中生做网站网页做网站需要哪些东西和步骤
  • 开发一套网站系统 多少钱高端网站定制开发解决方案
  • 自己做网站卖东西犯法吗网站效益分析
  • 网站长春网站建设简述网站开发具体流程
  • 成都企业网站建设公司首页通知书
  • 上传附件空间网站百度指数热度榜
  • 太原建设工程信息网站wordpress简约主题
  • 东南亚网站建设市场什么网站ppt做的最好看
  • 杭州做企业网站的公司松江做网站价格
  • 工行网站跟建设网站区别机械加工种类
  • 建设一个班级网站的具体步骤惠州制作公司网站