热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ipadjavahttp客户端_【图片】【分享】JAVA实现苹果设备(iphone/ipad)直播电脑摄像头采集的【java吧】_百度贴吧...

该楼层疑似违规已被系统折叠隐藏此楼查看此楼具体的技术介绍本人是根据这篇博客了解的:http:www.cnblogs.comhaibindevarchive201301

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

具体的技术介绍本人是根据这篇博客了解的:

http://www.cnblogs.com/haibindev/archive/2013/01/30/2880764.html

技术点列表以及解决方案:

1、采集视频源和音频源的数据

视频数据采用jmf或者opencv,本人实际开发中jmf对mac系统支持的不是很好所以放弃

opencv是全平台支持、并且原生支持部分java调用接口

所以视频采集选用opencv实现

声音采集这个暂时没有做,不过可以通过java原声的声音api可以实现采集

2、对原始数据进行H264编码和AAC编码

本人没有详细了解h264编码的格式,采用了Jcodec框架进行编码

该框架缺点是文档太少楼主只实现了将opencv采集到的图片数据合成为MP4格式的文件

声音采集没有做,不过实现起来较为简单,网上很多aac声音采集例子

3、视频和音频数据封装为MPEG-TS包

封装为TS包这个推荐使用ffmpeg这个工具,转换起来要通过runtime调命令格式的

楼主原本思考用c++封装为jni调用,但是与命令行调用的效率差不多所以没有采用

该工具也可以将声音文件与视频文件合并为TS文件

简化了声音处理过程

4、HLS分段生成策略及m3u8索引文件

一个直播的m3u8文件格式为:

#EXTM3U

#EXT-X-MEDIA-SEQUENCE:1

#EXT-X-TARGETDURATION:5

#EXTINF:5,

ts file url

#EXTINF:5,

ts file url

#EXTINF:5,

ts file url

ts file url为ts视频文件的绝对路径

如你的ts文件请求地址为http://127.0.0.1/1.ts

则file url为/1.ts

#EXT-X-MEDIA-SEQUENCE:1

为分段序列

客户端会根据该序列决定下一个该播放那个TS文件

#EXT-X-TARGETDURATION:5

为分段视频长度

建议3 - 10秒之间

时间越短播放延迟越小

理论延迟应为分段长度

但实际上本人测试发现2秒钟分段的TS文件延迟时间为10秒左右

可能是客户端有缓存或者是其他情况 具体的正在详细探究

5、HTTP传输协议

这个就好说了 吧里基本上都是写web的 随便找一个就可以

我采用的是jetty



推荐阅读
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • PHP图片截取方法及应用实例
    本文介绍了使用PHP动态切割JPEG图片的方法,并提供了应用实例,包括截取视频图、提取文章内容中的图片地址、裁切图片等问题。详细介绍了相关的PHP函数和参数的使用,以及图片切割的具体步骤。同时,还提供了一些注意事项和优化建议。通过本文的学习,读者可以掌握PHP图片截取的技巧,实现自己的需求。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 如何去除Win7快捷方式的箭头
    本文介绍了如何去除Win7快捷方式的箭头的方法,通过生成一个透明的ico图标并将其命名为Empty.ico,将图标复制到windows目录下,并导入注册表,即可去除箭头。这样做可以改善默认快捷方式的外观,提升桌面整洁度。 ... [详细]
  • 本文介绍了使用AJAX的POST请求实现数据修改功能的方法。通过ajax-post技术,可以实现在输入某个id后,通过ajax技术调用post.jsp修改具有该id记录的姓名的值。文章还提到了AJAX的概念和作用,以及使用async参数和open()方法的注意事项。同时强调了不推荐使用async=false的情况,并解释了JavaScript等待服务器响应的机制。 ... [详细]
  • Webpack5内置处理图片资源的配置方法
    本文介绍了在Webpack5中处理图片资源的配置方法。在Webpack4中,我们需要使用file-loader和url-loader来处理图片资源,但是在Webpack5中,这两个Loader的功能已经被内置到Webpack中,我们只需要简单配置即可实现图片资源的处理。本文还介绍了一些常用的配置方法,如匹配不同类型的图片文件、设置输出路径等。通过本文的学习,读者可以快速掌握Webpack5处理图片资源的方法。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
author-avatar
mobiledu2502881483
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有