亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? rtpsourcestream.java

?? 一個j2me編寫的手機播放 rtsp協議傳輸流媒體文件的例子
?? JAVA
字號:
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import javax.microedition.io.Datagram;
import javax.microedition.io.Connector;
import javax.microedition.media.Control;
import javax.microedition.io.SocketConnection;
import javax.microedition.io.DatagramConnection;
import javax.microedition.media.protocol.SourceStream;
import javax.microedition.media.protocol.ContentDescriptor;

public class RTPSourceStream implements SourceStream {

	private RTSPProtocolHandler handler;

	private InputStream is;
	private OutputStream os;

	private DatagramConnection socket;

	public RTPSourceStream(String address) throws IOException {

		// create the protocol handler and set it up so that the
		// application is ready to read data

		// create a socketconnection to the remote host
		// (in this case I have set it up so that its localhost, you can
		// change it to wherever your server resides)
		SocketConnection sc =
		  (SocketConnection)Connector.open("socket://localhost:554");

		// open the input and output streams
		is = sc.openInputStream();
		os = sc.openOutputStream();

		// and initialize the handler
		handler = new RTSPProtocolHandler(address, is, os);

		// send the basic signals to get it ready
		handler.doDescribe();
		handler.doSetup();
	}

	public void start() throws IOException {

	  // open a local socket on port 8080 to read data to
	  socket = (DatagramConnection)Connector.open("datagram://:8080");

	  // and send the PLAY command
	  handler.doPlay();
	}

	public void close() throws IOException {

		if(handler != null) handler.doTeardown();

		is.close();
		os.close();
	}

	public int read(byte[] buffer, int offset, int length)
	  throws IOException {

		 // create a byte array which will be used to read the datagram
		 byte[] fullPkt = new byte[length];

		 // the new Datagram
		 Datagram packet = socket.newDatagram(fullPkt, length);

		 // receive it
		 socket.receive(packet);

		 // extract the actual RTP Packet's media data in the requested buffer
	   RTPPacket rtpPacket = getRTPPacket(packet, packet.getData());
	   buffer = rtpPacket.getData();

	   // debug
	   System.err.println(rtpPacket + " with media length: " + buffer.length);

		 // and return its length
		 return buffer.length;
	}

	// extracts the RTP packet from each datagram packet received
	private RTPPacket getRTPPacket(Datagram packet, byte[] buf) {

	  // SSRC
	  long SSRC = 0;

		// the payload type
		byte PT = 0;

	  // the time stamp
		int timeStamp = 0;

		// the sequence number of this packet
		short seqNo = 0;


		// see http://www.networksorcery.com/enp/protocol/rtp.htm
		// for detailed description of the packet and its data
		PT =
		  (byte)((buf[1] & 0xff) & 0x7f);

		seqNo =
		  (short)((buf[2] << 8) | ( buf[3] & 0xff));

		timeStamp =
		  (((buf[4] & 0xff) << 24) | ((buf[5] & 0xff) << 16) |
		    ((buf[6] & 0xff) << 8) | (buf[7] & 0xff)) ;

		SSRC =
		  (((buf[8] & 0xff) << 24) | ((buf[9] & 0xff) << 16) |
		    ((buf[10] & 0xff) << 8) | (buf[11] & 0xff));


		// create an RTPPacket based on these values
		RTPPacket rtpPkt = new RTPPacket();

		// the sequence number
		rtpPkt.setSequenceNumber(seqNo);

		// the timestamp
		rtpPkt.setTimeStamp(timeStamp);

		// the SSRC
		rtpPkt.setSSRC(SSRC);

		// the payload type
		rtpPkt.setPayloadType(PT);

		// the actual payload (the media data) is after the 12 byte header
		// which is constant
		byte payload[] = new byte [packet.getLength() - 12];

		for(int i=0; i < payload.length; i++) payload [i] = buf[i+12];

		// set the payload on the RTP Packet
		rtpPkt.setData(payload);

		// and return the payload
		return rtpPkt;

	}

	public long seek(long where) throws IOException {
	 throw new IOException("cannot seek");
	}

	public long tell() { return -1; }

	public int getSeekType() { return NOT_SEEKABLE;	}

	public Control[] getControls() { return null; }

	public Control getControl(String controlType) { return null; }

	public long getContentLength() { return -1;	}

	public int getTransferSize() { return -1;	}

