苹果iOS下列。目前应用Air Video,能力iOS由Wifi远程直接播放电脑视频,无需看视频复制到手机。非常好用!最近使用Android打电话。展望类别似应用,找了很长一段时间没有找到。在仔细的思考AirVideo工程,视频站点类似,在Android以下应该也能够有类似的方法实现。

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

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

1) 在Windows以下安装Air Video Serverserver,并设置同意远程观看的视频文件文件夹

2) 通过苹果的AppStore下载AirVideoclient。并安装

Air Video苹果client是收费的,似乎还不廉价。当然越狱以后就不存在这个问题了

3) Air Videoclient连接Windows的服务端。能够看到服务端各文件夹的视频文件列表,并选择播放。当中:

MP4能够直接播放,RMVB\FLV等须要服务端实时转换成MP4的视频流,再传给iOS上的client

注:实时转换,看Windows系统的CPU占用事实上还是挺高的。很不环保

苹果里面AirVideoclient播放视频的播放器。看起来和直接播放优酷等视频站点的播放器。看起来事实上是一样的。于是怀疑,AirVideo发送到client的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,如:

<Connector port="8080"URIEncoding="utf-8"/>

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

三)设置视频文件文件夹的内容,同意通过TOMCATWEB公布。

方法:

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

<Hostname="localhost" appBase="C:\TDDOWNLOAD\">

<Context path="/"docBase="." debug="0"/>

<Context path="/fd"docBase="C:\FDOWNLOAD\" debug="0"/>

</Host>

这样,能够通过http://localhost:8080/地址訪问C:\TDDOWNLOAD\文件夹的视频文件。

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

四)使TOMCAT能够支持直接WEB浏览器查看文件夹以下文件的列表,查看的效果例如以下:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaGFodQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="TOMCAT文件展示">

配置方法:

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

<init-param>

<param-name>listings</param-name>

<param-value>true</param-value>

</init-param>

五)在安卓手机上安装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类型。

<mime-mapping>

<extension>mp4</extension>

<mime-type>video/mp4</mime-type>

</mime-mapping>

<mime-mapping>

<extension>rmvb</extension>

<mime-type>video/x-rmvb</mime-type>

</mime-mapping>

<mime-mapping>

<extension>flv</extension>

<mime-type>video/x-flv</mime-type>

</mime-mapping>

接下来,重新启动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很easy,只是看起来效果和前面配置的结果没什么区别。HTML5网页嵌入视频代码范比例如以下

<divid="video"style="position:relative;z-index:100;width:100%;float:left;">

<video id="media" width="100%"autoplay="autoplay" controls>

<source src="<%=path +file%>">

</video>

</div>

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

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

版权声明:本文博主原创文章,博客,未经同意不得转载。

Android[安德鲁斯] 文本Air Video 远程播放电脑视频的更多相关文章

  1. Android手机播放电脑视频文件-屌丝必备

    今天早上一到办公室,照常打开博客园看文章,看到有一片文章是用  http://www.cnblogs.com/wdfrog/p/3738180.html 看到这哥们实现的方法好复杂,又是配置电脑端,又 ...

  2. 微信 vue中使用video.js播放m3u8视频,解决安卓自动全屏的问题。

    最近一个项目中需要在微信中播放m3u8格式的视频,刚开始用了 vue-video-player 这个插件,在IOS手机体验良好,本以为完事了, 结果安卓手机一点播放就自动全屏,心态略崩.查了资料说是安 ...

  3. [转] Android 4.4中播放HTML5视频<video>的Bug

    近期Nexus 4手机自动升级到Android4.4,本来挺好的一件事儿,结果发现自己的应用中出现一个Bug,应用中使用了Webview播放HTML5视频,代码如下: <video width= ...

  4. 【转】Android 4.4中播放HTML5视频<video>的Bug

    近期Nexus 4手机自动升级到Android4.4,本来挺好的一件事儿,结果发现自己的应用中出现一个Bug,应用中使用了Webview播放HTML5视频,代码如下: <video width= ...

  5. Android 播放在线视频

    首先开启电脑上的tomcat,将视频文件放在Tomcat 7.0\webapps\ROOT中 不用修改代码,直接输入地址即可,运行如下: 播放在线视频,必须要求手机支持当前的格式,才可以播放 播放的原 ...

  6. android 54 播放音视频

    mainActivity: package com.sxt.day07_09; import java.util.ArrayList; import java.util.HashMap; import ...

  7. Android应用开发学习笔记之播放视频

    作者:刘昊昱 博客:http://blog.csdn.net/liuhaoyutz 在Android中,我们可以通过使用VideoView类或者MediaPlayer类来播放视频. 一.使用Video ...

  8. 【Android开发VR实战】二.播放360&#176;全景视频

    转载请注明出处:http://blog.csdn.net/linglongxin24/article/details/53924006 本文出自[DylanAndroid的博客] [Android开发 ...

  9. Android 使用PLDroidPlayer播放网络视频 依据视频角度自己主动旋转

    近期由于项目需求 .须要播放网络视频 .于是乎 研究了一番 ,说说我遇到的那些坑 如今市面上有几个比較主流好用的第三方框架 Vitamio ( 体积比較大,有商业化风险 github:https:// ...

随机推荐

  1. Web API Test Client 1.2.0

    使用方法 1 安装 matthewcv.WebApiTestClient 到你的Web API 项目 PM> Install-Package matthewcv.WebApiTestClient ...

  2. jQuery 代码的层定位滑动动画效果

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. Java中判断字符串是否为数字的五种方法 (转)

    推荐使用第二个方法,速度最快. 方法一:用JAVA自带的函数 public static boolean isNumeric(String str){ for (int i = str.length( ...

  4. Linux-2.6.32内核编译流量计数器nfacct

    最近一直想看到一本书<一个Jiegeng华>.而技术不依赖书.但是,这并不表示我IT技术没有兴趣.事实证明,,当我无法理解的沧桑.肮脏的领导者无法理解的心理.自我可惜无法理解它处处感受到脏 ...

  5. Cocos2d-Java安装和配置跨平台游戏引擎以及相关的开发工具

    假设认为博文图片不清晰.能够Ctrl+鼠标滚动缩放网页比例 Cocos2d-Java是什么? http://blog.csdn.net/touchsnow/article/details/387047 ...

  6. Linux网络基础设施配置

    1.TCP/IP网络配置文件 /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network /etc/host.conf /etc/ ...

  7. Android MotionEvent事故响应机制

    于android于.主要活动包括点击.按.拖累.滑动等操作,这些构成了Android事件响应,总体而言,,所有事件由例如以下三部分构成的基础: 按(action_down),搬家(action_mov ...

  8. Codeforces 110B-Lucky String(技能)

    B. Lucky String time limit per test 2 seconds memory limit per test 256 megabytes input standard inp ...

  9. folat i = 0.1; 警告

    今天的用途  float i = 0.1;那么编译器警告实际: #include <iostream> using namespace std; int main() { float k ...

  10. DNSserver内置笔记本

    DNS于linuxserver该服务名是named,和named服务相关的软件bind. 周围环境:     系统版本号:VBOX虚拟机centos6.0. 本机内网IP 192.168.2.198. ...