⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jmf捕获技术(音频) - netwarning的专栏 - csdnblog.htm

📁 JMF编程的基础教程。。。 html格式配有源码。。。 非常适合初学者学习
💻 HTM
📖 第 1 页 / 共 3 页
字号:
  <LI><A 
  href="http://blog.csdn.net/netwarning/archive/2007/04.aspx">2007年04月(2)</A>
  <LI><A 
  href="http://blog.csdn.net/netwarning/archive/2007/03.aspx">2007年03月(10)</A>
  <LI><A 
  href="http://blog.csdn.net/netwarning/archive/2007/02.aspx">2007年02月(2)</A>
  <LI><A 
  href="http://blog.csdn.net/netwarning/archive/2006/11.aspx">2006年11月(2)</A>
  <LI><A 
  href="http://blog.csdn.net/netwarning/archive/2006/10.aspx">2006年10月(4)</A>
  <LI><A 
  href="http://blog.csdn.net/netwarning/archive/2006/09.aspx">2006年09月(3)</A>
  <LI><A 
  href="http://blog.csdn.net/netwarning/archive/2006/06.aspx">2006年06月(4)</A>
  <LI><A 
  href="http://blog.csdn.net/netwarning/archive/2006/05.aspx">2006年05月(1)</A></LI></UL><SPAN 
id=Anthem_RecentComments1_ltlComments__><SPAN id=RecentComments1_ltlComments>
<H3 class=listtitle>最近评论</H3>
<UL class=list>
  <LI class=listitem>crystal:<A title=点击查看《回复:断网了》 
  href="http://blog.csdn.net/netwarning/archive/2007/04/07/1556086.aspx#571489">还不错啊</A>
  <LI class=listitem>仙女:<A title=点击查看《回复:我的单位》 
  href="http://blog.csdn.net/netwarning/archive/2006/10/14/1334814.aspx#571486">好漂亮的地方啊</A>
  <LI class=listitem>Solomon Joh:<A title=点击查看《回复:断网了》 
  href="http://blog.csdn.net/netwarning/archive/2007/04/07/1556086.aspx#566717">看来你也有一阵没更新新了,和我一样。我过来帮你踩一踩人气,记得谢谢我哦。</A>
  <LI class=listitem>lilimerci:<A title=点击查看《回复:JMF捕获技术(视频)》 
  href="http://blog.csdn.net/netwarning/archive/2006/06/07/779142.aspx#557797">您好,我最近在做个JMF项目。<BR>可否交流一下,谢谢。</A>
  <LI class=listitem>DSD:<A title=点击查看《回复:JList中添加右键菜单(JPopupMenu)》 
  href="http://blog.csdn.net/netwarning/archive/2007/03/16/1531711.aspx#556963">顶</A></LI></UL></SPAN></SPAN>
<DIV class=spacer>&nbsp;</DIV></DIV>
<DIV class=centercolumn><SPAN class=PreAndNext 
id=viewpost.ascx_PreviousAndNextEntriesUp>
<DIV align=center><A 
href="http://blog.csdn.net/netwarning/archive/2006/06/07/779072.aspx">上一篇:&nbsp;搭建JMF运行平台(Eclipse)</A>&nbsp;|&nbsp;<A 
href="http://blog.csdn.net/netwarning/archive/2006/05/27/757724.aspx">下一篇:&nbsp;利用JMF捕获音频设备.</A></DIV></SPAN><BR>
<SCRIPT>function StorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');void(keyit=window.open('http://www.365key.com/storeit.aspx?t='+escape(d.title)+'&u='+escape(d.location.href)+'&c='+escape(t),'keyit','scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes'));keyit.focus();}</SCRIPT>

<DIV class=post>
<DIV class=postTitle>
<SCRIPT src="JMF捕获技术(音频) - netwarning的专栏 - CSDNBlog.files/vote.js"></SCRIPT>
<A href="http://blog.csdn.net/netwarning/archive/2006/06/07/779038.aspx"><IMG 
height=13 src="JMF捕获技术(音频) - netwarning的专栏 - CSDNBlog.files/authorship.gif" 
width=15 border=0>&nbsp;JMF捕获技术(音频)</A>&nbsp;&nbsp;
<SCRIPT src="JMF捕获技术(音频) - netwarning的专栏 - CSDNBlog.files/count.htm"></SCRIPT>
 </DIV>
