青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

franksunny的個人技術空間
獲得人生中的成功需要的專注與堅持不懈多過天才與機會。 ——C.W. Wendte

 文檔中涉及到貼圖,懶得搞,就附帶一份word文檔吧,需要的可以下下 http://www.shnenglu.com/Files/franksunny/camera.rar

攝像頭編程預研

目前使用攝像頭編程,網(wǎng)上用的最多的都是直接調用手機自帶的照相/攝像程序來完成,不過使用這種方式,可控性就顯得弱一些,為此近期對直接使用ECAM API進行了下簡單預研。

照相流程

因為本次預研主要還是偏重照相功能。整個照相過程,假設使用文字說明可能會顯得相對繁瑣,為此結合ECAM API對照相功能進行了順序流程圖描繪,具體如下

該過程主要涉及到的觀察器類就是MCameraObserver,該類和CCamera均在ecam.h頭文件中被定義,以下是該觀察器接口類的聲明

class MCameraObserver

{

public:

        //CCamera::Reserve異步函數(shù)的回調通知

       virtual void ReserveComplete(TInt aError)=0;

        //CCamera::PowerOn異步函數(shù)的回調通知

       virtual void PowerOnComplete(TInt aError)=0;

        //假如取景器模式為位圖模式時預覽位圖的回調通知

       virtual void ViewFinderFrameReady(CFbsBitmap& aFrame)=0;

        //CCamera::CaptureImage異步函數(shù)的回調通知

       virtual void ImageReady(CFbsBitmap* aBitmap,HBufC8* aData,TInt aError)=0;

        //CCamera::StartVideoCapture異步函數(shù)的回調通知

       virtual void FrameBufferReady(MFrameBuffer* aFrameBuffer,TInt aError)=0;

};

在這里需要說明下的,恐怕就是取景器了,因為假設不是數(shù)碼達人或者第一次接觸攝像頭類編程,這個概念還是比較新的。其實所謂取景器,可以理解為預覽擬拍攝景物的視窗,CCamera支持兩種顯示取景器的方法:一種是直接屏幕訪問模式,即應用程序只要指明在屏幕上的哪個區(qū)域顯示圖像,攝像頭對象就會把當前取到的圖像直接繪制到這個區(qū)域上(可以說過程不用程序干預的);另外一種是位圖模式,即攝像頭對象提供一系列的位圖,由應用程序把位圖繪制到窗口上。

一般在設置之前需要先獲取一下攝像頭參數(shù),看看其是否支持所要設置的模式。EViewFinderDirectSuported就是支持直接屏幕訪問模式,EViewFinderBitmapsSupported就是位圖模式。通常情況下,假如兩種模式都支持的情況下,選用直接屏幕訪問模式,因為這種模式比較快而且不用程序代碼干預,否則就用位圖模式,位圖模式時,當捕捉到圖像后會調用觀察器的ViewFinderFrameReady()函數(shù)將圖像傳給觀察器進行繪制。

關于CameraInfo

攝像頭本身有屬性信息,我們可以通過調用CCamera:: CameraInfo(TCameraInfo& aInfo)函數(shù)獲取。對N81手機主攝像頭進行缺省參數(shù)的提取,具體參數(shù)如下圖所示

對各自參數(shù)的分析如下

iHardwareVersion

相機硬件的版本號,該值不用細究,是OEM關心的

iSoftwareVersion

相機軟件的版本號(驅動程序版本號),該值也是OEM關心

iOrientation

相機的朝向,該值是OEM出廠時根據(jù)相機特性設定的,編程無法修改,不過可以給我們編程提供參考條件,其取值有如下幾種類型

    /** Possible directions in which the camera may point.

     */

    enum TCameraOrientation

    {

        /** Outward pointing camera for taking pictures.

              Camera is directed away from the user. */

        EOrientationOutwards,

        /** Inward pointing camera for conferencing.

              Camera is directed towards the user. */

        EOrientationInwards,

        /** Mobile camera capable of multiple orientations.

              Camera orientation may be changed by the user. */

        EOrientationMobile,

        /** Camera orientation is not known. */

        EOrientationUnknown

    };

