需求场景(纯熟虚构):

1. 哥电脑里有200G电影copy到手机上看没那么大空间,copy一部看一部删除一部,很是不方便也费时间。
     2. 小林同学需求比较旺盛但是媳妇总有不方便的时候,家里有小孩,晚上只能拿着笔记本蹲厕所里撸,有几次差点把笔记本摔了。     
     3. 孙哥最近老抱怨做PC机前撸太累了,需要拿手几机躺床上整,但手机上有只能存一两部视频,而且每次撸,孙哥都要换个十来部,每部只拖到精彩的地方。
     4. 小赵比较专一两年来只用同一视频的同一段内容,但是由于不想在手机里存放,每次看完回家前都要删除掉,希望能整个流媒体的方式不保存本地的。

针对以上各兄弟的需求哥不辞虚脱、苦心编写、尽精调试,终于打造出了"要你命3000",Live555MediaServer + VLC(Android版)的家庭在线点播系统。

主要架构与方法:

服务端采用Live555MediaServer(开源C++项目),一个.exe免安装程序,直接copy到视频文件存放目录中运行之并在防火墙中添加允许即可。
  客户端采用VLC一个免费开源播放器,可以直接播放在线流媒体视频.
  服务端使用.net编写的一个内嵌的http服务器组件(httpServer.dll),这个安装成Windows Service(ILive555.winServer),开机自动运行,接收VLC发出的http请求,返回视频目录下的文件列表(Json格式),并且确保Live555MediaServer.exe已经运行(没允许的话着通过Process方式启动),只要电脑开机的情况下手机请求播放列表就可以观看电脑目录里的视频文件了。
 需要注意的事情是,Live555MediaServer不支持中文文件名(路径)所以需要将你的包含中文视频文名更名,这里提供一个GemMapFile.exe小程序(也是C#的),放到视频目录下运行后可以将目录下文件Rename,并且生成映射文件map.txt,里面记录了文件原来名称与当前名称的映射,你也可以手动编辑这个文件,ILive555.WinServer会使用这个文件,这样你VLC客户端视频列表里就可以显示中文名称了。

安装与使用:

 1.   下载本文下面给出的服务端与客户端安装文件,并解压服务端文件(确保你电脑上安装了.net4.0框架)
      
 2.1 服务端配置
       准备两个目录,一个存放视频文件,并将Live555MediaServer.exe跟GenMapFile.exe 复制到这个目录下,
      

一个存放Windows服务文件,将其他文件Copy这个目录下,用notepad打开ILive555.WinServer.exe.config文件配置FilmDir未你存储放视频的目录

<appSettings>
<add key="FilmDir" value="E:\Xiaofei\Crack"/>
</appSettings>

运行WinServiceSetup.exe安装Windows服务

安装完后,在防火墙中添加对Ilive555.WinServer.exe或者是7272端口的放行,同时添加对Live555MediaServer.exe的放行.

添加完后可以看到ILive.555.WinServer已经启动了,并且确认防火墙中添加的文件路径是不是这个服务运行的文件路径

测试服务端是否准备好
浏览器中输入:http://你电脑Ip:7272 如果显示如下

并且资源管理器中可以看到,Live555MediaServer进程运行,至此服务端配置完成。

2.2视频的准备与重命名

使用格式工厂,将你视频转化成LiveMediaServer支持的格式

大概1小时能转化20个G,看你电脑配置了,完了你运行下GenMapFile.exe将视频文件重命名,并生成Map文件,这里需要注意的是
你要先关掉格式工厂跟结束掉LiveMediaServer.exe进程,不然无法重名文件,Map.txt文件如下

3.1客户端的安装配置

将vlc.apk搞到手机上点安装就好了,完了打开菜单点服务器地址,输入你电脑的IP,就可以点ActionBar中的小电脑图标观看了

好了完了

安装文件下载:点这里

最后,
书东破有书:小撸仪情,大撸伤身,强路会飞烟灭

一位伟人说过:少撸点,早点找个媳妇才是正道。

与君共勉。

要完整代码的留Email,另外在发

XP+Android手机DIY家庭视频点播系统-历时3周全力打造吊丝的幸福生活的更多相关文章

  1. 在Android手机上安装linux系统

    在anroid手机中安装fedora系统.记住不只是教你安装fedora系统. 需要的备注与软件 1.一个已经root的Android手机,记住是root后的,root后的,root后的.(重要的事情 ...

  2. 在Android手机上学习socket程序

    我们都知道Android手机是基于Linux系统的,在没有Linux环境,但是想学习socket编程的同学可以在Android手机中试试,利用ndk编译可执行文件在Android手机中运行.不同于动态 ...

  3. Android手机QQ的UI自动化实践

    本文首发于果的博客园,原文链接:https://www.cnblogs.com/yuxiuyan/p/14992682.html, 转载请注明出处. UI自动化 我们为什么要搞UI自动化 可能很多同学 ...

  4. Android手机便携式wifi的使用及无线数据传输(主要针对XP系统)

    适用条件: 1.可以上网的安卓系统2.2以上的智能手机,或有便携式wifi功能的安卓智能手机 2.有无线网卡的笔记本电脑或台式机(特别是XP系统) 测试手机:中兴U930 电脑:华硕K50系列笔记本 ...

  5. 实现android手机来电拦截系统页面弹出自定义页面特效

    如何实现android手机来电拦截系统页面弹出自定义页面特效, 首先:    我们需要注册一个监听来电的广播PhoneStateReceiver 类:其次:    在onReceive里面我们获取an ...

  6. (转载)Mac系统下利用ADB命令连接android手机并进行文件操作

    Mac系统下利用ADB命令连接android手机并进行文件操作 标签: Mac adb android 2016-03-14 10:09 5470人阅读 评论(1) 收藏 举报  分类: Androi ...

  7. 搭建Android手机系统开发环境(转)

    Android作为近来表现十分强劲的手机操作系统,越来越受到开发人员的青睐,本篇文章将带领大家从零开始打造属于自己的开发环境. 一.JDK下载安装 JDK全称是Java Development Kit ...

  8. 移动H5页面,Android手机下,input获取焦点弹出系统虚拟键盘时,挡住input解决方法

    最近在写移动端页面的时候,遇到一个问题,在Android手机下,虚拟键盘会将input框遮挡住,具体情况如下图所示: 正常页面显示  IOS端显示情况 Android端显示情况 解决方式: <t ...

  9. MAC下如何配置Android手机调试(将测试手机加入到Mac系统的调试列表中)

    第一步: 查看usb设备信息 在 终端输入:system_profiler SPUSBDataType     可以查看连接的usb设备的信息 比如我的usb信息如下(部分内容): 查看到我的Andr ...

随机推荐

  1. graphql-yoga interface && union 使用

      接口就是一个约定,方便数据的约定,union 可以实现数据类型的共享,减少代码量 基本项目 参考 https://github.com/rongfengliang/graphql-yoga-doc ...

  2. 自动下载google reader里面的星标文章

    1. google reader马上就要关闭了,最后一次看看俺的浏览记录吧 最近 30 天的统计信息 全部订阅: 367 已读条目: 151 已点击的条目:41 个 加星标条目: 16 已发电子邮件条 ...

  3. bzoj2330糖果

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2330 差分约束裸题.练习用spfa判正环(一个点入队超过n次). 据说有1e5个点连成一条链 ...

  4. C语言 字符串处理函数 转自 http://blog.chinaunix.net/uid-25885064-id-3175049.html

     C字符串处理函数 2012-04-13 18:14:16 分类: C/C++ void *memccpy (void *dest, const void *src, int c, size_t n) ...

  5. 操作数据类m

    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threa ...

  6. pythonNET day05

    孤儿进程 父进程先于子进程退出,此时子进程就会成为孤儿进程. 孤儿进程会被系统指定的进程收养,即系统进程会成为该孤儿进程新的父进程.孤儿进程退出时该父进程会处理退出状态 僵尸进程 子进程先于父进程退出 ...

  7. 第1课 GUI程序原理分析

    1. 命令行应用程序 (1)命令行应用程序的特点 ①是一种基于顺序执行结构的可执行程序 ②程序执行过程中不需要与用户产生交互 ③程序执行后给出最终的运行结果 (2)命令行应用程序的运行模式——程序运行 ...

  8. android.support.v7.internal.widget.ActionBarOverlayLayout Couldn't Be Initialized

    问题症状: Android Studio 1.2 (Build 141.1890965) 新建工程,自动build完成后,Layout Editor无法预览Layout文件,报错内容: Renderi ...

  9. uedit富文本编辑器及图片上传控件

    微力后台 uedit富文本编辑器及文件上传控件的使用,无时间整理,暂略,参考本地代码.能跑起来.

  10. win7/64+python3.4+pyinstall3+tkinter+smtp=图形界面群发邮件客户端

    #file:   GUI_MAIL.py#Date:   2016/01/07#Author: lao_wan import tkinterimport smtplibfrom email.mime. ...