<DIV class=postText>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: center" 
align=center><SPAN lang=EN-US 
style="FONT-SIZE: 18pt; FONT-FAMILY: 黑体">JMF</SPAN><SPAN 
style="FONT-SIZE: 18pt; FONT-FAMILY: 黑体">捕获技术(音频)<SPAN 
lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: center" 
align=center><SPAN lang=EN-US 
style="FONT-SIZE: 18pt; FONT-FAMILY: 黑体"><O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24pt"><SPAN 
lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">JMF</SPAN><SPAN 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">可以捕获语音和视频设备,也就是利用<SPAN 
lang=EN-US>JMF</SPAN>可以控制麦克、摄像头这些音视频设备,在这里要讨论的是如何利用<SPAN 
lang=EN-US>JMF</SPAN>来让麦克工作,在自己的机器上测试,让你听到自己的声音。<SPAN 
lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24pt"><SPAN 
lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24pt"><SPAN 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">下面是要涉及到的主要的类:<SPAN 
lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24pt"><SPAN 
lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24pt"><SPAN 
lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">CaptureDeviceManager</SPAN><SPAN 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">、<SPAN 
lang=EN-US>CaptureDeviceInfo</SPAN>、<SPAN lang=EN-US>Vector</SPAN>、<SPAN 
lang=EN-US>MediaPlayer</SPAN>、<SPAN lang=EN-US>DataSource</SPAN>、<SPAN 
lang=EN-US>MeidaLocator</SPAN>、<SPAN lang=EN-US>AduioFormat</SPAN>、<SPAN 
lang=EN-US>VideoFormat</SPAN>、<SPAN lang=EN-US>Format</SPAN>。<SPAN 
lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24pt"><SPAN 
lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24pt"><SPAN 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">可以在<SPAN 
lang=EN-US>Sun</SPAN>公司提供的<SPAN 
lang=EN-US>Document</SPAN>上查阅,也可以下下来,网址记不住了。可以先看一下,有个初步的了解,然后看完例子再回来看类库,这样可能会好一些。<SPAN 
lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24pt"><SPAN 
lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">public class 
<STRONG>CaptureDeviceManager</STRONG> <O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">extends 
java.lang.Object<O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24pt"><SPAN 
lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">CaptureDeviceManager is a 
manager class that provides access to a list of the capture devices available on 
a system. CaptureDeviceManager uses a registry and query mechanisms to locate 
devices and return CaptureDeviceInfo objects for available devices. The 
CaptureDeviceManager is also used to register new capture devices. 
<O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24pt"><SPAN 
lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><O:P></O:P></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">public 
class <STRONG>CaptureDeviceInfo</STRONG> <O:P></O:P></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">extends 
java.lang.Object <O:P></O:P></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">implements 
java.io.Serializable<O:P></O:P></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">A 
CaptureDeviceInfo object contains information about a particular capture device. 
<O:P></O:P></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">public 
class <STRONG>MediaPlayer</STRONG> <O:P></O:P></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">extends 
java.awt.Container <O:P></O:P></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">implements 
<A 
href="file:///E:/我的大学(程序)/论文整理/论文资料/java资料/JAVA资料/jmf资料/jmf20-apidocs/javax/media/Player.html">Player</A>, 
java.io.Externalizable<O:P></O:P></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">MediaPlayer 
encapsulates a player in a JavaBeans</SPAN><SUP><SPAN lang=EN-US 
style="FONT-SIZE: 7.5pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">TM</SPAN></SUP><SPAN 
lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"> 
component. MediaPlayer implements the Player and Externalizable interfaces. 
<O:P></O:P></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">A 
MediaPlayer can be used as a full-featured Player with either the default Player 
controls or custom controls. <O:P></O:P></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"><O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24pt"><SPAN 
lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24pt"><SPAN 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">还会涉及到一个监听接口:<SPAN 
lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24pt"><SPAN 
lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24pt"><SPAN 
lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">ControllerListener</SPAN><SPAN 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">。这个主要是用来监听媒体播放器的接口的。<SPAN 
lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24pt"><SPAN 
lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><SPAN lang=EN-US 
style="FONT-SIZE: 15pt; FONT-FAMILY: 黑体; mso-hansi-font-family: 宋体">1</SPAN><SPAN 
style="FONT-SIZE: 15pt; FONT-FAMILY: 黑体; mso-hansi-font-family: 宋体">、捕获音频设备<SPAN 
lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">/*<O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><SPAN 
style="mso-spacerun: yes">&nbsp;</SPAN>* @author : kenny<O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><SPAN 
style="mso-spacerun: yes">&nbsp;</SPAN>*/<O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">import 
javax.media.*;<O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">....................<O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">public class CaptureAudio 
{<O:P></O:P></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24pt; mso-char-indent-count: 2.0"><SPAN 
lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><O:P></O:P></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24pt; mso-char-indent-count: 2.0"><SPAN 
lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">Vector deviceList = new 
Vector();<O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt"><SPAN 
lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">AudioForamt audio = new 
AudioFormat(AudioFormat.LINEAR);<O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt"><SPAN 
lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">Format audioFormat = 
(Format)audio;<O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><SPAN 
style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN>MediaPlayer player = 
null;<O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><SPAN 
style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN>MediaLocator locator = 
null;<O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><SPAN 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -