- 浏览: 914642 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
天天来注册:
...
try catch finally 用法 -
tadpole_java:
谢谢你的分享。
二十七、Qt数据库(七)QSqlRelationalTableModel(转) -
359449749tan:
android之EditText文本监听(addTextChangedListener) -
michael_wang:
人过留名 多谢分享
Android NOtification 使用 -
wilsonchen:
wangqi0614 写道这个删除是删除所有的把?能不能值删除 ...
Android的SharedPreferences保存与删除数据简单实例
1. 手机JAVA实现支持移动媒体API(MMAPI),MMAPI在Java社区进程中以JSR-135开发(可从手机说明书中得到此信息)
例如:有手机dopod 696,SonyEricsson p908 未提供JSR135实现, NoKIA 7610提供JSR135实现
2. 针对手机进行流媒体开发时,首先确定手机JAVA实现支持的流媒体内容类型(即支持的视频格式)
下述代码可以得到手机JAVA实现支持的所有媒体内容类型
String[] contentTypes =
Manager.getSupportedContentTypes(null);
Video/3gpp, video/mpeg,audio/mp3 …….
3. 手机进行视频开发,MMAPI必须实现支持控制操作VideoControl类(VideoControl控制可视内容的显示).
* 必须明白,并不是所有的MMAPI实现都支持所有的控制操作类型。
例如 MOTO K系列手机MMAPI未实现VideoControl类(手机模拟器中已验证)
可通过System.getProperty(String key)得到一个设备所支持的控制类型.
Key值取:
video.encodings返回一个代表所支持的视频格式的字符串,如果不支持视频内容则返回“null”。
audio.encodings返回一个代表所支持的音频格式的字符串,如果不支持音频内容则返回“null”。
4.手机流媒体: 确定手机JAVA实现支持的流媒体协议(RTSP协议)
1. 流媒体概念:
流媒体又叫流式媒体,它是指商家用一个视频传送服务器把节目当成数据包发出,传送到网络上。用户通过解压设备对这些数据进行解压后,节目就会像发送前那样显示出来。
2. 流式传输定义很广泛,现在主要指通过网络传送媒体(如视频、音频)的技术总称。
实现流式传输有两种方法:实时流式传输(Realtime streaming)和顺序流式传输(progressive streaming)。一般说来,如视频为实时广播,或使用流式传输媒体服务器,或应用如RTSP的实时协议,即为实时流式传输。如使用HTTP服务器,文件即通过顺序流发送。
1> 顺序流式传输不适合长片段和有随机访问要求的视频,如:讲座、演说与演示。它也不支持现场广播,严格说来,它是一种点播技术。
实时流式传输
2> 实时流与HTTP流式传输不同,他需要专用的流媒体服务器与传输协议。实时流式传输总是实时传送,特别适合现场事件,也支持随机访问,用户可快进或后退以观看前面或后面的内容。理论上,实时流一经播放就不可停止, 实时流式传输还需要特殊网络协议,如:RTSP (Realtime Streaming Protocol)或MMS (Microsoft Media Server)。
总结:
J2ME手机流媒体实现视频广播(如移动监控,电视节目)开发满足条件:
1. 手机JAVA实现支持实时流传输协议: 如:RTSP (Realtime Streaming Protocol)或MMS (Microsoft Media Server)。
2. 流媒体服务器支持手机JAVA实现能播放的视频格式.如3gpp格式
目前能够支持3GP流式播放的流媒体服务器有:
Real的Helix Mobile Streaming Server,
苹果的QTSS Streaming Server,
PacketVideo的PV Streaming Server,
以及国内星谷科技的VServer。
附录:
1.MMAPI支持的控制操作
MMAPI在javax.microedition.control包中包含了12种控制操作:
MetaDataControl用来从媒体数据中获得元数据信息。
MIDIControl提供对播放器表现和传输设备的访问。
GUIControl代表一个具有用户界面组件的控制操作。
PitchControl升高或降低重放的位置而不改变重放的速度。
RateControl控制重放的速率。
TempoControl控制MIDI歌曲的节奏。
VolumeControl控制音量。
VideoControl控制可视内容的显示。
FramePositioningControl可以对一个视频帧精确定位。
RecordControl记录当前被Player播放的是什么内容。
StopTimeControl使应用程序可以为一个Player预先指定一个停止时间。
ToneControl是一个可以播放用户自定音调序列的接口。
2.各大手机厂商开发网站
http://developer.sonyericsson.com
https://developer.motorola.com
http://www.forum.nokia.com/index.html
http://www.dopod.com
3.几种常用流媒体服务器介绍
使用HTTP协议的流媒体传输,
当前最红的格式是FLV,当今的视频网站如youtube,土豆网等都是使用这种文件格式。FLV的全名是
Flash Video,特点为文件体积小、跨平台(不依赖于操作系统和浏览器),占用资源小,所以成为了网络最流行的视频格式。
因为使用HTTP协议,传输FLV所用的服务器的选择有很多:
(1)Lighttpd,youtube所使用的服务器
(2)Nginx,由俄罗斯的Igor Sysoev开发的性能优越的轻量级web server
(3)red5,一个java开源FLV服务器
(4)apache
(5)FlashMediaServer,adobe的FLV服务器,收费的。
其它常用的流格式按照厂商和平台的不同可以分为三个类别:
(1)Helix server
real公司的产品,支持RTSP,RTP,PNM等协议,主用用于rm,rmvb,mp3等格式的流传输
可以在Windows和linux平台下架设,开源。
(2)Windows Media Services
微软开发的windows平台下的流媒体服务器,支持mms协议,用于wmv、asf等格式的流传输。
(3)Darwin
Apple公司的流媒体服务器,开源,可部署在linux平台,用于mov和各种mpeg4格式的流传输,如3gp等。
4.什么是3GP文件
随着手机功能的日益强大,不少朋友用上了可以拍摄和播放视频短片的视频手机,这些视频手机里存储的视频文件通常以.3gp为后缀,
就是大家平时所说的3gp文件。
关于3gp文件的来历,要从3gpp这个国际组织说起。3gpp是3rd Generation Partnership Program的缩写,翻译成中文叫做第三代合作伙
伴计划,是由欧洲的ETSI,日本的ARIB和TTC,韩国的TTA以及美国的T1在1998年底发起成立的,旨在研究制定并推广基于演进的GSM核心网
络的3G标准,即WCDMA,TD-SCDMA,EDGE等。中国无线通信标准组(CWTS)于 1999年加入3GPP。3GPP的目标是实现由2G网络到3G网络的平滑过
渡,保证未来技术的后向兼容性,支持轻松建网及系统间的漫游和兼容性。
3gpp组织制订了一系列面向第三代移动通信的标准规范,涵盖了核心网、空中接口、终端等各个环节,其中也包括了多媒体文件格式的
规范,3GPP TS26.244,即3gp文件。
3GPP TS26.244里面规定了3GP媒体文件的封装格式,音频编码格式,视频编码格式以及流化的扩展等几个方面。
3GP媒体文件的封装格式沿用了ISO媒体文件的封装格式。大家在PC上看到的.mp4文件也是采用ISO媒体文件的封装格式
例如:有手机dopod 696,SonyEricsson p908 未提供JSR135实现, NoKIA 7610提供JSR135实现
2. 针对手机进行流媒体开发时,首先确定手机JAVA实现支持的流媒体内容类型(即支持的视频格式)
下述代码可以得到手机JAVA实现支持的所有媒体内容类型
String[] contentTypes =
Manager.getSupportedContentTypes(null);
Video/3gpp, video/mpeg,audio/mp3 …….
3. 手机进行视频开发,MMAPI必须实现支持控制操作VideoControl类(VideoControl控制可视内容的显示).
* 必须明白,并不是所有的MMAPI实现都支持所有的控制操作类型。
例如 MOTO K系列手机MMAPI未实现VideoControl类(手机模拟器中已验证)
可通过System.getProperty(String key)得到一个设备所支持的控制类型.
Key值取:
video.encodings返回一个代表所支持的视频格式的字符串,如果不支持视频内容则返回“null”。
audio.encodings返回一个代表所支持的音频格式的字符串,如果不支持音频内容则返回“null”。
4.手机流媒体: 确定手机JAVA实现支持的流媒体协议(RTSP协议)
1. 流媒体概念:
流媒体又叫流式媒体,它是指商家用一个视频传送服务器把节目当成数据包发出,传送到网络上。用户通过解压设备对这些数据进行解压后,节目就会像发送前那样显示出来。
2. 流式传输定义很广泛,现在主要指通过网络传送媒体(如视频、音频)的技术总称。
实现流式传输有两种方法:实时流式传输(Realtime streaming)和顺序流式传输(progressive streaming)。一般说来,如视频为实时广播,或使用流式传输媒体服务器,或应用如RTSP的实时协议,即为实时流式传输。如使用HTTP服务器,文件即通过顺序流发送。
1> 顺序流式传输不适合长片段和有随机访问要求的视频,如:讲座、演说与演示。它也不支持现场广播,严格说来,它是一种点播技术。
实时流式传输
2> 实时流与HTTP流式传输不同,他需要专用的流媒体服务器与传输协议。实时流式传输总是实时传送,特别适合现场事件,也支持随机访问,用户可快进或后退以观看前面或后面的内容。理论上,实时流一经播放就不可停止, 实时流式传输还需要特殊网络协议,如:RTSP (Realtime Streaming Protocol)或MMS (Microsoft Media Server)。
总结:
J2ME手机流媒体实现视频广播(如移动监控,电视节目)开发满足条件:
1. 手机JAVA实现支持实时流传输协议: 如:RTSP (Realtime Streaming Protocol)或MMS (Microsoft Media Server)。
2. 流媒体服务器支持手机JAVA实现能播放的视频格式.如3gpp格式
目前能够支持3GP流式播放的流媒体服务器有:
Real的Helix Mobile Streaming Server,
苹果的QTSS Streaming Server,
PacketVideo的PV Streaming Server,
以及国内星谷科技的VServer。
附录:
1.MMAPI支持的控制操作
MMAPI在javax.microedition.control包中包含了12种控制操作:
MetaDataControl用来从媒体数据中获得元数据信息。
MIDIControl提供对播放器表现和传输设备的访问。
GUIControl代表一个具有用户界面组件的控制操作。
PitchControl升高或降低重放的位置而不改变重放的速度。
RateControl控制重放的速率。
TempoControl控制MIDI歌曲的节奏。
VolumeControl控制音量。
VideoControl控制可视内容的显示。
FramePositioningControl可以对一个视频帧精确定位。
RecordControl记录当前被Player播放的是什么内容。
StopTimeControl使应用程序可以为一个Player预先指定一个停止时间。
ToneControl是一个可以播放用户自定音调序列的接口。
2.各大手机厂商开发网站
http://developer.sonyericsson.com
https://developer.motorola.com
http://www.forum.nokia.com/index.html
http://www.dopod.com
3.几种常用流媒体服务器介绍
使用HTTP协议的流媒体传输,
当前最红的格式是FLV,当今的视频网站如youtube,土豆网等都是使用这种文件格式。FLV的全名是
Flash Video,特点为文件体积小、跨平台(不依赖于操作系统和浏览器),占用资源小,所以成为了网络最流行的视频格式。
因为使用HTTP协议,传输FLV所用的服务器的选择有很多:
(1)Lighttpd,youtube所使用的服务器
(2)Nginx,由俄罗斯的Igor Sysoev开发的性能优越的轻量级web server
(3)red5,一个java开源FLV服务器
(4)apache
(5)FlashMediaServer,adobe的FLV服务器,收费的。
其它常用的流格式按照厂商和平台的不同可以分为三个类别:
(1)Helix server
real公司的产品,支持RTSP,RTP,PNM等协议,主用用于rm,rmvb,mp3等格式的流传输
可以在Windows和linux平台下架设,开源。
(2)Windows Media Services
微软开发的windows平台下的流媒体服务器,支持mms协议,用于wmv、asf等格式的流传输。
(3)Darwin
Apple公司的流媒体服务器,开源,可部署在linux平台,用于mov和各种mpeg4格式的流传输,如3gp等。
4.什么是3GP文件
随着手机功能的日益强大,不少朋友用上了可以拍摄和播放视频短片的视频手机,这些视频手机里存储的视频文件通常以.3gp为后缀,
就是大家平时所说的3gp文件。
关于3gp文件的来历,要从3gpp这个国际组织说起。3gpp是3rd Generation Partnership Program的缩写,翻译成中文叫做第三代合作伙
伴计划,是由欧洲的ETSI,日本的ARIB和TTC,韩国的TTA以及美国的T1在1998年底发起成立的,旨在研究制定并推广基于演进的GSM核心网
络的3G标准,即WCDMA,TD-SCDMA,EDGE等。中国无线通信标准组(CWTS)于 1999年加入3GPP。3GPP的目标是实现由2G网络到3G网络的平滑过
渡,保证未来技术的后向兼容性,支持轻松建网及系统间的漫游和兼容性。
3gpp组织制订了一系列面向第三代移动通信的标准规范,涵盖了核心网、空中接口、终端等各个环节,其中也包括了多媒体文件格式的
规范,3GPP TS26.244,即3gp文件。
3GPP TS26.244里面规定了3GP媒体文件的封装格式,音频编码格式,视频编码格式以及流化的扩展等几个方面。
3GP媒体文件的封装格式沿用了ISO媒体文件的封装格式。大家在PC上看到的.mp4文件也是采用ISO媒体文件的封装格式
评论
1 楼
tony_yangzhi
2011-09-09
学习了。就是不知道,如果只部署一个手机移动在线听音乐的系统。不知道服务器应该选择那一个服务器,而且手机系统android和iphone都能支持的?
发表评论
-
判断两二叉树相等
2014-05-29 00:13 1139bool IsBSTEqual(BNode* root1, ... -
数据去重
2014-05-29 00:11 851引用 使用数据结构丰富的脚本语言,如Python,利用其中的字 ... -
判断一个整数是否为2的次方幂
2014-05-28 23:56 886/* 判断一个整数是否为2的次方幂 */ bool ... -
实现Comparable接口,进行排序
2014-05-28 23:47 8827import java.util.ArrayList; ... -
Struct2详解
2014-05-21 15:14 929引用 Servlet的缺点: 1、web.xml配置比较多 2 ... -
常用方法
2014-04-25 20:24 788[color=red]String[/color] ... -
java nio和io的比较
2014-04-16 19:49 1758引用 第一部分:简单介绍NIO 服务器在合理时间内处理 ... -
Struts2、Spring3、HIbernate4总结
2014-04-16 10:35 868引用 第一部分:Struts2 1 ... -
Finally的使用总结
2014-04-15 22:02 900//清单一: public class ... -
Fibonacci数列的递归与非递归
2014-04-15 20:57 740//非递归实现 //f(1)=1,f(2)=1,f(n) ... -
Java中的异常
2014-04-14 09:42 653引用 Throwable包括两个子类:Error和Except ... -
JVM的垃圾回收机制
2014-04-13 18:39 871引用 堆被划分为新生代和旧生代, 新生代包含Eden 和 S ... -
集合类总结
2014-04-04 15:54 690引用 一. 总的框架 总的有Collection和Map Co ... -
设计模式之策略模式
2014-04-01 17:07 632main ======================= ... -
设计模式之责任链模式
2014-04-01 16:32 752main ======================= ... -
设计模式之访问者模式
2014-03-31 18:57 872main ======================= ... -
设计模式之工厂模式
2014-03-31 11:33 645main ======================= ... -
设计模式之观察者模式
2014-03-30 15:04 873main =============== ... -
Java虚拟机JVM详解
2014-03-29 12:13 1333引用 第一部分:JVM基本结构 1.什么是JVM 一个java ... -
Java中的反射机制Reflect
2014-03-28 17:17 3618package com.reflect.sym; i ...
相关推荐
J2ME流媒体技术的实现涉及到多个关键组件和步骤。首先,我们需要理解J2ME的Media Player API,这是处理多媒体内容的基础。Media Player API提供了创建、控制和管理媒体播放的能力,包括音频和视频流。通过这个API,...
"基于J2ME的手机视频播放系统的开发"这个标题表明了我们要讨论的是一个使用Java Micro Edition (J2ME) 技术构建的手机应用,该应用专门设计用于播放视频。J2ME是Java平台的一个版本,主要用于嵌入式设备,如早期的...
总结,J2ME流媒体播放是移动开发中的一个重要领域,通过"j2me流媒体播放思路的简单演示软件.rar"这样的示例,我们可以学习到如何在限制资源的环境中构建高效的流媒体播放器。尽管面临挑战,但随着技术的进步,J2ME在...
【正文】 ...总结,J2ME为手机游戏开发提供了一套完整的框架和工具,虽然现在已经被更现代的技术如Android和iOS SDK取代,但理解J2ME的原理和实践仍对了解移动游戏开发的历史和基础有着重要意义。
在 J2ME 中实现流媒体播放功能,涉及到多个关键技术点,包括多媒体编码、网络传输、数据缓冲和用户界面设计等。下面我们将深入探讨这些知识点: 1. **多媒体编码**: 流媒体通常包含音频和视频数据,这些数据需要...
- 输出设备:Player识别媒体类型后,将解码后的数据发送到相应的输出设备,如手机的音频或视频硬件。 4. **扩展性与兼容性** - MMAPI的设计允许开发者添加自定义的DataSource和Player实现,以支持新的媒体格式和...
同时,JSR-234(Advanced Multimedia Supplements)提供更高级的功能,如音视频同步和流媒体支持。 5. **持久化应用**:在J2ME中,持久化数据存储可以通过Record Management System(RMS)实现,这是一个简单的键值...
《J2ME手机开发入门》是一本针对初学者的指南,旨在帮助读者快速掌握Java Micro Edition(J2ME)在移动设备上的应用开发技术。J2ME是Java平台的一个子集,专门设计用于资源有限的嵌入式设备,如早期的智能手机和平板...
这意味着播放器可能还支持流媒体播放,这需要使用HTTP连接来获取远程视频数据。开发者需要处理网络状况不稳定的情况,并确保数据传输的流畅性。 ### 6. 性能优化 为了在资源受限的环境中提供良好的性能,开发者...
Android的音频管理更强大且灵活,支持更多的音频格式和流媒体播放。 9. **游戏开发包**: J2ME有一个专门的游戏开发包javax.microedition.lcdui.game,包含如GameCanvas、Layer、LayerManager和Sprite等类。在...
《J2ME手机游戏开发技术PPT---4》是一份专为游戏学院设计的内部教材,包含四个关于Java 2 Micro Edition(J2ME)游戏开发的PPT文件,主要聚焦于网络与多媒体编程以及J2ME的3D编程。J2ME是Oracle公司为小型设备和...
流媒体在移动设备上播放音频或视频,是J2ME应用中的一个常见需求。J2ME提供了MIDP(Mobile Information Device Profile)和CLDC(Connected Limited Device Configuration)的多媒体API,允许开发者处理音频和视频流...
在本文中,我们将深入探讨...总结来说,J2ME手机软件开发涉及到一系列技术和实践,包括UI设计、数据管理、多媒体处理和设备适配。通过分析这些源代码,开发者可以学习如何在有限的资源条件下创建功能丰富的移动应用。
《J2ME开发大全》是一本专为Java Micro Edition(J2ME)开发者编写的权威指南,涵盖了J2ME开发的各个方面。这本书的源代码提供了丰富的实例,旨在帮助嵌入式系统开发者深入理解和实践J2ME技术。源代码通常包含了书中...
本教程将带你从零开始,逐步了解J2ME环境的搭建,以及如何利用它来开发手机游戏。 **一、J2ME环境搭建** 1. **安装JDK**:首先,你需要在计算机上安装Java Development Kit (JDK),它是J2ME开发的基础。 2. **下载...
**MPEG(Moving Picture Experts Group)是一种标准的数字音频和视频压缩格式,广泛应用于视频存储和流媒体服务。常见的MPEG文件扩展名有.mpg、.mpeg、.mp4等。它通过高效的数据压缩算法,能在保持高质量的同时降低...
在移动设备领域,Java 2 Micro Edition(J2ME)是一种广泛使用的平台,用于开发运行在功能手机和早期智能手机上的应用程序。"j2me实现视频播放"这一主题涉及到利用J2ME技术实现在这些设备上播放视频的功能。下面将...