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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? threadgetvideo.java

?? 一個(gè)手機(jī)能實(shí)時(shí)監(jiān)控視頻錄像的源碼,希望對(duì)開發(fā)人員有幫助.
?? JAVA
字號(hào):
/**
//VideoIM文檔生成日期:2005.10.12
//
//(1)概述:
//類名稱:ThreadPostVideo
//類說明:
//	提供抓拍照片并發(fā)送的功能
* 
//所在子系統(tǒng):VideoIM
//
//系統(tǒng)總描述:
	    我們提供的VideoIM手機(jī)自動(dòng)拍照上傳器J2ME版本[開源]是
	    一個(gè)可以下載到手機(jī)(例如Nokia7610已經(jīng)確實(shí)可以下載安裝并正常運(yùn)行)的應(yīng)用程序,
	    用來自動(dòng)驅(qū)動(dòng)手機(jī)攝像頭定時(shí)拍攝,并后臺(tái)將JPEG圖像(很小,大約幾KB)上傳到服務(wù)器上,
	    這樣就可以幫助其他系統(tǒng)工作,比如PC機(jī)上的MSN Messenger可以和你的移動(dòng)MSN Messenger
	    通過這種方式視頻聊天,對(duì)方可以每隔十幾秒鐘看到你的手機(jī)所看到的畫面了。

	 子系統(tǒng)描述:
		VideoIM的功能列表:
			1:我要MobileWebCam
				啟動(dòng)MobileWebCam
				停止MobileWebCam
			2:MobileWebCam設(shè)置
			3:關(guān)于我
			4:退出


//(2)歷史記錄:
//創(chuàng)建人: 鄭昀(2005.10.12)
//聯(lián)系我: Google Talk >> zhengyun@gmail.com
//Blogs:    http://blog.csdn.net/zhengyun_ustc/以及http://www.cnblogs.com/zhengyun_ustc

//(3)版權(quán)聲明:
//由于我這個(gè)版本的VideoIM手機(jī)自動(dòng)拍照上傳器也是基于Mowecam的設(shè)計(jì)理念基礎(chǔ)上改編而來的,
//所以決定遵照GPL協(xié)議的大意開放源代碼,您可以自由傳播和修改,在遵照GPL協(xié)議的約束條件的前提下。

//(4)相關(guān)資源:
1:《[J2ME]VideoIM手機(jī)自動(dòng)拍照上傳器開源說明》
2:《[J2ME]VideoIM手機(jī)自動(dòng)拍照上傳器設(shè)計(jì)說明》
3:下載源代碼:

////////////////////////////////////////////////////////////////////*/
package com.ultrapower.model;

import java.io.InputStream;
import java.util.Hashtable;

import javax.microedition.io.Connector;
import javax.microedition.io.HttpConnection;
import javax.microedition.lcdui.Item;
import javax.microedition.media.Manager;
import javax.microedition.media.Player;
import javax.microedition.media.control.VideoControl;

import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.KvmSerializable;
import org.ksoap2.serialization.PropertyInfo;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransport;

import com.ultrapower.common.CommandResources;
import com.ultrapower.control.GUIController;