根據(jù)取得的值的情況,N81的主攝像頭朝向為EOrientationOutwards,當然通過對N81E71主次攝像頭信息數(shù)據(jù)的采集,可知類似N81E71等雙攝像頭手機的主攝像頭屬性都是EOrientationOutwards的,而前面次攝像頭屬性都EOrientationInwards。從而猜測像N93i這樣的手機其攝像頭朝向屬性應該為EOrientationMobile(因為是猜測,所有還期待有人幫忙驗證一下)。根據(jù)這個屬性,對于雙攝像頭手機,我們可以編程選中需要使用的攝像頭。

iOptionsSupported

同樣也是一些無法修改的屬性,表明了此攝像頭支持的功能,因為該值是個位域的值,通常使用過程中要用位與操作來判斷其是否支持某一種屬性,具體如下羅列的枚舉值

       enum TOptions

              {

              /** View finder display direct-to-screen flag */

              EViewFinderDirectSupported              = 0x0001,

              /** View finder bitmap generation flag */

              EViewFinderBitmapsSupported           = 0x0002,

              /** Still image capture flag */

              EImageCaptureSupported                    = 0x0004,

              /** Video capture flag */

              EVideoCaptureSupported                    = 0x0008,

              /** View finder display mirroring flag */

              EViewFinderMirrorSupported             = 0x0010,

              /** Contrast setting flag */

              EContrastSupported                            = 0x0020,

              /** Brightness setting flag */

              EBrightnessSupported                  = 0x0040,

              /** View finder clipping flag */

              EViewFinderClippingSupported    = 0x0080,

              /** Still image capture clipping flag */

              EImageClippingSupported                  = 0x0100,

              /** Video capture clipping flag */

              EVideoClippingSupported                   = 0x0200

              };

我的英文比較差,就不一一翻譯了,畢竟有些EviewFinderMirrorSupportedEviewFinderClippingSupportedEimageClippingSupportedEvideoClippingSupported我也不知道是啥具體用的。我們只需要關心這個手機的攝像頭支持何種模式的取景器,支不支持拍照(EImageCaptureSupported)、支不支持錄像(EVideoCaptureSupported)、支不支持對比度設置(EcontrastSupported)和亮度設置(EBrightnessSupported)就可以了。

因為N81主攝像頭的iOptionsSupporte值是14(即1110)所以該主攝像頭只支持位圖模式的取景器設置,同時支持圖像和視頻的拍攝,不支持對比度亮度等設置。

iFlashModesSupported

閃光燈支持模式,具體的模式可以參見如下枚舉值

       enum TFlash

       {

           /** No flash, always supported. */

           EFlashNone                  = 0x0000,

               /** Flash will automatically fire when required. */

               EFlashAuto                  = 0x0001,

               /** Flash will always fire. */

               EFlashForced         = 0x0002,

               /** Reduced flash for general lighting */

               EFlashFillIn          = 0x0004,

               /** Red-eye reduction mode. */   

               EFlashRedEyeReduce    = 0x0008,

               /** Flash at the moment when shutter opens.快門開時閃 */

               EFlashSlowFrontSync = 0x0010,

               /** Flash at the moment when shutter closes. 快門關事閃*/

               EFlashSlowRearSync  = 0x0020,

               /** User configurable setting */   

               EFlashManual        = 0x0040

       };

這里就不做贅述了,N81的值11(即1011),支持自動、總是打開和紅眼消除,當然總是關閉肯定是支持的。

知道了支持何種類型,我們就可以對攝像頭的閃光燈類型通過CCamera::FlashCCamera::SetFlashL兩個函數(shù)獲取和設置。

iExposureModesSupported

曝光支持模式,具體的模式詳見如下枚舉值

