zoukankan      html  css  js  c++  java
  • ffmpeg.exe的使用

           

            ffmpeg.exe是一个源于Linux的工具软件,是FLV视频转换器,可以轻易地实现FLV向其它格式avi、asf、 mpeg的转换或者将其它格式转换为flv。

            视频转码(Video Transcoding)是指将已经压缩编码的视频码流转换成另一个视频码流,以适应不同的网络带宽、不同的终端处理能力和不同的用户需求。转码本质上是一个先解码,再编码的过程,因此转换前后的码流可能遵循相同的视频编码标准,也可能不遵循相同的视频编码标准。

             从上传视频到用户能看到上传的视频为止,它需要在服务器内部经历复杂的过程,下图就是一段视频在服务器内部挣扎的过程:

           

         一般我们在使用此项技术(要引入ffmpeg文件)的时候,通常另配置一台视频转码的服务器,我们就从上传视频开始来模拟它在服务器内部的处理过程:

    一、用户上传视频文件:Asp.net为了防止过大的http恶意请求阻塞网站,限定了每次上传文件最大4M,如果上传的文件不大,则先把它保存在内存中,如果文件过大,就会保存在磁盘中。为了保证安全,我们可以只对上传的ashx文件夹添加独立的web.config。其配置如下:

    <system.web>

    <HttpRuntime  maxRequestLength="204800"  requestLengthDiskThreshold="1024"/>

    </system.web>

           首先,我们需要上传视频,视频上传前台代码部分如下:

         

    视频上传到服务器的代码如下:

     

     视频上传成功之后,会将上传视频的内容保存在数据库中,并将它的状态信息设置为“已经上传到服务器上”另外会将它的信息通

    过url传参的形式上传到解码服务器上,视频在解码服务器上的处理过程如下:

      

                          由于会经常有视频文件进行上传,我们的服务器需要不停的判断是否有新的视频进行转码操作,所以我们可以通过采用网站应

                          用程序启动的时候调用启动线程的方法。在Global.asax.cs文件的Application_Start方法下启动线程,启动方式为

                          ConverterMgr.Instance.Start();

                          将视频文件进行转码之后,将数据库中的视频的状态更新为"转换完成”,将转码视频文件的信息回交给原来的服务器,也是通

                          过url传参的形式,在一般程序中进行处理,原因是一般处理程序不走页面生命周期,执行效率高。

      

                      接收到内容以后,我们可以使用Dreamweaver CS3插入flash文件(这样做比在.aspx文件中做要简单),播放文件,后台代码

                      为:

                        

               我们从网站上看到的视频就可以这样来做了。

         

  • 相关阅读:
    fread 和 read的区别
    Windows下的linux开发环境Cygwin的安装配置
    开机出现grub提示符后怎样进入系统?
    Matlab中函数句柄的优点
    UNIX环境高级编程的apue.h源码APUE
    装了一个ubuntu10.10,打印机不能添加了,
    迅雷上如何下载热映的电影大片~~
    我的linux 初始配置安装的东东,最好保存上一份,对于经常装linux的朋友
    HDU 1875 畅通工程再续
    HDU 1874 畅通工程续
  • 原文地址:https://www.cnblogs.com/hanwenhuazuibang/p/3013515.html
Copyright © 2011-2022 走看看