/**********************************************************
//ThreadPostVideo
//
//Class Description:
//	提供抓拍照片并發(fā)送的功能
//
//Author:
// zhengyun@ultrapower 2005.10.12
//
**********************************************************/
public class ThreadGetVideo
	implements Runnable {
	
	private GUIController 	m_controller = null;
	private VideoControl 	m_video = null;
	private Player         m_player = null;
	private boolean 		m_bDownloadVideo;
	private VideoSettings 	m_Settings = VideoSettings.getInstance();
	private InputStream    m_isInputMedia; 
		
	public ThreadGetVideo(GUIController controll)
    {
		System.out.println("/** Enter ThreadPostVideo Constractor!");
		m_controller 	 = controll;
		m_bDownloadVideo = false;
    }
	
	public synchronized void setDownloadVideo(boolean value)
	{
		m_bDownloadVideo = value;
	}
	
	public final void run()
    {
        /* Use networking if necessary */
        long lngStart;
        long lngTimeTaken;
		String sProgressWAITTITLE = String.valueOf(
				CommandResources.getChars(CommandResources.TXT_WAITTITLE));
        
		while(true)
		{
	        try
	        {
				//  我們是依靠m_bDownloadVideo來判斷是否去得到3gp并下載的.
				//  如果當(dāng)前m_bDownloadVideo是false,那么本線程就只能先睡眠一段時(shí)間了.
	            if( m_bDownloadVideo ) 
				{
					System.out.println("/* StartWebcamDownload::開始下載實(shí)況錄像!");
		            
		            /*
		             *  Change to run locally on developer machine
		             */
					String serviceNamespace = 
						String.valueOf(m_controller.getSettings().getMyConvertServerURL());
							//String.valueOf(
							//		CommandResources.getChars(
							//				CommandResources.TXT_MY_3GP_SERVER_URL));
					String methodName = 
						String.valueOf(
								CommandResources.getChars(
										CommandResources.TXT_MY_3GP_SERVER_METHOD));
					String methodReturnName = 
						String.valueOf(
								CommandResources.getChars(
										CommandResources.TXT_MY_3GP_SERVER_METHOD_RETURN));
					String methodResponseName = 
						String.valueOf(
								CommandResources.getChars(
										CommandResources.TXT_MY_3GP_SERVER_METHOD_RESPONSE));
					String downloadSiteURL = 
						String.valueOf(m_controller.getSettings().getDownload3gpFileSiteURL());
						//String.valueOf(
						//		CommandResources.getChars(
						//				CommandResources.TXT_DOWNLOAD3GPFILE_SERVER_URL));
					String serviceUrl = 
						serviceNamespace + "?wsdl";
		
					System.out.println("Try add ClassMap.....");
		            //ClassMap classMap = new ClassMap(Soap.VER11);
					//classMap.prefixMap = Soap.prefixMap[2];

					System.out.println("/* Try new SoapObject */\n" + 
							"	serviceNamespace:" + serviceNamespace);
		            SoapObject request = new SoapObject(serviceNamespace, methodName );
					SoapSerializationEnvelope envelope =
						new SoapSerializationEnvelope(SoapEnvelope.VER11);
					envelope.bodyOut = request;
					/*envelope.addMapping(serviceNamespace, 
							methodResponseName, 
							PropertyInfo.VECTOR_CLASS);*/
					//(new MarshalBase64()).register(envelope);
					/*envelope.addMapping(
							"http://xml.apache.org/xml-soap",
							"Vector",
							PropertyInfo.VECTOR_CLASS); 
					envelope.addMapping(
							"http://schemas.xmlsoap.org/soap/encoding/",
							"string",
							PropertyInfo.STRING_CLASS); 
					envelope.addMapping(
							"http://schemas.xmlsoap.org/soap/encoding/",
							"int",
							PropertyInfo.INTEGER_CLASS);*/
					
					/*
					 * 添加 web service的輸入?yún)?shù)
					 */
					String strMMSURL = 
						String.valueOf(m_controller.getSettings().getMyConvertServerURL());
						//String.valueOf(
						//		CommandResources.getChars(
						//				CommandResources.TXT_URL_MMS_SERVER_1));
					request.addProperty("url", 
							strMMSURL);
					System.out.println("/* 流媒體服務(wù)器:" + strMMSURL);
					String strTimeLimit = 
						String.valueOf(m_controller.getSettings().getLiveMediaTimeLimit());
						//String.valueOf(VideoSettings.getInstance().getLiveMediaTimeLimit());
					request.addProperty("timeVideo", 
							strTimeLimit);
					System.out.println("/* 時(shí)間秒數(shù):" + strTimeLimit);
					String str3gpFileName = 						
						String.valueOf(
							BuildLongFromString(
									GetCID() + "thisisasalt1234")) + ".3gp";
					request.addProperty("FileName", 
							str3gpFileName);
					System.out.println("/* 文件名:" + str3gpFileName);
					
		
					System.out.println("/* Try new HttpTransport \n" + 
							"	serviceUrl:" + serviceUrl + "	;method:" + methodName);
		            //HttpTransport tx = new HttpTransport(serviceUrl, methodName);
		            //tx.setClassMap( classMap );
		            
					HttpTransport tx = 
						new HttpTransport(serviceUrl);
					tx.debug = true;
							            
					System.out.println("Try call Streaming web service");	
					tx.call(serviceNamespace + "#" + methodName,
							envelope);
					//Object Response = (Object)tx.call(request);
					System.out.println("End call Streaming web service");				
					
					KvmSerializable o3gpResponse = (KvmSerializable)envelope.bodyIn;
					if(o3gpResponse != null)
					{
						PropertyInfo info = new PropertyInfo();
						Hashtable properties = new Hashtable();
						//String str3gpResponse;
						
				        int cnt = o3gpResponse.getPropertyCount();
						for (int i = 0; i < cnt; i++) {
							o3gpResponse.getPropertyInfo(i, properties, info);
							System.out.println("info name:" + info.name);
							if(methodReturnName.equalsIgnoreCase(info.name))
							{
								System.out.println("這正是我們要找的返回值!" );
								//str3gpResponse = (String)o3gpResponse.getProperty(i);
								//System.out.println("服務(wù)器告訴的URL為:" + str3gpResponse.getStringAt(0));
							}
						}
						
						downloadSiteURL = downloadSiteURL + str3gpFileName;
						System.out.println("服務(wù)器告訴的URL為:" + downloadSiteURL);
						
						HttpConnection conn = 
							(HttpConnection)Connector.open(downloadSiteURL);
						conn.setRequestMethod(HttpConnection.GET);
						conn.setRequestProperty("Content-Length", "0");
						
						conn.setRequestProperty("Accept-Language", "zh-cn");
						conn.setRequestProperty("Accept-Encoding", "gzip, deflate");
						
						conn.setRequestProperty("Connection", "close"); 
						System.out.println("1");
						m_isInputMedia = 
							(InputStream)conn.openInputStream();
						System.out.println("2");
						m_player = (Player)Manager.createPlayer(m_isInputMedia, "video/3gpp");
						m_player.realize();
						System.out.println("3");
						m_video = (VideoControl)m_player.getControl("VideoControl");
						System.out.println("4");
						if(m_video != null)
				        {
							// the player can start with the smallest latency
							m_player.prefetch();
							
							System.out.println("/** 已經(jīng)得到了VideoControl!");
						
							// Display Video as a Form item
							//
							Item itemVideoWindow;
							// 在USE_GUI_PRIMITIVE模式下,默認(rèn)是可見的,而在USE_DIRECT_VIDEO模式下,
							// 默認(rèn)是不可見的,需要通過方法setVisible(boolean visible)來設(shè)置
							(itemVideoWindow = (Item)m_video.initDisplayMode
								(VideoControl.USE_GUI_PRIMITIVE, null)).setLayout(3);
							m_controller.m_camForm.append(itemVideoWindow);
							m_player.start();
							System.out.println("/** 啟動(dòng)Player!");
		
				        }
				        
					}
					
					m_bDownloadVideo = false;
				}
				
				lngStart = System.currentTimeMillis();
                lngTimeTaken = System.currentTimeMillis() - lngStart;
                if(lngTimeTaken < 100)
                    Thread.sleep(75 - lngTimeTaken);
	        
	        }
			catch(Exception exc)
	        {
				System.out.println("/** 下載實(shí)況錄像時(shí)發(fā)生異常!");
				m_bDownloadVideo = false;
				exc.printStackTrace();
				////////////////////////////////////////////
				// 告訴控制器,不能夠下載錄像并播放
				m_controller.setPlayerException(exc.getMessage()
						 + "/" + exc.getClass());
				m_controller.handleEventNoThrows(GUIController.EventID.EVENT_DOWNLOADDATA_ERROR, 
						null);
				////////////////////////////////////////////
	        }
		}
    }
	
	private String GetCID()
    {
        return "cid" + System.currentTimeMillis();
    }
	
	private long BuildLongFromString(String strMagic)
    {
        int j = 0;
        for(int k = 0; k < strMagic.length(); k++)
            if((k & 0x1) == 0)
                j ^= j << 7 ^ strMagic.charAt(k) ^ j >> 3;
            else
                j ^= ~(j << 11 ^ strMagic.charAt(k) ^ j >> 5);

        return (long)(j & 0x7fffffff);
    }
	
	public synchronized void PlayAgain()
	{
		System.out.println("/** PlayAgain!");
		try
		{
			if(m_player != null)
			{
				//if(m_player.getState() == m_player.CLOSED)
				{
					m_player.start();
				}
			}
		}
		catch(Exception exc)
		{
			
		}
		finally
		{
		}
	}
	
	public synchronized void StopPlayer()
	{
		System.out.println("/** StopPlayer!");
		try
		{
			if(m_player != null)
			{
				//if(m_player.getState() == m_player.STARTED)
				{
					m_player.stop();
				}
			}
		}
		catch(Exception exc)
		{
			
		}
		finally
		{
		}
	}
	
	public synchronized void DeleteVideoControl()
	{
		System.out.println("/** DeleteVideoControl!");
		try
		{
			if(m_player != null)
			{
				//if(m_player.getState() == m_player.STARTED)
				{
					m_player.stop();
				}
				m_player.deallocate();
				m_player = null;
			}
		}
		catch(Exception exc)
		{
			
		}
		finally
		{
			if(m_video != null)
			{
				m_video.setVisible(false);
				m_video = null;
			}
		}
	}

}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品久久久久影院| 亚洲色图欧美偷拍| 91蝌蚪国产九色| 蜜臀av性久久久久蜜臀aⅴ流畅 | 色综合网站在线| 久久超碰97人人做人人爱| 亚洲欧美视频一区| 久久久午夜精品| 91麻豆精品国产91久久久久| 97精品国产露脸对白| 国产精品中文欧美| 玖玖九九国产精品| 亚洲电影一级黄| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 日韩午夜激情视频| 欧美午夜不卡在线观看免费| 成人激情电影免费在线观看| 狠狠色丁香婷婷综合久久片| 亚洲高清免费在线| 亚洲女爱视频在线| 国产精品久久国产精麻豆99网站| 精品美女在线观看| 欧美一卡2卡3卡4卡| 欧美人与z0zoxxxx视频| 色综合久久88色综合天天6| 成人在线一区二区三区| 国内精品不卡在线| 久久精品国产久精国产| 日本欧美一区二区| 首页综合国产亚洲丝袜| 亚洲成人综合视频| 亚洲一区二区三区不卡国产欧美| 亚洲美女区一区| 亚洲卡通动漫在线| 亚洲欧洲av另类| 国产精品久久久久久久久免费桃花| 久久亚洲一区二区三区明星换脸 | 国内精品自线一区二区三区视频| 午夜精品福利久久久| 亚洲福利一二三区| 性感美女极品91精品| 亚洲午夜激情av| 亚洲第一电影网| 亚洲成av人片www| 天天色 色综合| 日本欧美在线看| 九九**精品视频免费播放| 黄一区二区三区| 国产精品123| eeuss鲁片一区二区三区 | 青青草成人在线观看| 日本不卡视频在线| 极品尤物av久久免费看| 国产麻豆精品在线| 白白色 亚洲乱淫| 高清不卡一区二区| 99久久精品国产观看| 91激情在线视频| 7777精品久久久大香线蕉| 日韩免费观看高清完整版在线观看| 日韩免费福利电影在线观看| 久久亚洲精精品中文字幕早川悠里| 国产欧美日韩不卡| 亚洲欧美国产三级| 日本午夜精品视频在线观看| 精品一区二区三区影院在线午夜 | 日韩国产在线一| 国产综合色在线| www.欧美色图| 欧美高清一级片在线| 久久综合久久99| 一区二区三区资源| 麻豆精品视频在线| 99国产一区二区三精品乱码| 欧美日韩aaaaa| 国产欧美中文在线| 亚洲影院免费观看| 国产一区高清在线| 欧美在线观看禁18| 欧美精品一区在线观看| 亚洲人成精品久久久久| 日韩电影一区二区三区四区| 国产精品456| 欧美日韩美女一区二区| 国产亚洲婷婷免费| 亚洲成a人片在线观看中文| 国产美女精品人人做人人爽| 欧美色大人视频| 久久久精品天堂| 亚洲sss视频在线视频| 国产精品中文字幕欧美| 欧美日韩一区国产| 国产色91在线| 日韩中文字幕av电影| 不卡av在线网| 欧美成人三级在线| 亚洲五码中文字幕| 成人少妇影院yyyy| 日韩欧美一区电影| 夜夜爽夜夜爽精品视频| 国产成a人无v码亚洲福利| 欧美日韩国产片| 中文字幕亚洲在| 国内久久婷婷综合| 91精品国产色综合久久不卡蜜臀 | 亚洲精品伦理在线| 国产精品一级片| 欧美一二三在线| 亚洲黄色小说网站| 福利一区福利二区| 日韩精品一区二区三区三区免费 | 亚洲伊人伊色伊影伊综合网| 丰满少妇久久久久久久| 日韩欧美在线综合网| 亚洲国产综合色| 日本高清视频一区二区| 国产日本欧洲亚洲| 精彩视频一区二区三区| 欧美日韩1区2区| 亚洲一区二区三区视频在线| 色综合天天综合色综合av| 国产色婷婷亚洲99精品小说| 精品亚洲成a人| 日韩欧美美女一区二区三区| 日韩电影在线一区二区| 欧美卡1卡2卡| 天天操天天干天天综合网| 欧美综合亚洲图片综合区| 亚洲欧洲制服丝袜| 91免费版pro下载短视频| 中文字幕在线免费不卡| 成人午夜精品一区二区三区| 中文字幕欧美激情| 粉嫩嫩av羞羞动漫久久久| 国产亚洲一本大道中文在线| 国产精品一区三区| 国产欧美中文在线| 成人影视亚洲图片在线| 国产精品免费aⅴ片在线观看| 风流少妇一区二区| 国产精品福利av| 91免费视频网址| 夜夜精品视频一区二区| 欧美日韩在线免费视频| 午夜国产精品影院在线观看| 欧美精品aⅴ在线视频| 免费成人结看片| 精品国产乱码久久久久久久| 国产成人在线视频网站| 欧美激情在线免费观看| 97精品久久久午夜一区二区三区 | 韩国午夜理伦三级不卡影院| 26uuu亚洲| 国产精品一区二区免费不卡| 国产精品丝袜一区| 91福利资源站| 蜜臀av一区二区在线观看| 久久婷婷色综合| 99久久精品情趣| 亚洲成a人片在线观看中文| 欧美一区二区三区男人的天堂| 捆绑紧缚一区二区三区视频| 国产校园另类小说区| 色94色欧美sute亚洲线路一ni | 欧美在线不卡一区| 日本不卡视频在线观看| 久久久噜噜噜久久中文字幕色伊伊| 成人小视频在线观看| 亚洲国产成人91porn| 欧美tickling网站挠脚心| 国产成人免费视| 亚洲在线视频一区| 精品久久久久久久久久久久包黑料| 国产成人午夜精品5599| 一区二区欧美视频| 337p粉嫩大胆色噜噜噜噜亚洲| 成人国产精品视频| 天天影视网天天综合色在线播放| 亚洲精品一区二区三区蜜桃下载| 99精品视频在线观看免费| 丝袜美腿成人在线| 中文字幕不卡在线播放| 欧美日韩中文国产| 国产精品99久久久久| 亚洲综合色区另类av| 久久中文字幕电影| 欧洲人成人精品| 国产激情偷乱视频一区二区三区| 亚洲综合一区二区| 久久精品亚洲麻豆av一区二区| 在线国产电影不卡| 国产91精品欧美| 热久久一区二区| 亚洲激情在线播放| 久久久久一区二区三区四区| 欧美日韩电影在线播放| www.一区二区| 国产精品一品二品| 丝袜亚洲另类欧美| 樱花影视一区二区|