/** Specifies the type of exposure. - EExposureAuto is the default value. */

       enum TExposure

       {

              /** Set exposure automatically. Default, always supported. */

              EExposureAuto             = 0x0000,

              /** Night-time setting for long exposures. */

              EExposureNight            = 0x0001,

              /** Backlight setting for bright backgrounds. */

              EExposureBacklight      = 0x0002,

              /** Centered mode for ignoring surroundings. */

              EExposureCenter          = 0x0004,

              /** Sport setting for very short exposures. */

              EExposureSport           = 0x0008,

              /** Generalised setting for very long exposures. */

              EExposureVeryLong     = 0x0010,

              /** Snow setting for daylight exposure. */

              EExposureSnow           = 0x0020,

              /** Beach setting for daylight exposure with reflective glare. */

              EExposureBeach          = 0x0040,

              /** Programmed exposure setting. */

              EExposureProgram       = 0x0080,

              /** Aperture setting is given priority. */

              EExposureAperturePriority = 0x0100,

              /** Shutter speed setting is given priority. */

              EExposureShutterPriority     = 0x0200,

              /** User selectable exposure value setting. */

              EExposureManual                       = 0x0400,

              /** Exposure night setting with colour removed to get rid of colour noise. */

              EExposureSuperNight                 = 0x0800,

              /** Exposure for infra-red sensor on the camera */

              EExposureInfra                           = 0x1000

       };

獲取N81的相機曝光支持模式為7(即0111),所以只支持自動、夜晚、背光和中間四種模式。

我們可以通過CCamera::Exposure()CCamera::SetExposureL兩個函數(shù)對攝像頭的曝光模式進行獲取和設置。

iWhiteBalanceModesSupported

白平衡支持模式,白平衡具體的模式如下

       /** Specifies how the white balance is set. */

       enum TWhiteBalance

       {

              /** Set white balance automatically. Default, always supported. */

              EWBAuto                           = 0x0000,

              /** Normal daylight. */

              EWBDaylight               = 0x0001,

              /** Overcast daylight. */

              EWBCloudy                 = 0x0002,

              /** Tungsten filament lighting. */

              EWBTungsten               = 0x0004,

              /** Fluorescent tube lighting */

              EWBFluorescent           = 0x0008,

              /** Flash lighting. */

              EWBFlash                    = 0x0010,

              /** High contrast daylight primarily snowy */

              EWBSnow                   = 0x0020,

              /** High contrast daylight primarily near the sea */

              EWBBeach                  = 0x0040,

              /** User configurable mode */

              EWBManual                = 0x0080

       };

具體不做展開,可以通過調用CCamera::WhiteBalanceCCamera::SetWhiteBalanceL兩個方法來進行對白平衡參數(shù)的獲取和設置。

焦距(放大倍數(shù))

CameraInfo里面涉及焦距的參數(shù)真不少,iMinZoomiMaxZoomiMaxDigitalZoomiMinZoomFactoriMaxZoomFactoriMaxDigitalZoomFactor

這幾個參數(shù)值其實很困惑我的,特別是iMaxDigitalZoom,不知道是干嘛用的,這個值只能先不管了。根據(jù)CCamer提供了四個關于Zoom的如下四個函數(shù)

/**

 Sets the digital zoom factor.

 This must be in the range of 0 to TCameraInfo::iMaxDigitalZoom inclusive.

 May leave with KErrNotSupported if the zoom factor is out of range.

 @param  aDigitalZoomFactor

         The required digital zoom factor.

 */

 virtual void SetDigitalZoomFactorL(TInt aDigitalZoomFactor = 0)=0;

 /**

 Gets the currently set digital zoom factor.

 @return  The currently set digital zoom factor.

 */

 virtual TInt DigitalZoomFactor() const=0;

 

 /**

 Sets the zoom factor.

 This must be in the range of TCameraInfo::iMinZoom to TCameraInfo::iMaxZoom

 inclusive. May leave with KErrNotSupported if the specified zoom factor is

 out of range.

 @param aZoomFactor

        Required zoom factor.

 */

 virtual void SetZoomFactorL(TInt aZoomFactor = 0)=0;

 /**

 Gets the currently set zoom factor.

 @return  The currently set zoom factor.

 */

 virtual TInt ZoomFactor() const=0;

