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

📄 fmjtest.java

📁 FMJ(freedom media for java)是java视频开发的新选择
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package net.sf.fmj.test.compat.misc;import java.io.IOException;import java.net.InetAddress;import java.net.MalformedURLException;import java.net.URL;import java.net.UnknownHostException;import java.util.Vector;import javax.media.AudioDeviceUnavailableEvent;import javax.media.Buffer;import javax.media.CachingControlEvent;import javax.media.CaptureDeviceInfo;import javax.media.Clock;import javax.media.ClockStoppedException;import javax.media.Control;import javax.media.Controller;import javax.media.ControllerAdapter;import javax.media.ControllerClosedEvent;import javax.media.ControllerErrorEvent;import javax.media.ControllerListener;import javax.media.DataSink;import javax.media.Duration;import javax.media.Format;import javax.media.IncompatibleSourceException;import javax.media.IncompatibleTimeBaseException;import javax.media.Manager;import javax.media.MediaLocator;import javax.media.PlugIn;import javax.media.Processor;import javax.media.StopByRequestEvent;import javax.media.StopEvent;import javax.media.Time;import javax.media.TimeBase;import javax.media.Track;import javax.media.bean.playerbean.MediaPlayer;import javax.media.control.BufferControl;import javax.media.control.FramePositioningControl;import javax.media.control.MpegAudioControl;import javax.media.control.PortControl;import javax.media.datasink.DataSinkListener;import javax.media.format.RGBFormat;import javax.media.format.UnsupportedFormatException;import javax.media.format.VideoFormat;import javax.media.protocol.ContentDescriptor;import javax.media.protocol.DataSource;import javax.media.protocol.FileTypeDescriptor;import javax.media.protocol.Positionable;import javax.media.protocol.RateRange;import javax.media.protocol.SourceStream;import javax.media.rtp.EncryptionInfo;import javax.media.rtp.GlobalReceptionStats;import javax.media.rtp.GlobalTransmissionStats;import javax.media.rtp.InvalidSessionAddressException;import javax.media.rtp.LocalParticipant;import javax.media.rtp.RTPStream;import javax.media.rtp.ReceiveStreamListener;import javax.media.rtp.RemoteListener;import javax.media.rtp.SSRCInUseException;import javax.media.rtp.SendStream;import javax.media.rtp.SendStreamListener;import javax.media.rtp.SessionAddress;import javax.media.rtp.SessionListener;import javax.media.rtp.SessionManager;import javax.media.rtp.event.RTPEvent;import javax.media.rtp.rtcp.SourceDescription;import junit.framework.TestCase;import net.sf.fmj.test.compat.InterfaceClasses;/** *  * @author Ken Larson * */public class FMJTest extends TestCase{	private static String generateCNAME()	{		// generates something like user@host		final String hostname;		try		{			hostname = InetAddress.getLocalHost().getHostName();		} catch (UnknownHostException e)		{			throw new RuntimeException(e);		}		return System.getProperty("user.name") + '@' + hostname;	}		public void testSourceDescription()	{		assertEquals(SourceDescription.generateCNAME(), generateCNAME());	}	public void testRTPEvent()	{		if (false)			System.out.println(new RTPEvent(new MySessionManager()).toString());			}		class MySessionManager implements SessionManager	{		public void addFormat(Format arg0, int arg1)		{		}		public void addPeer(SessionAddress arg0) throws IOException, InvalidSessionAddressException		{		}		public void addReceiveStreamListener(ReceiveStreamListener arg0)		{		}		public void addRemoteListener(RemoteListener arg0)		{		}		public void addSendStreamListener(SendStreamListener arg0)		{		}		public void addSessionListener(SessionListener arg0)		{		}		public void closeSession(String arg0)		{		}		public SendStream createSendStream(DataSource arg0, int arg1) throws UnsupportedFormatException, IOException		{			return null;		}		public SendStream createSendStream(int arg0, DataSource arg1, int arg2) throws UnsupportedFormatException, SSRCInUseException, IOException		{			return null;		}		public String generateCNAME()		{			return null;		}		public long generateSSRC()		{			return 0;		}		public Vector getActiveParticipants()		{			return null;		}		public Vector getAllParticipants()		{			return null;		}		public long getDefaultSSRC()		{			return 0;		}		public GlobalReceptionStats getGlobalReceptionStats()		{			return null;		}		public GlobalTransmissionStats getGlobalTransmissionStats()		{			return null;		}		public LocalParticipant getLocalParticipant()		{			return null;		}		public SessionAddress getLocalSessionAddress()		{			return null;		}		public int getMulticastScope()		{			return 0;		}		public Vector getPassiveParticipants()		{			return null;		}		public Vector getPeers()		{			return null;		}		public Vector getReceiveStreams()		{			return null;		}		public Vector getRemoteParticipants()		{			return null;		}		public Vector getSendStreams()		{			return null;		}		public SessionAddress getSessionAddress()		{			return null;		}		public RTPStream getStream(long arg0)		{			return null;		}		public int initSession(SessionAddress arg0, long arg1, SourceDescription[] arg2, double arg3, double arg4) throws InvalidSessionAddressException		{			return 0;		}		public int initSession(SessionAddress arg0, SourceDescription[] arg1, double arg2, double arg3) throws InvalidSessionAddressException		{			return 0;		}		public void removeAllPeers()		{		}		public void removePeer(SessionAddress arg0)		{		}		public void removeReceiveStreamListener(ReceiveStreamListener arg0)		{		}		public void removeRemoteListener(RemoteListener arg0)		{		}		public void removeSendStreamListener(SendStreamListener arg0)		{		}		public void removeSessionListener(SessionListener arg0)		{		}		public void setMulticastScope(int arg0)		{		}		public int startSession(int arg0, EncryptionInfo arg1) throws IOException		{			return 0;		}		public int startSession(SessionAddress arg0, int arg1, EncryptionInfo arg2) throws IOException, InvalidSessionAddressException		{			return 0;		}		public int startSession(SessionAddress arg0, SessionAddress arg1, SessionAddress arg2, EncryptionInfo arg3) throws IOException, InvalidSessionAddressException		{			return 0;		}		public Object getControl(String arg0)		{			return null;		}		public Object[] getControls()		{			return null;		}	}		public void testRateRange()	{		assertTrue(new RateRange(0, -1, 1, true).isExact());		assertTrue(new RateRange(0.f, -1.f, 1.f, true).getCurrentRate() == 0.f);		assertTrue(new RateRange(0.f, -1.f, 1.f, true).getMaximumRate() == 1.f);		assertTrue(new RateRange(0.f, -1.f, 1.f, true).getMinimumRate() == -1.f);				assertTrue(new RateRange(0.f, -1.f, 1.f, true).setCurrentRate(1.f) == 1.f);		assertTrue(new RateRange(0.f, -1.f, 1.f, true).setCurrentRate(2.f) == 2.f);			}	public void testControllerAdapter()	{		final StringBuffer b = new StringBuffer();				ControllerAdapter a = new ControllerAdapter()		{			//@Override			public void stop(StopEvent arg0)			{				b.append("stop\n");			}			//@Override			public void stopByRequest(StopByRequestEvent arg0)			{				b.append("stopByRequest\n");			}					};				a.controllerUpdate(new StopByRequestEvent(new MyController(), 0, 0, 0, null));		assertEquals(b.toString(), "stop\nstopByRequest\n");			}		class MyController implements Controller	{		public void addControllerListener(ControllerListener arg0)		{		}		public void close()		{		}		public void deallocate()		{		}		public Control getControl(String arg0)		{			return null;		}		public Control[] getControls()		{			return null;		}		public Time getStartLatency()		{			return null;		}		public int getState()		{			return 0;		}		public int getTargetState()		{			return 0;		}		public void prefetch()		{		}		public void realize()		{		}		public void removeControllerListener(ControllerListener arg0)		{		}		public Time getDuration()		{			return null;		}		public long getMediaNanoseconds()		{			return 0;		}		public Time getMediaTime()		{			return null;		}		public float getRate()		{			return 0;		}		public Time getStopTime()		{			return null;		}		public Time getSyncTime()		{			return null;		}		public TimeBase getTimeBase()		{			return null;		}		public Time mapToTimeBase(Time arg0) throws ClockStoppedException		{			return null;		}		public void setMediaTime(Time arg0)		{		}		public float setRate(float arg0)		{			return 0;		}		public void setStopTime(Time arg0)		{		}		public void setTimeBase(TimeBase arg0) throws IncompatibleTimeBaseException		{		}		public void stop()		{		}		public void syncStart(Time arg0)		{		}	}		class MyDataSink implements DataSink	{		public void addDataSinkListener(DataSinkListener arg0)		{		}		public void close()		{		}		public String getContentType()		{			return null;		}		public MediaLocator getOutputLocator()		{			return null;		}		public void open() throws IOException, SecurityException		{		}		public void removeDataSinkListener(DataSinkListener arg0)		{		}		public void setOutputLocator(MediaLocator arg0)		{		}		public void start() throws IOException		{		}		public void stop() throws IOException		{		}		public void setSource(DataSource arg0) throws IOException, IncompatibleSourceException		{		}		public Object getControl(String arg0)		{			return null;		}		public Object[] getControls()		{			return null;		}	}	public void testDataSinkEvent()	{		//System.out.println(new DataSinkEvent(new MyDataSink()).toString());	}		public void testMediaLocator() throws MalformedURLException	{		try		{			new MediaLocator((String) null);

⌨️ 快捷键说明

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