	public ContentDescriptor getContentDescriptor() {
		return new ContentDescriptor("audio/rtp");
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品一区二区三区视频在线观看| 成人免费视频视频在线观看免费| 国产一区二区三区综合| 色综合久久99| 久久一区二区三区国产精品| 成人欧美一区二区三区白人| 蜜桃久久av一区| 色婷婷亚洲一区二区三区| 精品少妇一区二区三区视频免付费 | 国产精品传媒视频| 麻豆91在线观看| 在线免费亚洲电影| 国产精品美女视频| 国产精品资源在线看| 91精品国产综合久久久久久久久久| 国产精品欧美一级免费| 久久66热re国产| 欧美卡1卡2卡| 夜夜操天天操亚洲| 91麻豆精品秘密| 1000部国产精品成人观看| 国产精品乡下勾搭老头1| 日韩精品一区二区三区swag | 色视频欧美一区二区三区| 国产女人18毛片水真多成人如厕| 蜜臀久久99精品久久久久宅男| 欧美三级韩国三级日本一级| 国产精品毛片a∨一区二区三区| 国产中文字幕一区| 久久久91精品国产一区二区三区| 美国精品在线观看| 日韩视频免费观看高清完整版| 日日骚欧美日韩| 欧美精品久久99| 日韩黄色一级片| 日韩一区二区三区视频在线观看| 美女诱惑一区二区| 欧美mv和日韩mv国产网站| 美腿丝袜在线亚洲一区| 欧美tickling网站挠脚心| 国产一区二区三区美女| 国产日产欧美一区二区三区| 国产盗摄精品一区二区三区在线 | 欧美三区免费完整视频在线观看| 一区二区三区不卡视频在线观看| 91久久精品一区二区二区| 亚洲一区视频在线观看视频| 欧美精品xxxxbbbb| 久久成人久久爱| 欧美国产精品一区| 91麻豆免费在线观看| 一区二区理论电影在线观看| 69av一区二区三区| 国产在线乱码一区二区三区| 国产精品毛片a∨一区二区三区| 一本大道久久a久久精品综合| 性欧美疯狂xxxxbbbb| 精品国产伦一区二区三区免费| 国产麻豆精品一区二区| 亚洲视频香蕉人妖| 91精品国产色综合久久久蜜香臀| 精油按摩中文字幕久久| 国产精品国产精品国产专区不片| 欧美日韩视频在线第一区 | 日本不卡中文字幕| 久久精品视频网| 97精品国产97久久久久久久久久久久 | 久久精品日产第一区二区三区高清版| 99久久伊人网影院| 日韩激情av在线| 国产精品美女久久福利网站| 欧美日韩国产综合视频在线观看| 国产一区二区三区免费观看| 亚洲一区二区综合| 久久综合色8888| 在线观看免费亚洲| 国产精品一二三四| 视频在线在亚洲| 国产精品久久久一本精品| 69成人精品免费视频| 成人avav影音| 国产在线播精品第三| 亚洲综合网站在线观看| 日本一区二区三区久久久久久久久不 | 中日韩av电影| 日韩欧美国产电影| 欧美性感一类影片在线播放| 国产69精品久久777的优势| 日本视频一区二区| 一区二区三区日韩在线观看| 国产网红主播福利一区二区| 日韩一区二区三区在线视频| 欧美视频一区二区三区在线观看 | 日韩成人一级大片| 1区2区3区精品视频| 日韩免费高清视频| 欧美人xxxx| 欧洲av一区二区嗯嗯嗯啊| av亚洲精华国产精华精华| 国产高清精品网站| 狠狠狠色丁香婷婷综合激情| 日韩av一区二区三区四区| 亚洲综合丝袜美腿| 亚洲美女在线一区| 亚洲视频一二区| 亚洲欧洲色图综合| 国产精品午夜在线观看| 国产欧美一区二区三区沐欲| 久久综合久久综合久久| 精品国产91久久久久久久妲己| 欧美一级精品大片| 3d动漫精品啪啪| 欧美一区二区三区四区在线观看| 欧美日韩国产影片| 欧美美女bb生活片| 91.xcao| 91精品国产入口| 日韩欧美一区二区久久婷婷| 日韩欧美国产三级| 精品国产sm最大网站免费看| 久久九九久精品国产免费直播| 久久久久高清精品| 国产欧美日韩综合精品一区二区 | 国产成人精品一区二区三区网站观看| 久久99久久久欧美国产| 精品一区二区三区日韩| 豆国产96在线|亚洲| 成人性生交大合| 日本韩国精品一区二区在线观看| 91福利视频久久久久| 欧美日韩在线直播| 欧美va亚洲va香蕉在线| 久久久不卡网国产精品一区| 国产精品久久久久久亚洲伦| 专区另类欧美日韩| 视频在线观看91| 国产麻豆成人精品| 色吊一区二区三区| 日韩一二在线观看| 中文一区二区在线观看| 亚洲美女视频在线观看| 日韩精品一区第一页| 国产精品亚洲人在线观看| 成人av片在线观看| 欧美女孩性生活视频| 精品国产精品网麻豆系列 | 国产亚洲综合在线| 亚洲视频一区在线| 日本不卡的三区四区五区| 国产精品12区| 欧美日韩国产综合久久| 久久精品亚洲精品国产欧美| 亚洲国产精品一区二区久久| 美腿丝袜一区二区三区| 91浏览器在线视频| 日韩一区二区精品葵司在线| 国产精品理论片| 日本怡春院一区二区| 99久久精品国产一区| 欧美丰满嫩嫩电影| 国产精品萝li| 老司机一区二区| 欧美无乱码久久久免费午夜一区| 久久综合给合久久狠狠狠97色69| 亚洲一区在线观看免费观看电影高清| 国精产品一区一区三区mba视频 | 亚洲黄一区二区三区| 麻豆精品视频在线观看免费| 91久久一区二区| 国产人妖乱国产精品人妖| 日韩国产欧美在线视频| 91麻豆免费观看| 国产亚洲女人久久久久毛片| 日韩av不卡一区二区| 96av麻豆蜜桃一区二区| 国产亚洲成aⅴ人片在线观看| 三级一区在线视频先锋| 欧洲视频一区二区| 中文字幕一区二区在线播放| 国产乱子伦视频一区二区三区 | 国产成人一级电影| 91精品国产综合久久久久久漫画| 亚洲免费观看视频| 波多野结衣的一区二区三区| 久久久久国产精品人| 久久国产生活片100| 欧美一区二区三区视频免费 | 欧美熟乱第一页| 亚洲精品一二三区| 91在线观看免费视频| 中文在线资源观看网站视频免费不卡 | 欧美精品日韩一本| 亚洲一区二区三区国产| 91麻豆免费视频| 亚洲乱码一区二区三区在线观看| 成人午夜视频免费看| 久久色.com| 国产一区二区毛片| 久久久综合视频| 大桥未久av一区二区三区中文|