可以猜測分別表示數(shù)碼變焦和光學變焦。

另外,經(jīng)過對N81E71的參數(shù)比較,N81iMaxDigitalZoomFactor20.0,而E714.0,正好對應N8120倍數(shù)碼變焦,E714倍數(shù)碼變焦。因為很多手機攝像頭鏡頭都不支持光學變焦,所以在這里對我們有用的也就是只需要通過DigitalZoomFactor SetDigitalZoomFactorL兩個函數(shù)在iMaxDigitalZoomFactor范圍內設置數(shù)碼變焦值就可以了。

圖像格式和圖像尺寸參數(shù)

iImageFormatsSupportediNumImageSizesSupported兩個參數(shù)分別用以表明攝像頭拍照時所支持的圖像格式和圖像尺寸數(shù)量,具體支持的圖像格式如下枚舉值定義

       enum TFormat

       {

              /** 8 bit greyscale values, 0=black, 255=white. */

              EFormatMonochrome                  = 0x0001,

              /** Packed RGB triplets, 4 bits per pixel with red in the least significant bits

              and the 4 most significant bits unused. */

              EFormat16bitRGB444                 = 0x0002,

              /** Packed RGB triplets, 5 bits per pixel for red and blue and 6 bits for green,

              with red in the least significant bits. */

              EFormat16BitRGB565                 = 0x0004,

              /** Packed RGB triplets, 8 bits per pixel with red in the least significant bits

              and the 8 most significant bits unused. */

              EFormat32BitRGB888                 = 0x0008,

              /** JFIF JPEG. */

              EFormatJpeg                              = 0x0010,

              /** EXIF JPEG */

              EFormatExif                              = 0x0020,

              /** CFbsBitmap object with display mode EColor4K. */

              EFormatFbsBitmapColor4K         = 0x0040,

              /** CFbsBitmap object with display mode EColor64K. */

              EFormatFbsBitmapColor64K       = 0x0080,

              /** CFbsBitmap object with display mode EColor16M. */

              EFormatFbsBitmapColor16M       = 0x0100,

              /** Implementation dependent. */

              EFormatUserDefined                   = 0x0200,

              /** 4:2:0 format, 8 bits per sample, Y00Y01Y10Y11UV. */

              EFormatYUV420Interleaved = 0x0400,

              /** 4:2:0 format, 8 bits per sample, Y00Y01Y02Y03...U0...V0... */

              EFormatYUV420Planar               = 0x0800,

              /** 4:2:2 format, 8 bits per sample, UY0VY1. */

              EFormatYUV422                        = 0x1000,

              /** 4:2:2 format, 8 bits per sample, Y1VY0U. */

              EFormatYUV422Reversed           = 0x2000,

              /** 4:4:4 format, 8 bits per sample, Y00U00V00 Y01U01V01... */

              EFormatYUV444                        = 0x4000,

              /** 4:2:0 format, 8 bits per sample, Y00Y01Y02Y03...U0V0... */

              EFormatYUV420SemiPlanar        = 0x8000,

              /** CFbsBitmap object with display mode EColor16MU. */

              EFormatFbsBitmapColor16MU    = 0x00010000

       };

因為N81主攝像頭的iImageFormatsSupported值為480(也即0x01E0),所以支持的格式為EFormatExifEFormatFbsBitmapColor4K EFormatFbsBitmapColor64K EFormatFbsBitmapColor16M四種。

