知识大全 JXTA下的媒体数据传输

Posted 广告

篇首语:知识就是飞上天的羽翼。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 JXTA下的媒体数据传输相关的知识,希望对你有一定的参考价值。

JXTA下的媒体数据传输  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  Sun微系统公司公开了旨在建立P P(Peer to Peer)通用技术基础的JXTA计划 JXTA技术是网络编程和计算的平台 用以解决现代分布计算尤其是点对点(P P)计算中出现的问题

  JXTA 将建立核心的网络计算技术 提供支持在任何平台 任何地方以及任何时间实现P P计算的一整套简单 小巧和灵活的机制 JXTA首先将归纳目前P P的功能特别 而后建立核心的技术来表达目前的P P计算的局限性 其重点是创建基本的机制 而具体的策略选择权则交给应用的开发者 JXTA将充分利用 XML Java等开放技术 使得UNIX操作系统更强大和灵活 比如利用管道(Pipes)传输Shell命令实现复杂的计算任务 JXTA支持P P 应用的基本功能来建立一个P P系统 还将努力证实这些可以成为建立更高层功能的基础构造模块

  JXTA架构可以分为三个层面 JXTA核心层 JXTA 业务层和JXTA应用层

  本人为实现P P网络下的视频点播和直播而研究这一课题 但凡了解过Jxta技术的人都应该知道 在Jxta中 所有的资源都是以广告的形式表现 广告是一种XML格式的结构化文档 而这种文档却无法包含媒体数据 为此 我曾试验过一种很傻的实现 那就是把媒体数据读出来的字节数组转化为字符串 然后将其包含在管道广告中 另一端通过搜索到该广告而从中获得这一字符串再还原为字节数组 结果失败 对这两个文件进行比较 有局部地方发生了变化 于是只得另想他途

  呵呵 Jxta真的可以成为网络Radio吗?

  众所周知 现在的网络通讯通常使用TCP或是UDP协议 而TCP常常因为资源占用太大而在媒体数据传输时弃之不用 UDP成为了解决方案之一 在JXTA 中 也有类似UDP协议的实现 通过构造JxtaMulticastSocket类来实现 该类与Socket类类似 不过构造方式有了很大的变化 后者通过IP和端口 而该类则通过管道广告 这便具有了JXTA技术的特点 因为JXTA是采用虚拟管道通信 而管道资源的表现形式是广告 以下是一段代码 用来发送媒体数据的

  

  class SendMessageThread extends Thread public void run() System out println( SendMessageThread is run );int sendCount = ;File file = null;try file = new File( E:\\\\TDdownload\\\\Movie\\\\ wmv );fis = new FileInputStream(file);bis = new BufferedInputStream(fis); catch (FileNotFoundException e) // TODO Auto generated catch blocke printStackTrace();

  byte[] buf = new byte[ ];int i = ;try JxtaMulticastSocket tmpSocket = new JxtaMulticastSocket(pg pipeAdv);System out println(pipeAdv);while ((i = bis read(buf)) != ) sendCount++;System out println(buf);DatagramPacket dp = new DatagramPacket(buf buf length);tmpSocket send(dp); catch (IOException e) // TODO Auto generated catch blocke printStackTrace();

  System out println( Send DataPackeg: + sendCount);System out println( send a message end ! );System exit( );

  

  这是一个内部线程类 用来发送媒体数据 因为是测试 没有用到流媒体服务器 因此此处用文件流取代了

  以下是另一个内部线程类 用来收接媒体数据

  

  class ReciveMessageThread extends Thread public void run() int recvierCount = ;System out println( ReciveMessageThread is run );byte[] buf = new byte[ ];try

  file = new File(filePath);if (!file exists()) file createNewFile();fos = new FileOutputStream(file);bos = new BufferedOutputStream(fos); else fos = new FileOutputStream(file true);bos = new BufferedOutputStream(fos);while (jms != null) recvierCount++;DatagramPacket dp = new DatagramPacket(buf buf length);System out println(dp getData());try jms receive(dp); catch (SocketTimeoutException e) System out println( not data );break; finally bos write(dp getData());

  

   catch (IOException e) // TODO Auto generated catch blocke printStackTrace(); finally

  if (bos != null) try bos flush();bos close();bos = null; catch (IOException e) // TODO Auto generated catch blocke printStackTrace();

  if (fos != null) try fos close();fos = null; catch (IOException e) // TODO Auto generated catch blocke printStackTrace();System out println( Recvier DataPackeg: + recvierCount);System out println( Recvier is over );System exit( );

  

  jms也是一个类的对象 通过跟发送方管道广告构造 (此处一定要注意 发送方和接收方的构造管道广告参数一定是一样的)免得大家走弯路 我可是在这上面浪费了两天时间的

  其余代码则省略了 无非是一些构建网络 查找加入组 搜索广告的操作 该代码通过了在局网内两台电脑上的运行测试 由于时间关系 没做进一步优化 也由于其他原因 我不便将全部代码上传 还望见谅!

cha138/Article/program/Java/hx/201311/26325

相关参考

知识大全 JXTA概念介绍(翻译)

JXTA概念介绍(翻译)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  .JXTA定义  JXT

知识大全 用PB开发多媒体数据库管理系统

用PB开发多媒体数据库管理系统  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  图像声音数字视频是

知识大全 用PB开发多媒体数据库管理系统(一)

用PB开发多媒体数据库管理系统(一)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  图像声音数字

知识大全 用PB开发多媒体数据库管理系统(二)

用PB开发多媒体数据库管理系统(二)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  二查询系统的

知识大全 讲述Jxta的故事(1)

把P2P进行到底:讲述Jxta的故事(1)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Jxt

知识大全 讲述Jxta的故事(2)

把P2P进行到底:讲述Jxta的故事(2)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在Jx

新兴的光子产业首先在通信领域找到了突破口。信息传输的主要媒体曾经一度是电子,然而,由于采用光子传输信息,能够获得比电子传

新兴的光子产业首先在通信领域找到了突破口。信息传输的主要媒体曾经一度是电子,然而,由于采用光子传输信息,能够获得比电子传输更高的效率,因此,新兴的光子通信大有取代电子通信的趋势,在光子通信中,最有发展

知识大全 P2P的Jxta解决之道

P2P的Jxta解决之道  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!      摘要  点对点(

知识大全 如何使用JXTA技术建立P2P网络

如何使用JXTA技术建立P2P网络  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  作者朱传辉  

知识大全 基于JXTA的P2P应用开发

基于JXTA的P2P应用开发  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  PP计算被Intel