在苹果的iOS下面,有个应用Air Video,可以在iOS下通过Wifi远程直接播放电脑里的视频,而不需要把视频复制到手机上再看。非常好用!最近用了Android的手机,想找类似的应用,找了很久都没找到。仔细想了下AirVideo的工作原理,和优酷等视频网站类似,在Android下面应该也可以有类似的方法实现。

今日在华为荣耀6上面终于验证通过了一个完美的方案,赶紧放上来和有同样需要的朋友们分享分享。

先说一下Air Video的工作原理:

1) 在Windows下面安装Air Video Server服务器,并设置允许远程观看的视频文件目录

2) 通过苹果的AppStore下载AirVideo客户端,并安装

   Air Video苹果客户端是收费的,似乎还不便宜,当然越狱以后就不存在这个问题了

3) Air Video客户端连接Windows的服务端,可以看到服务端各目录的视频文件列表,并选择播放。其中:

   MP4可以直接播放,RMVB\FLV等需要服务端实时转换成MP4的视频流,再传给iOS上的客户端

   注:实时转换,看Windows系统的CPU占用其实还是挺高的,非常不环保

 

苹果里面AirVideo客户端播放视频的播放器,看起来和直接播放优酷等视频网站的播放器,看起来其实是一样的。于是怀疑,AirVideo发送到客户端的MP4视频流,和WEB环境下的MP4视频流可能是相同的,都是通过HTTP地址访问。当然,这种说法只是猜测,全无依据。基于该想法,只要建一个WEB服务,能在手机上通过该WEB地址提供视频流,手机上即可观看电脑上的视频。

具体步骤来了,折腾了几天,自己也没想到结果可以这么简单

一)从网上下载TOMCAT并安装,我是从这个地址下载了绿色版TOMCAT5.5,如果原来已经有TOMCAT,可以跳过这一步

    http://www.rsdown.cn/down/32748.html

    a) 下载后可以瘦身一下,删除掉这几个目录下的内容后,整个目录只有5Mb左右(目录不能删)

      webapps/

      server/webapps/

      conf/Catalina/localhost/

    b) 如果原来已经安装了tomcat,已经有CATALINA_HOME环境变量,现在重新下载一个,需要:

        - 使用文本编辑bin/startup.bat文件

        - 在11行前面加上 REM,注释掉该行内容,否则仍会用系统的CATALINA_HOME环境变量

         REM if not "%CATALINA_HOME%"== "" goto gotHome

     c) 到conf目录下,采用最简单的server配置文件

       - 重命名server.xml为server-normal.xml

       - 重命名server-minimal.xml为server.xml

二)TOMCAT缺省不支持URL里面包含中文,这会导致文件名为中文的视频不能播放,方法:

    使用文本编辑server.xml,设置Connector的URIEncoding为utf-8,如:

   

    参考地址:http://www.williamlong.info/archives/469.html

三)设置视频文件目录的内容,允许通过TOMCATWEB发布。方法:

使用文本编辑server.xml,设置Host及Context,我的修改后如下

     

            

            

     

      这样,可以通过http://localhost:8080/地址访问C:\TDDOWNLOAD\目录的视频文件;

                  通过http://localhost:8080/fd/ 地址访问C:\FDOWNLOAD\目录的视频文件;

四)使TOMCAT可以支持直接WEB浏览器查看目录下面文件的列表,查看的效果如下:

      

      配置方法:

      使用文本编辑conf/web.xml,查找listings,并设置参数为true。

      

           listings

           true

       

五)在安卓手机上安装UC浏览器。相信很多人都已经使用UC,这个就不细说步骤了。

      注:在同一个手机上试了UC和Chrome,发现Chrome只能下载RMVB/FLV,不能播放,但UC可以,因此,要求用UC

六) 此时,执行TOMCAT在bin目录下的startup.bat启动TOMCAT,并将手机和电脑连接到同一网络;
      接下来,使用UC应该已经可以查看TOMCAT发布的网页了,UC的地址如:http://192.168.1.123:8080/,IP地址为TOMCAT所在电脑的地址
      尝试点击其中的*.MP4文件,会出现下面的提示。选择[在线播放],哈哈,MP4已经可在手机上直接看了

    

七)革命尚未成功,试一下RMVB/FLV文件,发现还是不能看的。重新回到TOMCAT的配置文件

      使用文本编辑器打开bin/web.xml,在mp4的设置下面,增加rmvb和flv的mime类型。

   

        mp4

       video/mp4

   

   

        rmvb

       video/x-rmvb

   

   

        flv

       video/x-flv

   

 

接下来,重启TOMCAT,重新在UC里面尝试点击*.RMVB和*.FLV的文件,如果都能够播放,说明你很运气。如果还是不行,实在不好意思,我只能做到这些了。本人使用一款酷派8150s低端手机测试,也同样不能看RMVB/FLV的视频,但荣耀6就非常正常。这可能和安卓操作系统版本,或厂商的定制有关。

其他补充:

1)    Windows下面的Chrome也只能支持播放MP4;如果浏览器不能支持,但还是非常想要在手机上看RMVB/FLV,可以麻烦点,在电脑上先使用格式工厂都转换成MP4格式

2)    Air Video, 格式工厂都是使用ffmpeg, mp4creator等开源项目转换MP4视频流的,并且是通过命令行调用。通过手机控制电脑转换格式为MP4,应该可以进一步研究,不过不是专业就太浪费时间了

3)    也尝试了使用jsp文件,来做视频文件的展示,安卓需要的HTML5非常简单,不过看起来效果和前面配置的结果没什么差别。HTML5网页嵌入视频代码范例如下

      

      

          

        

      

 

初步分析的结果,视频网页为了同时支持在IE、Chrome、Android、iOS播放视频,需要根据HTTP请求消息头的浏览器类型判断,嵌入不同的视频播放代码,甚至提供不同的视频文件格式。iOS真的就只能支持MP4的播放,其他格式都不支持….

 瘦身并已经配置完成的绿色版TOMCAT可以从这里下载:http://download.csdn.net/detail/hahu/7799861

更多相关文章

  1. android提取视频多张图片和视频信息
  2. android视频聊天软件推荐
  3. android 优秀源码
  4. 几款android即时通讯与监控软件对比
  5. android 4.0以上WebView不能全屏播放视频的解决办法
  6. Android(安卓)阅读 Office 文档,所有你能想到的解决方案都在这啦
  7. android语音即时通讯之录音、播放功能实现代码
  8. (安卓/android)应用层绕过HAL调用驱动
  9. 上传音乐到Android模拟器的SD卡,并在Android模拟器上播放

随机推荐

  1. Android(安卓)Studio 出现 Gradle's depe
  2. Android多点触控
  3. Fuchsia OS 要取代 Android?小论Google Fu
  4. Android(安卓)源码分析-Dalvik 虚拟机创
  5. Android使用JNI实现Java与C之间传递数据
  6. Android二维码扫描之ZXing快速项目集成
  7. Android(安卓)onTouchEvent, onClick及on
  8. Android(安卓)创建与解析XML(一)—— 概述
  9. Android 头像上传
  10. 最强 Android(安卓)Studio 使用小技巧和