每一種格式又有對應的各種不同的尺寸,而具體支持的尺寸數(shù)則有iNumImageSizesSupported來限定,如上N81iNumImageSizesSupported值為3,對每種格式使用CCamera::EnumerateCaptureSizes獲取得尺寸均為320*240640*4801152*864,這讓我百思不得其解,畢竟N81200萬像素的攝像頭,怎么會最大尺寸是菜1152*864呢?系統(tǒng)自帶的照相/攝像程序也是支持1600*1200的,而且關鍵QQ手中郵也是支持1600*1200格式的,后來經(jīng)過在論壇上搜索,才知道原來CCamera::EnumerateCaptureSizes獲取的尺寸跟UI程序時橫屏(landscape)還是豎屏(portrait)有關的,像N81在橫屏模式下iNumImageSizesSupported的值為4,其尺寸為320*240640*4801152*8641600*1200,而默認豎屏下就是之前的那些數(shù)值。

另外用E71手機做過實驗,發(fā)現(xiàn)對于E71,橫屏還是豎屏,其實是一樣的,沒有任何變化,其iNumImageSizesSupported始終是5,而用CCamera::EnumerateCaptureSizes獲取得尺寸也均為320*240640*4801152*8641600*12002048*1536,所以我們在獲取最大尺寸時可以毫無顧忌的使用橫屏模式。

有了這個尺寸,我們就可以根據(jù)需要,調用CCamera::PrepareImageCaptureL(TFormat aImageFormat,TInt aSizeIndex)函數(shù)來設定我們拍照時需要的具體尺寸了。

 

在這里畫蛇添足下,對于使用橫屏和豎屏模式切換,可以在C*AppUi內通過調用CAknAppUiBase::SetOrientationL(TAppUiOrientation aOrientation)來簡單實現(xiàn),具體的參數(shù)值橫屏時傳EappUiOrientationLandscape,豎屏時傳EappUiOrientationPortrait。不過類似我們程序的自定義界面,調用完這個函數(shù)后,會產(chǎn)生消息到C*AppUi::HandleResourceChangeL,只要我們在這個函數(shù)內部處理好界面排版就可以了。關于該項測試,周二已經(jīng)和大紅一起演示過了。

視頻格式和視頻尺寸參數(shù)

手機攝像頭自然也提供了視頻的錄制功能,視頻是由一幀一幀的圖像構成,在CameraInfo信息里頭與視頻相關的參數(shù)就是iNumVideoFrameSizesSupported(單幀的尺寸)、iNumVideoFrameRatesSupported(幀速)和iVideoFrameFormatsSupported(支持的幀格式)。

因為N81iVideoFrameFormatsSupported2048(也即0x800),所以視頻格式只支持EFormatYUV420Planar一種格式,而iNumVideoFrameSizesSupported3,即支持3種模式,通過CCamera::EnumerateVideoFrameSizes(TSize& aSize,TInt aSizeIndex,TFormat aFormat)函數(shù)可以得到N81攝像時支持的三種視頻尺寸為320*240176*144128*96,另外可以通過調用CCamera::EnumerateVideoFrameRates(TReal32& aRate, TInt aRateIndex, TFormat aFormat,TInt aSizeIndex,TExposure aExposure = EExposureAuto)函數(shù)得到N81支持的幀速為15幀每秒。

有了這些參數(shù)可以方便的通過調用CCamera::PrepareVideoCaptureL函數(shù)設置攝像時所要用到的視頻尺寸和幀速;調用CCamera::StartVideoCapture函數(shù)開啟攝像,開啟攝像后攝像頭會調用MCameraObserver::FrameBufferReady傳遞回來具體的每一幀數(shù)據(jù),供界面顯示和編寫成視頻文件;調用CCamera::StopVideoCapture函數(shù)來停止攝像,在任何時候可以通過CCamera::VideoCaptureActive來查詢攝像頭是否處于攝像過程中。

其它至于目前所使用的幀尺寸和幀速在其它地方是不可設置的,只能通過CCamera::GetFrameSizeCCamera::FrameRate兩個函數(shù)來進行獲取當前的參數(shù)值。

幀緩存參數(shù)

