「java媒体流」Java 流
本篇文章给大家谈谈java媒体流,以及Java 流对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、现在基于JAVA开发的流媒体播放框架有哪些
- 2、java转行流媒体开发现实吗
- 3、java 中怎么实现流媒体
- 4、Java媒体架构基础:Framework Basics
- 5、如何用java获取当前的视频流
- 6、java关于播放声音的代码的解释
现在基于JAVA开发的流媒体播放框架有哪些
最流行的SSH。
Spring Framework 【Java开源 J2EE框架】
Spring是一个解决了许多在J2EE开发中常见的问题的强大框架。 Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的Inversion of Control容器。然而,这仅仅是完整图景中的一部分:Spring在使用IoC容器作为构建完关注所有架构层的完整解决方案方面是独一无二的。 Spring提供了唯一的数据访问抽象,包括简单和有效率的JDBC框架,极大的改进了效率并且减少了可能的错误。Spring的数据访问架构还集成了Hibernate和其他O/R mapping解决方案。Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC事务提供一个一致的编程模型。Spring提供了一个用标准Java语言编写的AOP框架,它给POJOs提供了声明式的事务管理和其他企业事务--如果你需要--还能实现你自己的aspects。这个框架足够强大,使得应用程序能够抛开EJB的复杂性,同时享受着和传统EJB相关的关键服务。Spring还提供了可以和IoC容器集成的强大而灵活的MVC Web框架。【SpringIDE:Eclipse平台下一个辅助开发插件】.
Struts 【Java开源 Web框架】
Struts是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注。Struts把Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。【StrutsIDE:用于Struts辅助开发的一个Eclipse插件】
Hibernate 【Java开源 持久层框架】
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。Eclipse平台下的Hibernate辅助开发工具:【Hibernate Synchronizer】【MiddlegenIDE】
java转行流媒体开发现实吗
java可以转行流媒体开发。因为计算机专业可以参与流媒体服务器架构的设计与开发,java对于实现直播、短视频系统子系统架构和开发,有明显的帮助。对于技术难点的攻关和预研工作有相关的帮助。
java 中怎么实现流媒体
html
head
title播放器/title
/head
body
object id="player" height="360" width="480" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"
param NAME="AutoStart" VALUE="-1"
!--是否自动播放--
param NAME="Balance" VALUE="0"
!--调整左右声道平衡,同上面旧播放器代码--
param name="enabled" value="-1"
!--播放器是否可人为控制--
param NAME="EnableContextMenu" VALUE="-1"
!--是否启用上下文菜单--
param NAME="url" value="./喜洋洋.mp3"
!--播放的文件地址--
param NAME="PlayCount" VALUE="1"
!--播放次数控制,为整数--
param name="rate" value="1"
!--播放速率控制,1为正常,允许小数,1.0-2.0--
param name="currentPosition" value="0"
!--控件设置:当前位置--
param name="currentMarker" value="0"
!--控件设置:当前标记--
param name="defaultFrame" value=""
!--显示默认框架--
param name="invokeURLs" value="0"
!--脚本命令设置:是否调用URL--
param name="baseURL" value=""
!--脚本命令设置:被调用的URL--
param name="stretchToFit" value="0"
!--是否按比例伸展--
param name="volume" value="50"
!--默认声音大小0%-100%,50则为50%--
param name="mute" value="0"
!--是否静音--
param name="uiMode" value="mini"
!--播放器显示模式:Full显示全部;mini最简化;None不显示播放控制,只显示视频窗口;invisible全部不显示--
param name="windowlessVideo" value="0"
!--如果是0可以允许全屏,否则只能在窗口中查看--
param name="fullScreen" value="0"
!--开始播放是否自动全屏--
param name="enableErrorDialogs" value="-1"
!--是否启用错误提示报告--
param name="SAMIStyle" value
!--SAMI样式--
param name="SAMILang" value
!--SAMI语言--
param name="SAMIFilename" value
!--字幕ID--
/object
/body
/html
Java媒体架构基础:Framework Basics
第一节 关于此指南 此指南包含的内容?Java媒体架构(JMF)是一个令人激动的通用的API 它允许Java开发者用许多不同的方法处理媒体 本指南主要通过使用工作的例子提供一个JMF的一些主要的特征的概述 阅读完本指南后 你将会明白JMF体系结构中的主要播放功能 你同样能正确的使用JMF 使用现存的例子和可为更多特殊功能扩展的源代码 本指南包含着以下主题 · 下载和安装JMF· 主要的JMF类以及它们在JMF体系结构中的应用· 播放本地的媒体文件· 为媒体的存取和操作制作以和图形用户界面(GUI)· 通过网络传播媒体· 通过网络接收媒体几乎所有的媒体类型的操作和处理都可以通过JMF来实现 全面的讨论JMF所提供的所有特征已经超过了本指南的范围 我们将使用三个简单的媒体应用程序来学习此框架的构建模块 通过这个方法 本指南将为你未来学习和实施更多特殊的应用提供准备 我应该使用此指南吗?本指南会带你学习使用JMF工作的基础 为完成这些 我们会创建三个的独立工作的例程序 每个例子都会建立前一个例子的基础上 显示JMF功能性的不同方面 在本指南中的例子假定你曾经使用过并且已经熟悉了Java程序语言 除了Java核心和JMF的类之外 我们会使用一些Java AWT和Swing类(用于创建GUI) 也会有一些Java网络类(用于在网络中传输媒体) 对GUI和网络类一些熟悉有助于你更快的明白观点和这里的例子 但并非是阅读本指南必须的 我们将学习的例程序如下· 一个简单的音频播放器(JMF的HelloWorld应用) 这个字符界面的播放器通过在命令行中简单的输入媒体文件的名字就可以播放大多数的音频类型 此音频播放器的演示大体上显示了JMF的特有的类 · 一个图形界面的媒体播放器 我们将使用JMF内置的接口组件来建立图形界面 所以在此练习中必须有一些图形界面的编程经验 这个媒体阅览器演示使用了一些Java AWT和Swing类来为用户显示图形组件 · 一个媒体广播应用 此应用程序允许一个本地媒体文件通过网络传播 此程序能灵活的使媒体只传输到指定的网络节点 或者传输到一个子网络中的所有节点 此演示使用了一些Java的网络APIs来在网络中传输媒体 作为第三个练习的一部分 我们将修改图形界面的播放器 让其能接收并且播放媒体 跳至 页观看Resources 文章 指南 和其他参考书目的列表 这会帮助你学习到更到关于此指南包括的主题 安装需求要运行此指南中的例程序 你需要如下的工具和组件 · Java 平台 标准版 编译和运行演示程序· Java媒体框架 版本 a或者更高· 一块已经安装并且配置号的适当的声卡· 一台或者多台测试机器· 演示的源代码文件在mediaplayer jar中最后的一个演示应用显示了JMF在网络中的应用 如果需要 此演示能运行在一个独立的机器上 使用此机器即是传输方也是接收方 可是要观察到在网络中使用JMF的所有功能 你仍然需要至少两台联网的机器 在 页中的Resources可下载Java 平台 完整的源代码文件 以及其他一些完成本指南所需要的工具 下载安装文件将JMF安装到你的计算机中的第一步是在JMF的主页中下载安装文件 它同样包括了JMF源代码和API文档的链接 页的Resources中有下载JMF的链接 目前 JMF有Windows Solaris Linux等版本 以及可运行在任何装有虚拟机的计算机上一个纯Java版本 为了增加性能 你需要下载一个与你操作系统所适应的版本 任何在一个操作系统JMF版本下书写和编译的代码都可以方便的移植到另外的操作系统上 例如 如果你下载了一个Solaris版本的JMF并且编译了一个类 这些类就可以在Linux上使用 不会有任何问题 作为选择 你可以选择下载纯Java版本 或者跨平台版本的JMF 这些版本没有使用操作系统特有的库文件 如果没有合适的JMF版本适合的操作系统 那么跨平台版本就是一个不错的选择 安装JMF下载完JMF安装程序后 双击安装程序的图标 大部分安装程序都会有个选项 安装本地库到系统目录中 例如 Windows版本安装程序会有一个选项 Move DLLs to Windows/System directory 最好将此选项选中 因为它能确保这些操作系统的库文件能正确的安装在安装的过程中 你还需要选择项目来更新系统的CLASSPATH和PATH变量 如果这些选项被关闭 那么在你编译和运行本指南的例程序的时候就需要在classpath中引入JMF的jar文件 第二节 一个简单的音频播放器 浏览在本节中 我们将进行创建一个简单的音频播放器的第一个练习 本例将介绍Manager类和Player接口 中两个都是建立大多数基于JMF应用的重要部分 本例的功能目标是在字符界面下播放本地的音频文件 我们将学习此源代码 并了解每一行所做的任务 完成本节后 你将会有一个基于JMF的可播放包括MP WAV AU等多种音频文件的演示程序 在本练习后的源代码分类种可查询文件SimpleAudioPlayer java 引入必要的类SimpleAudioPlayer类中包括了一些调用 在其前几行中需要引入所有必要的类 import dia *;import java io File;import java io IOException;import URL;import MalformedURLException;The dia包是由JMF定义的多个包之一 dia是一个核心包 包括了定义Manager类和Player接口等 本节中 我们主要学习Manager类和Player接口 其余的dia类放在后面的章节中 除了引入dia声明外 以上的代码片断引入了一些创建媒体播放器的输入的声明 Player接口在下面的代码片断中 创建一个公共类SimpleAudioPlayer并举例定义一个Player变量 public class SimpleAudioPlayer {private Player audioPlayer = null;术语Player听起来由点熟悉 因为它是建立在我们公用的音频或者视频播放器的基础上的 事实上 这个接口的例子就像是当作它们的真实的副本 Players揭示了一个实体上的媒体播放器(如立体音箱系统或者VCR)涉及到功能上的方法 例如 一个JMF媒体播放器可以开始和结束一个媒体流 在本节种 我们将使用Player的开始和结束功能 在一个文件上创建一个Player使用JMF获得一个特定媒体文件的Player实例非常简单 Manager类在JMF中如同一个工厂制作许多的特殊接口类型 包括Player接口 因此 Manager类的责任就是创建Player实例 如下例 public SimpleAudioPlayer(URL url) throws IOException NoPlayerException CannotRealizeException {audioPlayer = Manager createRealizedPlayer(url);}public SimpleAudioPlayer(File file) throws IOException NoPlayerException CannotRealizeException {this(file toURL());}如果你看完本节的代码 你可以注意到Manager类包含了创建一个Player实例的其他方法 我们会研究其中的一些 如在后面的章节中的DataSource或者MediaLocator的实例化 Player的状态JMF定义了大量的一个Player实例可能存在的不同状态 如下 · Prefetched· Prefetching· Realized· Realizing· Started· Unrealized使用这些状态因为使用媒体常常是资源非常密集的 由JMF对象揭示的许多方法都是不闭塞的 允许一系列事件监听的状态改变的异步通知 例如 一个Player在它可以启动之前 必须经过Prefetched和Realized状态 由于这些状态的改变都需要一些时间来完成 JMF媒体应用可以分配一个线程来初始化创建Player实例 然后再继续其他的操作 当Player准备就绪的时候 它会通知应用程序其状态已经改变 在一个如同我们的这样简单的程序中 多功能性的类型并不是很重要 处于这个原因 Manager类也提供了一些创建Realized player的有用方法 调用一个createRealizedPlayer()方法来阻塞调用线程 直到player达到Realized状态 为了调用一个无阻塞的创建player的方法 我们在Manager类中使用了一个createPlayer()方法 下面的一行代码中创建了一个我们需要在例程序中使用的Realized player audioPlayer = Manager createRealizedPlayer(url);启动和停止Player设定一个Player实例的启动或是停止就如同调用Player的一个简单的认证方法 如下所示 public void play() {audioPlayer start();}public void stop() {audioPlayer stop();audioPlayer close();}调用SimpleAudioPlayer类中的play()方法来实现调用Player实例的start()方法 调用此方法后 你能听到本地的喇叭的声音文件 同样的 stop()方法使player停止并且关闭掉Player对象 对于读取和或者播放本地媒体文件来说 关闭Player实例释放所有资源是一个有用的方法 因为这是一个简单的例子 关闭Player是终止一个会话可接受的方法 但是在实际的应用中 你需要小心的确认在除掉Player之前必须要关闭掉 一但你已经关闭掉player 在再次播放一个媒体之前你必须要创建一个新的Player实例(等待它的状 lishixinzhi/Article/program/Java/hx/201311/26532
如何用java获取当前的视频流
你说的视频流,是流媒体的,目前,JAVA不支持那个模块,所有的JAVA不支持流媒体,智能操作系统的可以
java关于播放声音的代码的解释
playCycle(String s)这个是单曲重复播放;play(String s)这个是单曲播放。
/******* part one start *******/
//获取媒体文件流
AudioInputStream ais = AudioSystem.getAudioInputStream(new File(fileurl));
//获取文件格式
AudioFormat aif = ais.getFormat();
//这个类不知道是什么,没用过,在这里应该是对媒体流处理的一个类
SourceDataLine sdl = null;
//这个貌似通过媒体格式,获取媒体文件的信息
DataLine.Info info = new DataLine.Info(SourceDataLine.class,aif);
//通过媒体文件的信息初始化处理媒体文件的类
sdl = (SourceDataLine)AudioSystem.getLine(info);
//媒体工具类 打开媒体流
sdl.open(aif);
//媒体工具(播放器)开启
sdl.start();
/******* part one end *******/
/******* part two start ********/
int nByte = 0;
byte[] buffer = new byte[128];
//媒体工具类(播放器类)对媒体流进行写入处理,此时应该会有音乐响起吧
while(nByte != -1){
nByte = ais.read(buffer,0,128);
if(nByte = 0){
int oByte = sdl.write(buffer, 0, nByte);
//System.out.println(oByte);
}
}
//媒体流结束,并关闭这个媒体工具类
sdl.stop();
/******* part two end********/
关于java媒体流和Java 流的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