這個不知道怎么翻譯,我就籠統(tǒng)稱其為幀緩存參數(shù)好了,在攝像過程需要使用到幀緩存有iMaxFramesPerBufferSupportediMaxBuffersSupported,前者表示每個buffer允許存放的最大幀數(shù),后者為允許使用的buffer最大個數(shù)。由于N81iMaxBuffersSupported2,所以最多允許使用2個幀緩存區(qū),又iMaxFramesPerBufferSupported1,也即每個幀緩存最多只能放一幀數(shù)據(jù)。雖然目前并不完全知道其實際作用如何,但是這兩個參數(shù)也是只有通過CCamera::PrepareVideoCaptureL這個函數(shù)來進行設置,通過函數(shù)CCamera::BuffersInUse()CCamera::FramesPerBuffer()來獲取當前的設置值。

由于視頻攝像需要涉及到音視頻編輯方面的內容,個人在視頻錄制方面還是空白,為此目前沒有真正嘗試,也就沒有深入進去。

 

以下在貼幾張預研中對E71 320萬像素4倍數(shù)碼變焦的CameraInfo信息截圖和N81 200萬像素20倍數(shù)碼變焦橫屏時的CameraInfo信息截圖,以供大家參閱。

E71 CameraInfo信息截圖

N81 橫屏CameraInfo信息截圖

因為E71不區(qū)分橫豎屏,所以CameraInfo是一樣的,有心的可以對比下之前的豎屏N81截圖和橫屏的差別。

 

此次小結先到這里,錯誤之處還望指正。

posted on 2010-11-03 14:55 frank.sunny 閱讀(2853) 評論(0)  編輯 收藏 引用 所屬分類: symbian 開發(fā)

常用鏈接

留言簿(13)

隨筆分類

個人其它博客

基礎知識鏈接

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲人成小说网站色在线| 一区二区三区日韩精品视频| 红杏aⅴ成人免费视频| 久久成人在线| 男人天堂欧美日韩| 亚洲理论电影网| 欧美视频免费在线观看| 亚洲私人影院| 久久亚洲综合色| 亚洲人被黑人高潮完整版| 欧美日韩国产免费观看| 亚洲免费视频成人| 毛片一区二区三区| 夜夜爽av福利精品导航| 国产精品嫩草99a| 久久久噜噜噜久久中文字幕色伊伊| 欧美成人精品一区二区三区| 日韩视频一区二区| 国产精品永久免费| 久久亚洲精品欧美| 一级日韩一区在线观看| 久久一区精品| 中文久久乱码一区二区| 国产在线播放一区二区三区| 欧美freesex交免费视频| 亚洲午夜激情| 欧美搞黄网站| 欧美小视频在线观看| 亚洲在线视频观看| 欧美韩日亚洲| 欧美中文日韩| 日韩一级在线观看| 久久久精彩视频| 亚洲精品网站在线播放gif| 久久先锋资源| 亚洲视频精选| 亚洲成人在线视频网站| 一本久道久久综合狠狠爱| 韩国在线一区| 国产精品爱啪在线线免费观看 | 亚洲一区二区免费| 欧美国产亚洲另类动漫| 欧美中文字幕久久| 这里是久久伊人| 亚洲经典一区| 一区视频在线播放| 国产精品一区视频网站| 欧美日韩国产一区二区| 老牛嫩草一区二区三区日本| 午夜激情综合网| 日韩一级免费观看| 欧美激情亚洲另类| 久久久91精品国产一区二区三区| 亚洲午夜91| 亚洲精品久久久久久久久| 娇妻被交换粗又大又硬视频欧美| 国产精品免费看久久久香蕉| 欧美日本精品在线| 欧美高清hd18日本| 免费成人av资源网| 久久一综合视频| 久久国产精品久久久久久电车 | 国产麻豆一精品一av一免费| 欧美日韩专区| 欧美女人交a| 欧美精品日韩一区| 欧美高清视频www夜色资源网| 久久综合九色综合欧美就去吻| 午夜综合激情| 午夜一区二区三区不卡视频| 亚洲一二三区在线| 制服丝袜亚洲播放| 99国产一区| 一区二区激情小说| 一本一本a久久| 99国产精品视频免费观看| 亚洲美女淫视频| 亚洲毛片在线看| 日韩亚洲一区二区| 在线综合亚洲欧美在线视频| 亚洲特级毛片| 亚洲字幕一区二区| 午夜精品影院在线观看| 亚洲欧美制服另类日韩| 性欧美大战久久久久久久免费观看| 午夜精彩视频在线观看不卡 | 亚洲午夜视频| 亚洲女同精品视频| 午夜精品一区二区三区四区| 欧美在线一二三区| 久久精品99无色码中文字幕| 久久精品国产第一区二区三区| 久久精品亚洲热| 久久综合999| 欧美久久久久中文字幕| 欧美午夜剧场| 国产一区二区三区在线观看视频 | 亚洲人午夜精品| 亚洲视频大全| 久久精品视频在线观看| 麻豆国产精品777777在线| 亚洲国产成人av| 99这里只有精品| 欧美一级艳片视频免费观看| 麻豆国产va免费精品高清在线| 欧美日本成人| 国产欧美日韩另类一区 | 久久久久国产一区二区三区四区 | 最新成人av网站| 亚洲图片欧洲图片日韩av| 久久av资源网站| 欧美r片在线| 国产乱码精品1区2区3区| 18成人免费观看视频| 宅男在线国产精品| 久久综合久久综合久久| 亚洲美女精品久久| 性18欧美另类| 欧美日本免费| 韩日精品中文字幕| 日韩五码在线| 久久久久久久久岛国免费| 亚洲精品美女| 久久久精品一品道一区| 国产精品成人播放| 1000部国产精品成人观看| 亚洲综合国产| 亚洲福利一区| 欧美一区二视频在线免费观看| 欧美日韩a区| 亚洲第一精品福利| 欧美亚洲色图校园春色| 亚洲日韩成人| 久久蜜桃香蕉精品一区二区三区| 欧美亚韩一区| 亚洲精品乱码久久久久久日本蜜臀 | 国产精品日本欧美一区二区三区| 在线观看一区视频| 新片速递亚洲合集欧美合集| 亚洲激情在线观看| 久久精品久久综合| 国产精品素人视频| 在线亚洲精品福利网址导航| 男人天堂欧美日韩| 久久成年人视频| 国产精品视屏| 亚洲性感激情| 亚洲精品一区二区三区蜜桃久| 久久日韩精品| 精品成人一区| 久久精品一区二区三区中文字幕| 99精品国产福利在线观看免费| 欧美成人国产va精品日本一级| 黄色日韩精品| 久久噜噜亚洲综合| 另类尿喷潮videofree| 亚洲女女女同性video| 国产精品家教| 亚洲一区在线看| 亚洲最快最全在线视频| 欧美日韩国产色视频| 日韩亚洲一区在线播放| 亚洲国产经典视频| 免费欧美在线视频| 亚洲精品国产品国语在线app | 国产亚洲毛片在线| 欧美一区二区女人| 亚洲欧美色婷婷| 国产手机视频精品| 久久久久久精| 久久精品国产一区二区三区免费看| 国产欧美视频一区二区三区| 午夜精品福利一区二区三区av| 亚洲一区二区免费在线| 国产精品一区二区a| 欧美一区午夜精品| 欧美一区二区性| 伊人久久婷婷色综合98网| 免费亚洲婷婷| 欧美国产精品劲爆| 一区二区不卡在线视频 午夜欧美不卡在| 亚洲激情精品| 欧美日韩一卡| 欧美一区亚洲二区| 久久精品国产99国产精品| 亚洲国内在线| 亚洲精品久久嫩草网站秘色| 国产精品高清免费在线观看| 欧美影院视频| 久久综合给合久久狠狠狠97色69| 亚洲激情女人| 亚洲高清视频一区| 欧美午夜精品久久久久久人妖| 欧美在线视频一区二区| 久久久久久久一区二区| 亚洲精品系列| 亚洲免费网站| 亚洲国产一区二区三区高清| 一本色道久久99精品综合| 国产一区二区三区高清在线观看|