久久精品国产精品国产精品污,男人扒开添女人下部免费视频,一级国产69式性姿势免费视频,夜鲁夜鲁很鲁在线视频 视频,欧美丰满少妇一区二区三区,国产偷国产偷亚洲高清人乐享,中文 在线 日韩 亚洲 欧美,熟妇人妻无乱码中文字幕真矢织江,一区二区三区人妻制服国产

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ffplay.c学习-1-框架及数据结构

發布時間:2024/4/11 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ffplay.c学习-1-框架及数据结构 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

ffplay.c學習-1-框架及數據結構


目錄

  • ffplay.c的意義
  • FFplay框架分析
  • 數據結構分析
  • struct VideoState 播放器封裝
  • struct Clock 時鐘封裝
  • struct MyAVPacketList和PacketQueue隊列
  • packet_queue_init()
  • packet_queue_destroy()
  • packet_queue_start()
  • packet_queue_abort()
  • packet_queue_put()
  • packet_queue_get()
  • packet_queue_put_nullpacket()
  • packet_queue_flush()
  • PacketQueue總結
  • struct Frame 和 FrameQueue隊列
  • frame_queue_init() 初始化
  • frame_queue_destory()銷毀
  • frame_queue_peek_writable()獲取可寫Frame
  • frame_queue_push()?隊列
  • frame_queue_peek_writable獲取可寫Frame指針
  • frame_queue_peek_readable() 獲取可讀Fram
  • frame_queue_next()出隊列
  • frame_queue_nb_remaining()獲取隊列的size
  • frame_queue_peek()獲取當前幀
  • frame_queue_peek_next()獲取下?幀
  • frame_queue_peek_last()獲取上?幀
  • struct AudioParams ?頻參數
  • struct Decoder解碼器封裝

  • 1. ffplay.c的意義

  • ffplay.c是FFmpeg源碼?帶的播放器,調?FFmpeg和SDL API實現?個?常有?的播放器。
  • 例如嗶哩嗶哩著名開源項?ijkplayer也是基于ffplay.c進??次開發。
  • ffplay實現了播放器的主體功能,掌握其原理對于我們獨?開發播放器?常有幫助。

  • 2. FFplay框架分析

    1. 播放器初始化

  • 初始化packet queue
  • 初始化frame queue
  • 初始化clock
  • 創建數據讀取線程
  • 2. 線程的劃分

  • 數據讀取線程
  • 打開媒體?件
  • 打開對應碼流的decoder以及初始化對應的audio、video、subtitle輸出
  • 創建decoder線程,audio、video和subtitle的解碼線程獨?
  • 調?av_read_frame讀取packet,并根據steam_index放?不同stream對應的packet隊列
  • ?頻解碼
  • 從packet queue讀取packet,解出frame后放?frame queue
  • 視頻解碼
  • 從packet queue讀取packet,解出frame后放?frame queue
  • 字幕解碼
  • 從packet queue讀取packet,解出frame后放?frame queue
  • ?頻播放(或者回調函數)
  • 從frame queue讀取frame進?播放
  • 視頻播放(ffplay?前是在main主線程進?視頻播放)
  • 從frame queue讀取frame進?播放
  • 字幕播放(ffplay?前是在main主線程進?字幕播放)
  • 從frame queue讀取frame進?播放
  • 控制響應(播放/暫停/快進/快退等)(ffplay?前是在main主線程進?播放控制)
  • 3. packet隊列的設計

  • 線程安全,?持互斥、等待、喚醒
  • 緩存數據??
  • 緩存包數
  • 隊列播放可持續時間
  • 進隊列/出隊列等
  • 4. frame隊列的設計

  • 線程安全,?持互斥、等待、喚醒
  • 緩存幀數
  • ?持讀取數據?不出隊列
  • 進隊列/出隊列等
  • 5. ?視頻同步

  • ?頻同步
  • 視頻同步
  • 外部時鐘同步
  • 6. ?頻處理

  • ?量調節
  • 靜?
  • 重采樣
  • 7. 視頻處理

  • 圖像格式轉換YUV->RGB等
  • 圖像縮放1280720->800480等
  • 8. 播放器控制

  • 播放
  • 暫停
  • 停?
  • 快進/快退
  • 逐幀
  • 靜?

  • 3. 數據結構分析

    1. struct VideoState 播放器封裝

    typedef struct VideoState {SDL_Thread *read_tid; // 讀線程句柄AVInputFormat *iformat; // 指向demuxerint abort_request; // =1時請求退出播放int force_refresh; // =1時需要刷新畫面,請求立即刷新畫面的意思int paused; // =1時暫停,=0時播放int last_paused; // 暫存“暫停”/“播放”狀態int queue_attachments_req; // 隊列附件,用于mp3等專輯封面int seek_req; // 標識一次seek請求int seek_flags; // seek標志,諸如AVSEEK_FLAG_BYTE等int64_t seek_pos; // 請求seek的目標位置(當前位置+增量)int64_t seek_rel; // 本次seek的位置增量int read_pause_return;AVFormatContext *ic; // iformat的上下文int realtime; // =1為實時流Clock audclk; // 音頻時鐘Clock vidclk; // 視頻時鐘Clock extclk; // 外部時鐘FrameQueue pictq; // 視頻Frame隊列FrameQueue subpq; // 字幕Frame隊列FrameQueue sampq; // 采樣Frame隊列Decoder auddec; // 音頻解碼器Decoder viddec; // 視頻解碼器Decoder subdec; // 字幕解碼器int audio_stream ; // 音頻流索引int av_sync_type; // 音視頻同步類型, 默認audio masterdouble audio_clock; // 當前音頻幀的PTS+當前幀Durationint audio_clock_serial; // 播放序列,seek可改變此值// 以下4個參數 非audio master同步方式使用double audio_diff_cum; // used for AV difference average computationdouble audio_diff_avg_coef;double audio_diff_threshold;int audio_diff_avg_count;// endAVStream *audio_st; // 音頻流PacketQueue audioq; // 音頻packet隊列int audio_hw_buf_size; // SDL音頻緩沖區的大小(字節為單位)// 指向待播放的一幀音頻數據,指向的數據區將被拷入SDL音頻緩沖區。若經過重采樣則指向audio_buf1,// 否則指向frame中的音頻uint8_t *audio_buf; // 指向需要重采樣的數據uint8_t *audio_buf1; // 指向重采樣后的數據unsigned int audio_buf_size; // 待播放的一幀音頻數據(audio_buf指向)的大小unsigned int audio_buf1_size; // 申請到的音頻緩沖區audio_buf1的實際尺寸int audio_buf_index; // 更新拷貝位置 當前音頻幀中已拷入SDL音頻緩沖區// 的位置索引(指向第一個待拷貝字節)// 當前音頻幀中尚未拷入SDL音頻緩沖區的數據量:// audio_buf_size = audio_buf_index + audio_write_buf_sizeint audio_write_buf_size;int audio_volume; // 音量int muted; // =1靜音,=0則正常struct AudioParams audio_src; // 音頻frame的參數 #if CONFIG_AVFILTERstruct AudioParams audio_filter_src; #endifstruct AudioParams audio_tgt; // SDL支持的音頻參數,重采樣轉換:audio_src->audio_tgtstruct SwrContext *swr_ctx; // 音頻重采樣contextint frame_drops_early; // 丟棄視頻packet計數int frame_drops_late; // 丟棄視頻frame計數enum ShowMode {SHOW_MODE_NONE = -1, // 無顯示SHOW_MODE_VIDEO = 0, // 顯示視頻SHOW_MODE_WAVES, // 顯示波浪,音頻SHOW_MODE_RDFT, // 自適應濾波器SHOW_MODE_NB} show_mode;// 音頻波形顯示使用int16_t sample_array[SAMPLE_ARRAY_SIZE]; // 采樣數組int sample_array_index; // 采樣索引int last_i_start; // 上一開始RDFTContext *rdft; // 自適應濾波器上下文int rdft_bits; // 自使用比特率FFTSample *rdft_data; // 快速傅里葉采樣int xpos;double last_vis_time;SDL_Texture *vis_texture; // 音頻TextureSDL_Texture *sub_texture; // 字幕顯示SDL_Texture *vid_texture; // 視頻顯示int subtitle_stream; // 字幕流索引AVStream *subtitle_st; // 字幕流PacketQueue subtitleq; // 字幕packet隊列double frame_timer; // 記錄最后一幀播放的時刻double frame_last_returned_time; // 上一次返回時間double frame_last_filter_delay; // 上一個過濾器延時int video_stream; // 視頻流索引AVStream *video_st; // 視頻流PacketQueue videoq; // 視頻隊列double max_frame_duration; // 一幀最大間隔. above this, we consider the jump a timestamp discontinuitystruct SwsContext *img_convert_ctx; // 視頻尺寸格式變換struct SwsContext *sub_convert_ctx; // 字幕尺寸格式變換int eof; // 是否讀取結束char *filename; // 文件名int width, height, xleft, ytop; // 寬、高,x起始坐標,y起始坐標int step; // =1 步進播放模式, =0 其他模式#if CONFIG_AVFILTERint vfilter_idx;AVFilterContext *in_video_filter; // the first filter in the video chainAVFilterContext *out_video_filter; // the last filter in the video chainAVFilterContext *in_audio_filter; // the first filter in the audio chainAVFilterContext *out_audio_filter; // the last filter in the audio chainAVFilterGraph *agraph; // audio filter graph #endif// 保留最近的相應audio、video、subtitle流的steam indexint last_video_stream, last_audio_stream, last_subtitle_stream;SDL_cond *continue_read_thread; // 當讀取數據隊列滿了后進入休眠時,可以通過該condition喚醒讀線程 } VideoState;

    2. struct Clock 時鐘封裝

    // 這里講的系統時鐘 是通過av_gettime_relative()獲取到的時鐘,單位為微妙 typedef struct Clock {double pts; // 時鐘基礎, 當前幀(待播放)顯示時間戳,播放后,當前幀變成上一幀// 當前pts與當前系統時鐘的差值, audio、video對于該值是獨立的double pts_drift; // clock base minus time at which we updated the clock// 當前時鐘(如視頻時鐘)最后一次更新時間,也可稱當前時鐘時間double last_updated; // 最后一次更新的系統時鐘double speed; // 時鐘速度控制,用于控制播放速度// 播放序列,所謂播放序列就是一段連續的播放動作,一個seek操作會啟動一段新的播放序列int serial; // clock is based on a packet with this serialint paused; // = 1 說明是暫停狀態// 指向packet_serialint *queue_serial; /* pointer to the current packet queue serial, used for obsolete clock detection */ } Clock;

    3. struct MyAVPacketList和PacketQueue隊列

  • ffplay?PacketQueue保存解封裝后的數據,即保存AVPacket
  • ffplay?先定義了?個結構體 MyAVPacketList :
  • typedef struct MyAVPacketList {AVPacket pkt; //解封裝后的數據struct MyAVPacketList *next; //下一個節點int serial; //播放序列 } MyAVPacketList;
  • 可以理解為是隊列的?個節點。可以通過其 next 字段訪問下?個節點。
  • serial字段主要?于標記當前節點的播放序列號,ffplay中多處?到serial的概念,主要?來區分是否連續數據,每做?次seek,該serial都會做+1的遞增,以區分不同的播放序列。serial字段在我們ffplay的分析中應??常?泛,謹記他是?來區分數據否連續先。
  • 接著定義另?個結構體PacketQueue:
  • typedef struct PacketQueue {MyAVPacketList *first_pkt, *last_pkt; // 隊首,隊尾指針int nb_packets; // 包數量,也就是隊列元素數量int size; // 隊列所有元素的數據大小總和int64_t duration; // 隊列所有元素的數據播放持續時間int abort_request; // 用戶退出請求標志int serial; // 播放序列號,和MyAVPacketList的serial作用相同,但改變的時序稍微有點不同SDL_mutex *mutex; // 用于維持PacketQueue的多線程安全(SDL_mutex可以按pthread_mutex_t理解)SDL_cond *cond; // 用于讀、寫線程相互通知(SDL_cond可以按pthread_cond_t理解) } PacketQueue;
    1. packet_queue_init()
  • 初始化?于初始各個字段的值,并創建mutex和cond
  • /* packet queue handling */ static int packet_queue_init(PacketQueue *q){memset(q, 0, sizeof(PacketQueue));q->mutex = SDL_CreateMutex();if (!q->mutex) {av_log(NULL, AV_LOG_FATAL, "SDL_CreateMutex(): %s\n", SDL_GetError());return AVERROR(ENOMEM);}q->cond = SDL_CreateCond();if (!q->cond) {av_log(NULL, AV_LOG_FATAL, "SDL_CreateCond(): %s\n", SDL_GetError());return AVERROR(ENOMEM);}q->abort_request = 1;return 0; }
    2. packet_queue_destroy()
  • 相應的,packet_queue_destroy()銷毀過程負責清理mutex和cond:
  • static void packet_queue_destroy(PacketQueue *q){packet_queue_flush(q); //先清除所有的節點SDL_DestroyMutex(q->mutex);SDL_DestroyCond(q->cond); }
    3. packet_queue_start()
  • 啟動隊列
  • static void packet_queue_start(PacketQueue *q){SDL_LockMutex(q->mutex);q->abort_request = 0;packet_queue_put_private(q, &flush_pkt); //這里放入了一個flush_pktSDL_UnlockMutex(q->mutex); }
  • flush_pkt定義是 static AVPacket flush_pkt; ,是?個特殊的packet,主要?來作為?連續的兩端數據的“分界”標記:
  • 插? flush_pkt 觸發PacketQueue其對應的serial,加1操作
  • 觸發解碼器清空?身緩存 avcodec_flush_buffers(),以備新序列的數據進?新解碼
  • 4. packet_queue_abort()
  • 中?隊列:
  • static void packet_queue_abort(PacketQueue *q) {SDL_LockMutex(q->mutex);q->abort_request = 1; // 請求退出SDL_CondSignal(q->cond); //釋放一個條件信號SDL_UnlockMutex(q->mutex); }
    5. packet_queue_put()
  • 讀、寫是PacketQueue的主要?法。
  • 先看寫——往隊列中放??個節點:
  • static int packet_queue_put(PacketQueue *q, AVPacket *pkt) {int ret;SDL_LockMutex(q->mutex);ret = packet_queue_put_private(q, pkt);//主要實現SDL_UnlockMutex(q->mutex);if (pkt != &flush_pkt && ret < 0)av_packet_unref(pkt); //放入失敗,釋放AVPacketreturn ret; }
  • 主要實現在函數 packet_queue_put_private ,這?需要注意的是如果插?失敗,則需要釋放AVPacket。
  • 我們再分析packet_queue_put_private:
  • static int packet_queue_put_private(PacketQueue *q, AVPacket *pkt) {MyAVPacketList *pkt1;if (q->abort_request) //如果已中止,則放入失敗return -1;pkt1 = av_malloc(sizeof(MyAVPacketList)); //分配節點內存if (!pkt1) //內存不足,則放入失敗return -1;// 沒有做引用計數,那這里也說明av_read_frame不會釋放替用戶釋放buffer。pkt1->pkt = *pkt; //拷貝AVPacket(淺拷貝,AVPacket.data等內存并沒有拷貝)pkt1->next = NULL;if (pkt == &flush_pkt)//如果放入的是flush_pkt,需要增加隊列的播放序列號,以區分不連續的兩段數據{q->serial++;printf("q->serial = %d\n", q->serial);}pkt1->serial = q->serial; //用隊列序列號標記節點/* 隊列操作:如果last_pkt為空,說明隊列是空的,新增節點為隊頭;* 否則,隊列有數據,則讓原隊尾的next為新增節點。 最后將隊尾指向新增節點*/if (!q->last_pkt)q->first_pkt = pkt1;elseq->last_pkt->next = pkt1;q->last_pkt = pkt1;//隊列屬性操作:增加節點數、cache大小、cache總時長, 用來控制隊列的大小q->nb_packets++;q->size += pkt1->pkt.size + sizeof(*pkt1);q->duration += pkt1->pkt.duration;/* XXX: should duplicate packet data in DV case *///發出信號,表明當前隊列中有數據了,通知等待中的讀線程可以取數據了SDL_CondSignal(q->cond);return 0; }
  • 對于packet_queue_put_private主要完成3件事:
  • 計算serial。serial標記了這個節點內的數據是何時的。?般情況下新增節點與上?個節點的serial是?樣的,但當隊列中加??個flush_pkt后,后續節點的serial會?之前?1,?來區別不同播放序列的packet.
  • 節點?隊列操作。
  • 隊列屬性操作。更新隊列中節點的數?、占?字節數(含AVPacket.data的??)及其時?。主要?來控制Packet隊列的??,我們PacketQueue鏈表式的隊列,在內存充?的條件下我們可以?限put?packet,如果我們要控制隊列??,則需要通過其變量size、duration、nb_packets三者單?或者綜合去約束隊列的節點的數量,具體在read_thread進?分析。
  • 6. packet_queue_get()
  • 從隊列中取?個節點:
  • /* return < 0 if aborted, 0 if no packet and > 0 if packet. */ /*** @brief packet_queue_get* @param q 隊列* @param pkt 輸出參數,即MyAVPacketList.pkt* @param block 調用者是否需要在沒節點可取的情況下阻塞等待* @param serial 輸出參數,即MyAVPacketList.serial* @return <0: aborted; =0: no packet; >0: has packet*/ static int packet_queue_get(PacketQueue *q, AVPacket *pkt, int block, int *serial) {MyAVPacketList *pkt1;int ret;SDL_LockMutex(q->mutex); // 加鎖for (;;) {if (q->abort_request) {ret = -1;break;}pkt1 = q->first_pkt; //MyAVPacketList *pkt1; 從隊頭拿數據if (pkt1) { //隊列中有數據q->first_pkt = pkt1->next; //隊頭移到第二個節點if (!q->first_pkt)q->last_pkt = NULL;q->nb_packets--; //節點數減1q->size -= pkt1->pkt.size + sizeof(*pkt1); //cache大小扣除一個節點q->duration -= pkt1->pkt.duration; //總時長扣除一個節點//返回AVPacket,這里發生一次AVPacket結構體拷貝,AVPacket的data只拷貝了指針*pkt = pkt1->pkt;if (serial) //如果需要輸出serial,把serial輸出*serial = pkt1->serial;av_free(pkt1); //釋放節點內存,只是釋放節點,而不是釋放AVPacketret = 1;break;} else if (!block) { //隊列中沒有數據,且非阻塞調用ret = 0;break;} else { //隊列中沒有數據,且阻塞調用//這里沒有break。for循環的另一個作用是在條件變量滿足后重復上述代碼取出節點SDL_CondWait(q->cond, q->mutex);}}SDL_UnlockMutex(q->mutex); // 釋放鎖return ret; }
    7. packet_queue_put_nullpacket()
  • 放?“空包”(nullpacket)。放?空包意味著流的結束,?般在媒體數據讀取完成的時候放?空包。放?空包,?的是為了沖刷解碼器,將編碼器??所有frame都讀取出來:
  • static int packet_queue_put_nullpacket(PacketQueue *q, int stream_index) {AVPacket pkt1, *pkt = &pkt1;av_init_packet(pkt);pkt->data = NULL;pkt->size = 0;pkt->stream_index = stream_index;return packet_queue_put(q, pkt); }
    8. packet_queue_flush()
  • packet_queue_flush?于將packet隊列中的所有節點清除,包括節點對應的AVPacket。?如?于退出播放和seek播放:
  • 退出播放,則要清空packet queue的節點
  • seek播放,要清空seek之前緩存的節點數據,以便插?新節點數據
  • static void packet_queue_flush(PacketQueue *q) {MyAVPacketList *pkt, *pkt1;SDL_LockMutex(q->mutex);for (pkt = q->first_pkt; pkt; pkt = pkt1) {pkt1 = pkt->next;av_packet_unref(&pkt->pkt);av_freep(&pkt);}q->last_pkt = NULL;q->first_pkt = NULL;q->nb_packets = 0;q->size = 0;q->duration = 0;SDL_UnlockMutex(q->mutex); }
    9. PacketQueue總結
  • 前?我們分析了PacketQueue的實現和主要的操作?法,現在總結下兩個關鍵的點:
  • 1. PacketQueue的內存管理

  • MyAVPacketList的內存是完全由PacketQueue維護的,在put的時候malloc,在get的時候free。
  • AVPacket分兩塊:
  • ?部分是AVPacket結構體的內存,這部分從MyAVPacketList的定義可以看出是和MyAVPacketList共存亡的。
  • 另?部分是AVPacket字段指向的內存,這部分?般通過 av_packet_unref 函數釋放。?般情況下,是在get后由調?者負責? av_packet_unref 函數釋放。特殊的情況是當碰到packet_queue_flush 或put失敗時,這時需要隊列??處理。
  • 2. serial的變化過程:

  • 如上圖所示,左邊是隊頭,右邊是隊尾,從左往右標注了4個節點的serial,以及放?對應節點時queue的serial。
  • 可以看到放?flush_pkt的時候后,serial增加了1.
  • 假設,現在要從隊頭取出?個節點,那么取出的節點是serial 1,?PacketQueue?身的queue已經增?到了2
  • 3. PacketQueue設計思路:
  • 設計?個多線程安全的隊列,保存AVPacket,同時統計隊列內已緩存的數據??。(這個統計數據會?來后續設置要緩存的數據量)
  • 引?serial的概念,區別前后數據包是否連續,主要應?于seek操作
  • 設計了兩類特殊的packet——flush_pkt和nullpkt(類似?于多線程編程的事件模型——往隊列中放?flush事件、放?null事件),我們在?頻輸出、視頻輸出、播放控制等模塊時也會繼續對flush_pkt和nullpkt的作?展開分析。
  • 4. struct Frame 和 FrameQueue隊列

    1. Frame
    /* Common struct for handling all types of decoded data and allocated render buffers. */ // 用于緩存解碼后的數據 typedef struct Frame {AVFrame *frame; // 指向數據幀AVSubtitle sub; // 用于字幕int serial; // 幀序列,在seek的操作時serial會變化double pts; // 時間戳,單位為秒double duration; // 該幀持續時間,單位為秒int64_t pos; // 該幀在輸入文件中的字節位置int width; // 圖像寬度int height; // 圖像高讀int format; // 對于圖像為(enum AVPixelFormat),// 對于聲音則為(enum AVSampleFormat)AVRational sar; // 圖像的寬高比(16:9,4:3...),如果未知或未指定則為0/1int uploaded; // 用來記錄該幀是否已經顯示過?int flip_v; // =1則旋轉180, = 0則正常播放 } Frame;
  • 真正存儲解碼后?視頻數據的結構體為AVFrame ,存儲字幕則使?AVSubtitle,該Frame的設計是為了?頻、視頻、字幕幀通?,所以Frame結構體的設計類似AVFrame,部分成員變量只對不同類型有作?,?如sar只對視頻有作?。
  • ??也包含了serial播放序列(每次seek時都切換serial),sar(圖像的寬??(16:9,4:3…),該值來?AVFrame結構體的sample_aspect_ratio變量)。
  • 2. FrameQueue
    /* 這是一個循環隊列,windex是指其中的首元素,rindex是指其中的尾部元素. */ typedef struct FrameQueue {Frame queue[FRAME_QUEUE_SIZE]; // FRAME_QUEUE_SIZE 最大size, 數字太大時會占用大量的內存,需要注意該值的設置int rindex; // 讀索引。待播放時讀取此幀進行播放,播放后此幀成為上一幀int windex; // 寫索引int size; // 當前總幀數int max_size; // 可存儲最大幀數int keep_last; // = 1說明要在隊列里面保持最后一幀的數據不釋放,只在銷毀隊列的時候才將其真正釋放int rindex_shown; // 初始化為0,配合keep_last=1使用SDL_mutex *mutex; // 互斥量SDL_cond *cond; // 條件變量PacketQueue *pktq; // 數據包緩沖隊列 } FrameQueue;
  • FrameQueue是?個環形緩沖區(ring buffer),是?數組實現的?個FIFO。數組?式的環形緩沖區適合于事先明確了緩沖區的最?容量的情形。
  • ffplay中創建了三個frame_queue:?頻frame_queue,視頻frame_queue,字幕frame_queue。每?個frame_queue?個寫端?個讀端,寫端位于解碼線程,讀端位于播放線程。
  • FrameQueue的設計?如PacketQueue復雜,引?了讀取節點但節點不出隊列的操作、讀取下?節點也不出隊列等等的操作,FrameQueue操作提供以下?法:
  • frame_queue_unref_item:釋放Frame??的AVFrame和 AVSubtitle
  • frame_queue_init:初始化隊列
  • frame_queue_destory:銷毀隊列
  • frame_queue_signal:發送喚醒信號
  • frame_queue_peek:獲取當前Frame,調?之前先調?frame_queue_nb_remaining確保有frame可讀
  • frame_queue_peek_next:獲取當前Frame的下?Frame,調?之前先調?
  • frame_queue_nb_remaining確保?少有2 Frame在隊列
  • frame_queue_peek_last:獲取上?Frame
  • frame_queue_peek_writable:獲取?個可寫Frame,可以以阻塞或?阻塞?式進?
  • frame_queue_peek_readable:獲取?個可讀Frame,可以以阻塞或?阻塞?式進?
  • frame_queue_push:更新寫索引,此時Frame才真正?隊列,隊列節點Frame個數加1
  • frame_queue_next:更新讀索引,此時Frame才真正出隊列,隊列節點Frame個數減1,內部調?
  • frame_queue_unref_item是否對應的AVFrame和AVSubtitle
  • frame_queue_nb_remaining:獲取隊列Frame節點個數
  • frame_queue_last_pos:獲取最近播放Frame對應數據在媒體?件的位置,主要在seek時使?
  • 1. frame_queue_init() 初始化
    /* 初始化FrameQueue,視頻和音頻keep_last設置為1,字幕設置為0 */ static int frame_queue_init(FrameQueue *f, PacketQueue *pktq, int max_size, int keep_last) {int i;memset(f, 0, sizeof(FrameQueue));if (!(f->mutex = SDL_CreateMutex())) {av_log(NULL, AV_LOG_FATAL, "SDL_CreateMutex(): %s\n", SDL_GetError());return AVERROR(ENOMEM);}if (!(f->cond = SDL_CreateCond())) {av_log(NULL, AV_LOG_FATAL, "SDL_CreateCond(): %s\n", SDL_GetError());return AVERROR(ENOMEM);}f->pktq = pktq;f->max_size = FFMIN(max_size, FRAME_QUEUE_SIZE);f->keep_last = !!keep_last;for (i = 0; i < f->max_size; i++)if (!(f->queue[i].frame = av_frame_alloc())) // 分配AVFrame結構體return AVERROR(ENOMEM);return 0; }
  • 隊列初始化函數確定了隊列??,將為隊列中每?個節點的frame( f->queue[i].frame )分配內存,注意只是分配Frame對象本身,?不關注Frame中的數據緩沖區。Frame中的數據緩沖區是AVBuffer,使?引?計數機制。
  • f->max_size 是隊列的??,此處值為16(由FRAME_QUEUE_SIZE定義),實際分配的時候視頻為3,?頻為9,字幕為16,因為這?存儲的是解碼后的數據,不宜設置過?,?如視頻當為1080p時,如果為YUV420p格式,?幀就有3110400字節。
  • #define VIDEO_PICTURE_QUEUE_SIZE 3 // 圖像幀緩存數量 #define SUBPICTURE_QUEUE_SIZE 16 // 字幕幀緩存數量 #define SAMPLE_QUEUE_SIZE 9 // 采樣幀緩存數量 #define FRAME_QUEUE_SIZE FFMAX(SAMPLE_QUEUE_SIZE,FFMAX(VIDEO_PICTURE_QUEUE_SIZE, SUBPICTURE_QUEUE_SIZE))
  • f->keep_last 是隊列中是否保留最后?次播放的幀的標志。 f->keep_last = !!keep_last 是將int取值的keep_last轉換為boot取值(0或1)。
  • 2. frame_queue_destory()銷毀
    static void frame_queue_destory(FrameQueue *f) {int i;for (i = 0; i < f->max_size; i++) {Frame *vp = &f->queue[i];// 釋放對vp->frame中的數據緩沖區的引用,注意不是釋放frame對象本身frame_queue_unref_item(vp);// 釋放vp->frame對象av_frame_free(&vp->frame);}SDL_DestroyMutex(f->mutex);SDL_DestroyCond(f->cond); }
  • 隊列銷毀函數對隊列中的每個節點作了如下處理:
  • frame_queue_unref_item(vp) 釋放本隊列對vp->frame中AVBuffer的引?
  • av_frame_free(&vp->frame) 釋放vp->frame對象本身
  • 3. frame_queue_peek_writable()獲取可寫Frame
    // 獲取可寫指針 static Frame *frame_queue_peek_writable(FrameQueue *f) {/* wait until we have space to put a new frame */SDL_LockMutex(f->mutex);while (f->size >= f->max_size &&!f->pktq->abort_request) { /* 檢查是否需要退出 */SDL_CondWait(f->cond, f->mutex);}SDL_UnlockMutex(f->mutex);if (f->pktq->abort_request) /* 檢查是不是要退出 */return NULL;return &f->queue[f->windex]; }
    4. frame_queue_push()?隊列
    // 更新寫指針 static void frame_queue_push(FrameQueue *f) {if (++f->windex == f->max_size)f->windex = 0;SDL_LockMutex(f->mutex);f->size++;SDL_CondSignal(f->cond); // 當_readable在等待時則可以喚醒SDL_UnlockMutex(f->mutex); }
  • FrameQueue寫隊列的步驟和PacketQueue不同,分了3步進?:
  • 調?frame_queue_peek_writable獲取可寫的Frame,如果隊列已滿則等待
  • 獲取到Frame后,設置Frame的成員變量
  • 再調?frame_queue_push更新隊列的寫索引,真正將Frame?隊列
  • Frame *frame_queue_peek_writable(FrameQueue *f); // 獲取可寫幀 void frame_queue_push(FrameQueue *f); // 更新寫索引
  • 通過實例看?下寫隊列的?法:
  • static int queue_picture(VideoState *is, AVFrame *src_frame, double pts,double duration, int64_t pos, int serial) {Frame *vp;#if defined(DEBUG_SYNC)printf("frame_type=%c pts=%0.3f\n",av_get_picture_type_char(src_frame->pict_type), pts); #endifif (!(vp = frame_queue_peek_writable(&is->pictq))) // 檢測隊列是否有可寫空間return -1; // Frame隊列滿了則返回-1// 執行到這步說已經獲取到了可寫入的Framevp->sar = src_frame->sample_aspect_ratio;vp->uploaded = 0;vp->width = src_frame->width;vp->height = src_frame->height;vp->format = src_frame->format;vp->pts = pts;vp->duration = duration;vp->pos = pos;vp->serial = serial;set_default_window_size(vp->width, vp->height, vp->sar);av_frame_move_ref(vp->frame, src_frame); // 將src中所有數據拷貝到dst中,并復位src。frame_queue_push(&is->pictq); // 更新寫索引位置return 0; }
  • 上??段代碼是視頻解碼線程向視頻frame_queue中寫??幀的代碼,步驟如下:
  • frame_queue_peek_writable(&is->pictq) 向隊列尾部申請?個可寫的幀空間,若隊列已滿?空間可寫,則等待(由SDL_cond *cond控制,由frame_queue_next或frame_queue_signal觸發喚醒)
  • av_frame_move_ref(vp->frame, src_frame) 將src_frame中所有數據拷?到vp->frame并復位src_frame,vp->frame中AVBuffer使?引?計數機制,不會執?AVBuffer的拷?動作,僅是修改指針指向值。為避免內存泄漏,在av_frame_move_ref(dst, src) 之前應先調? av_frame_unref(dst) ,這?沒有調?,是因為frame_queue在刪除?個節點時,已經釋放了frame及frame中的AVBuffer。
  • frame_queue_push(&is->pictq) 此步僅將frame_queue中的寫索引加1,實際的數據寫?在此步之前已經完成
  • 5. frame_queue_peek_writable() 獲取可寫Frame指針
    // 獲取可寫指針 static Frame *frame_queue_peek_writable(FrameQueue *f) {/* wait until we have space to put a new frame */SDL_LockMutex(f->mutex);while (f->size >= f->max_size &&!f->pktq->abort_request) { /* 檢查是否需要退出 */SDL_CondWait(f->cond, f->mutex);}SDL_UnlockMutex(f->mutex);if (f->pktq->abort_request) /* 檢查是不是要退出 */return NULL;return &f->queue[f->windex]; }
  • 向隊列尾部申請?個可寫的幀空間,若?空間可寫,則等待。
  • 這?最需要體會到的是abort_request的使?,在等待時如果播放器需要退出則將abort_request = 1,那frame_queue_peek_writable函數可以知道是正常frame可寫喚醒,還是其他喚醒。
  • 6. frame_queue_peek_readable() 獲取可讀Fram
    static Frame *frame_queue_peek_readable(FrameQueue *f) {/* wait until we have a readable a new frame */SDL_LockMutex(f->mutex);while (f->size - f->rindex_shown <= 0 &&!f->pktq->abort_request) {SDL_CondWait(f->cond, f->mutex);}SDL_UnlockMutex(f->mutex);if (f->pktq->abort_request)return NULL;return &f->queue[(f->rindex + f->rindex_shown) % f->max_size]; }
    7. frame_queue_next()出隊列
  • 寫隊列中,應?程序寫??個新幀后通常總是將寫索引加1。?讀隊列中,“讀取”和“更新讀索引(同時刪除舊幀)”?者是獨?的,可以只讀取?不更新讀索引,也可以只更新讀索引(只刪除)?不讀取(只有更新讀索引的時候才真正釋放對應的Frame數據)。?且讀隊列引?了是否保留已顯示的最后?幀的機制,導致讀隊列?寫隊列要復雜很多。
  • 讀隊列和寫隊列步驟是類似的,基本步驟如下:
  • 調?frame_queue_peek_readable獲取可讀Frame;
  • 如果需要更新讀索引(出隊列該節點)則調?frame_queue_peek_next;
  • 讀隊列涉及如下函數
  • Frame *frame_queue_peek_readable(FrameQueue *f); // 獲取可讀Frame指針(若讀空則等待) Frame *frame_queue_peek(FrameQueue *f); // 獲取當前Frame指針 Frame *frame_queue_peek_next(FrameQueue *f); // 獲取下?Frame指針 Frame *frame_queue_peek_last(FrameQueue *f); // 獲取上?Frame指針 void frame_queue_next(FrameQueue *f); // 更新讀索引(同時刪除舊frame)
  • 通過實例看?下讀隊列的?法:
  • if (frame_queue_nb_remaining(&is->pictq) == 0) {// 所有幀已顯示// nothing to do, no picture to display in the queue// 什么都不做,隊列中沒有圖像可顯示} else {double last_duration, duration, delay;Frame *vp, *lastvp;/* dequeue the picture */// 從隊列取出上一個Framelastvp = frame_queue_peek_last(&is->pictq);// 上一幀:上次在顯示的幀vp = frame_queue_peek(&is->pictq); // 讀取待顯示的幀// lastvp 上一幀(正在顯示的幀)// vp 等待顯示的幀if (vp->serial != is->videoq.serial) {// 如果不是最新的播放序列,則將其從隊列,以盡快讀取最新的播放序列的Frameframe_queue_next(&is->pictq);goto retry;}.......
  • 上??段代碼是視頻播放線程從視頻frame_queue中讀取視頻幀進?顯示的基本步驟,其他代碼已省略,只保留了讀隊列部分。
  • 記lastvp為上?次已播放的幀,vp為本次待播放的幀,下圖中?框中的數字表示顯示序列中幀的序號:
  • 在啟?keep_last機制后,rindex_shown值總是為1,rindex_shown確保了最后播放的?幀總保留在隊列中。
  • 假設某次進? video_refresh() 的時刻為T0,下次進?的時刻為T1。在T0時刻,讀隊列的步驟如下:
  • rindex表示上?次播放的幀lastvp,本次調? video_refresh() 中,lastvp會被刪除,rindex會加1,即是當調?frame_queue_next刪除的是lastvp,?不是當前的vp,當前的vp轉為lastvp。
  • rindex+rindex_shown表示本次待播放的幀vp,本次調? video_refresh() 中,vp會被讀出播放圖中已播放的幀是灰??框,本次待播放的幀是紅??框,其他未播放的幀是綠??框,隊列中空位置為???框。
  • rindex+rindex_shown+1表示下?幀nextvp
  • 8. frame_queue_nb_remaining()獲取隊列的size
    /* return the number of undisplayed frames in the queue */ static int frame_queue_nb_remaining(FrameQueue *f) {return f->size - f->rindex_shown; // 注意這里為什么要減去f->rindex_shown }
  • rindex_shown為1時,隊列中總是保留了最后?幀lastvp(灰??框)。需要注意的時候rindex_shown的值就是0或1,不存在變為2,3等的可能。在計算隊列當前Frame數量是不包含lastvp
  • rindex_shown的引?增加了讀隊列操作的理解難度。?多數讀操作函數都會?到這個變量。
  • 通過 FrameQueue.keep_last 和 FrameQueue.rindex_shown 兩個變量實現了保留最后?次播放幀的機制。
  • 是否啟?keep_last機制是由全局變量 keep_last 值決定的,在隊列初始化函數frame_queue_init() 中有 f->keep_last = !!keep_last; ,?在更新讀指針函數frame_queue_next() 中如果啟?keep_last機制,則 f->rindex_shown 值為1。
  • 我們具體分析下 frame_queue_next() 函數:
  • /* 釋放當前frame,并更新讀索引rindex,* 當keep_last為1, rindex_show為0時不去更新rindex,也不釋放當前frame */ static void frame_queue_next(FrameQueue *f) {if (f->keep_last && !f->rindex_shown) {f->rindex_shown = 1; // 第一次進來沒有更新,對應的frame就沒有釋放return;}frame_queue_unref_item(&f->queue[f->rindex]);if (++f->rindex == f->max_size)f->rindex = 0;SDL_LockMutex(f->mutex);f->size--;SDL_CondSignal(f->cond);SDL_UnlockMutex(f->mutex); }
  • 主要步驟:

  • 在啟?keeplast時,如果rindex_shown為0則將其設置為1,并返回。此時并不會更新讀索引。也就是說keeplast機制實質上也會占?著隊列Frame的size,當調?frame_queue_nb_remaining()獲取size時并不能將其計算?size;
  • 釋放Frame對應的數據(?如AVFrame的數據),但不釋放Frame本身更新讀索引
  • 釋放喚醒信號,以喚醒正在等待寫?的線程。
  • frame_queue_peek_readable()的具體實現

  • static Frame *frame_queue_peek_readable(FrameQueue *f) {/* wait until we have a readable a new frame */SDL_LockMutex(f->mutex);while (f->size - f->rindex_shown <= 0 &&!f->pktq->abort_request) {SDL_CondWait(f->cond, f->mutex);}SDL_UnlockMutex(f->mutex);if (f->pktq->abort_request)return NULL;return &f->queue[(f->rindex + f->rindex_shown) % f->max_size]; }
  • 從隊列頭部讀取?幀(vp),只讀取不刪除,若?幀可讀則等待。這個函數和 frame_queue_peek() 的區別僅僅是多了不可讀時等待的操作。
  • 9. frame_queue_peek()獲取當前幀
    /* 獲取隊列當前Frame, 在調用該函數前先調用frame_queue_nb_remaining確保有frame可讀 */ static Frame *frame_queue_peek(FrameQueue *f) {return &f->queue[(f->rindex + f->rindex_shown) % f->max_size]; }
    10. frame_queue_peek_next()獲取下?幀
    /* 獲取當前Frame的下一Frame, 此時要確保queue里面至少有2個Frame */ // 不管你什么時候調用,返回來肯定不是 NULL static Frame *frame_queue_peek_next(FrameQueue *f) {return &f->queue[(f->rindex + f->rindex_shown + 1) % f->max_size]; }
    11. frame_queue_peek_last()獲取上?幀
    /* 獲取last Frame:* 當rindex_shown=0時,和frame_queue_peek效果一樣* 當rindex_shown=1時,讀取的是已經顯示過的frame*/ static Frame *frame_queue_peek_last(FrameQueue *f) {return &f->queue[f->rindex]; // 這時候才有意義 }

    5. struct AudioParams ?頻參數

    typedef struct AudioParams {int freq; // 采樣率int channels; // 通道數int64_t channel_layout; // 通道布局,比如2.1聲道,5.1聲道等enum AVSampleFormat fmt; // 音頻采樣格式,比如AV_SAMPLE_FMT_S16表示為有符號16bit深度,交錯排列模式。int frame_size; // 一個采樣單元占用的字節數(比如2通道時,則左右通道各采樣一次合成一個采樣單元)int bytes_per_sec; // 一秒時間的字節數,比如采樣率48Khz,2 channel,16bit,則一秒48000*2*16/8=192000 } AudioParams;

    6. struct Decoder解碼器封裝

    /*** 解碼器封裝*/ typedef struct Decoder {AVPacket pkt;PacketQueue *queue; // 數據包隊列AVCodecContext *avctx; // 解碼器上下文int pkt_serial; // 包序列int finished; // =0,解碼器處于工作狀態;=非0,解碼器處于空閑狀態int packet_pending; // =0,解碼器處于異常狀態,需要考慮重置解碼器;=1,解碼器處于正常狀態SDL_cond *empty_queue_cond; // 檢查到packet隊列空時發送 signal緩存read_thread讀取數據int64_t start_pts; // 初始化時是stream的start timeAVRational start_pts_tb; // 初始化時是stream的time_baseint64_t next_pts; // 記錄最近一次解碼后的frame的pts,當解出來的部分幀沒有有效的pts時則使用next_pts進行推算AVRational next_pts_tb; // next_pts的單位SDL_Thread *decoder_tid; // 線程句柄 } Decoder;

    總結

    以上是生活随笔為你收集整理的ffplay.c学习-1-框架及数据结构的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    免费观看黄网站 | 中文字幕无码免费久久99 | 国产人成高清在线视频99最全资源 | 国产成人综合美国十次 | 日本www一道久久久免费榴莲 | 日日摸夜夜摸狠狠摸婷婷 | 国产无套粉嫩白浆在线 | 亚洲日韩av一区二区三区中文 | 无码国产乱人伦偷精品视频 | 久久精品国产大片免费观看 | 久久精品国产99久久6动漫 | 亚洲另类伦春色综合小说 | 极品尤物被啪到呻吟喷水 | 东京无码熟妇人妻av在线网址 | 国产精品第一国产精品 | 97夜夜澡人人爽人人喊中国片 | 国产无套内射久久久国产 | 99精品视频在线观看免费 | 亚洲综合在线一区二区三区 | 欧美国产日韩久久mv | 亚洲 欧美 激情 小说 另类 | 亚洲精品午夜国产va久久成人 | www成人国产高清内射 | 人妻互换免费中文字幕 | 亚洲狠狠色丁香婷婷综合 | 久久久久免费看成人影片 | 天天做天天爱天天爽综合网 | 中文字幕av日韩精品一区二区 | 久久www免费人成人片 | 福利一区二区三区视频在线观看 | 麻豆成人精品国产免费 | 成人亚洲精品久久久久 | 亚洲自偷精品视频自拍 | 丰腴饱满的极品熟妇 | 亚洲中文字幕无码一久久区 | 欧美喷潮久久久xxxxx | 激情内射亚州一区二区三区爱妻 | 鲁大师影院在线观看 | 无码av最新清无码专区吞精 | 久久亚洲a片com人成 | 国产真实乱对白精彩久久 | 亚洲精品一区二区三区在线 | 国产成人精品必看 | 99久久精品国产一区二区蜜芽 | 国产无遮挡又黄又爽免费视频 | 欧美 日韩 人妻 高清 中文 | 亚洲啪av永久无码精品放毛片 | 国产特级毛片aaaaaa高潮流水 | 国产特级毛片aaaaaa高潮流水 | 动漫av网站免费观看 | 中文字幕日韩精品一区二区三区 | 日欧一片内射va在线影院 | 红桃av一区二区三区在线无码av | 国产乱人伦av在线无码 | 美女扒开屁股让男人桶 | 免费无码一区二区三区蜜桃大 | 国产一区二区三区四区五区加勒比 | 99精品无人区乱码1区2区3区 | 一本久道久久综合婷婷五月 | 亚洲精品午夜国产va久久成人 | 少妇久久久久久人妻无码 | 无码播放一区二区三区 | 国产片av国语在线观看 | v一区无码内射国产 | 欧美黑人乱大交 | 丰满妇女强制高潮18xxxx | 精品偷拍一区二区三区在线看 | 亚洲成a人一区二区三区 | 久久国内精品自在自线 | 精品国产成人一区二区三区 | 理论片87福利理论电影 | 麻豆精品国产精华精华液好用吗 | 成人一区二区免费视频 | 日日躁夜夜躁狠狠躁 | 狠狠色色综合网站 | 国产成人无码a区在线观看视频app | 亚洲综合无码一区二区三区 | 久久精品中文字幕大胸 | 国产精品无码一区二区桃花视频 | 人妻与老人中文字幕 | 久久婷婷五月综合色国产香蕉 | 理论片87福利理论电影 | 国产精品第一国产精品 | 欧美性黑人极品hd | 欧美xxxx黑人又粗又长 | 亚洲一区二区三区 | 亚洲中文字幕va福利 | 免费乱码人妻系列无码专区 | 一本一道久久综合久久 | 水蜜桃亚洲一二三四在线 | 欧洲熟妇色 欧美 | 一本加勒比波多野结衣 | 国产午夜手机精彩视频 | 精品国产aⅴ无码一区二区 | 久久精品视频在线看15 | 精品国产麻豆免费人成网站 | 亚洲国产精品一区二区美利坚 | 一二三四在线观看免费视频 | 性史性农村dvd毛片 | 51国偷自产一区二区三区 | 欧洲美熟女乱又伦 | 荫蒂被男人添的好舒服爽免费视频 | 精品成在人线av无码免费看 | 国产色xx群视频射精 | 色窝窝无码一区二区三区色欲 | 婷婷丁香六月激情综合啪 | 永久免费精品精品永久-夜色 | 亚洲国产综合无码一区 | 欧美日韩久久久精品a片 | av人摸人人人澡人人超碰下载 | 男人扒开女人内裤强吻桶进去 | 欧美色就是色 | 国产偷国产偷精品高清尤物 | 在线а√天堂中文官网 | 亚洲欧美色中文字幕在线 | 大肉大捧一进一出好爽视频 | 无码人妻精品一区二区三区不卡 | 国产午夜亚洲精品不卡下载 | 亚洲国产一区二区三区在线观看 | 国产成人人人97超碰超爽8 | 亚洲欧美色中文字幕在线 | 性史性农村dvd毛片 | 国产精品对白交换视频 | 两性色午夜视频免费播放 | 精品国产一区二区三区av 性色 | 麻豆国产人妻欲求不满谁演的 | 网友自拍区视频精品 | 久久久精品欧美一区二区免费 | 久久久久久久久888 | 国产av无码专区亚洲awww | 久久亚洲a片com人成 | 老太婆性杂交欧美肥老太 | 日本护士xxxxhd少妇 | 99国产欧美久久久精品 | 久久国产精品精品国产色婷婷 | 欧美性猛交xxxx富婆 | 国产人妻人伦精品1国产丝袜 | 人人妻人人澡人人爽精品欧美 | 亚洲国产综合无码一区 | 国产成人久久精品流白浆 | 丰满岳乱妇在线观看中字无码 | 亚洲区欧美区综合区自拍区 | 少妇激情av一区二区 | 在线精品国产一区二区三区 | av在线亚洲欧洲日产一区二区 | 日本熟妇乱子伦xxxx | 国产精品久久久久久久影院 | 99久久久无码国产精品免费 | 国产av人人夜夜澡人人爽麻豆 | 人人妻人人澡人人爽欧美一区九九 | 婷婷综合久久中文字幕蜜桃三电影 | 国产精品高潮呻吟av久久 | 亚洲成a人片在线观看无码 | 国产色精品久久人妻 | 色综合久久久无码中文字幕 | 国产深夜福利视频在线 | 精品无码一区二区三区的天堂 | 日韩无码专区 | 日韩精品无码一本二本三本色 | 亚洲毛片av日韩av无码 | 88国产精品欧美一区二区三区 | 久久视频在线观看精品 | 好男人社区资源 | 久久亚洲中文字幕无码 | 亚洲va欧美va天堂v国产综合 | 性生交大片免费看l | 最新国产麻豆aⅴ精品无码 | 国产国产精品人在线视 | 377p欧洲日本亚洲大胆 | 日韩精品a片一区二区三区妖精 | 亚洲成av人综合在线观看 | 久久亚洲精品成人无码 | 亚洲gv猛男gv无码男同 | 国产精品无码一区二区三区不卡 | 无码吃奶揉捏奶头高潮视频 | 国产又爽又黄又刺激的视频 | 精品人人妻人人澡人人爽人人 | 精品欧美一区二区三区久久久 | 日本丰满熟妇videos | a片在线免费观看 | 亚洲中文字幕av在天堂 | 67194成是人免费无码 | 久久久精品欧美一区二区免费 | 未满小14洗澡无码视频网站 | 中文字幕无码乱人伦 | 一本久久a久久精品亚洲 | 欧美阿v高清资源不卡在线播放 | 国产suv精品一区二区五 | 久久午夜夜伦鲁鲁片无码免费 | 国产精品亚洲а∨无码播放麻豆 | 日韩成人一区二区三区在线观看 | 永久免费精品精品永久-夜色 | 女高中生第一次破苞av | 国产亚洲欧美在线专区 | 久久久国产精品无码免费专区 | 中文字幕无码av激情不卡 | 亚洲一区二区三区在线观看网站 | 无码吃奶揉捏奶头高潮视频 | 国产偷抇久久精品a片69 | 在线成人www免费观看视频 | 国产疯狂伦交大片 | 四虎影视成人永久免费观看视频 | 国产av人人夜夜澡人人爽麻豆 | 精品一区二区三区波多野结衣 | 国产成人无码av一区二区 | 色欲综合久久中文字幕网 | 九九久久精品国产免费看小说 | 国内综合精品午夜久久资源 | 国产超级va在线观看视频 | 久久久中文久久久无码 | 大色综合色综合网站 | 亚洲无人区午夜福利码高清完整版 | 欧美日韩在线亚洲综合国产人 | 国产色精品久久人妻 | 狠狠色噜噜狠狠狠狠7777米奇 | 日韩人妻系列无码专区 | 又大又硬又黄的免费视频 | 人妻插b视频一区二区三区 | 亚洲娇小与黑人巨大交 | 又大又硬又黄的免费视频 | 国产成人精品一区二区在线小狼 | 麻豆国产丝袜白领秘书在线观看 | 成人三级无码视频在线观看 | 中文字幕无码av波多野吉衣 | 国产精品久久福利网站 | 国产真实伦对白全集 | 国产精品久久久久久久9999 | 少妇一晚三次一区二区三区 | 无码播放一区二区三区 | 日本一卡2卡3卡四卡精品网站 | 免费观看激色视频网站 | 国产成人无码午夜视频在线观看 | 精品国产av色一区二区深夜久久 | 国产精品嫩草久久久久 | а√天堂www在线天堂小说 | 大肉大捧一进一出好爽视频 | 国产农村乱对白刺激视频 | 玩弄少妇高潮ⅹxxxyw | 97久久精品无码一区二区 | 兔费看少妇性l交大片免费 | 国产精品无码永久免费888 | 国内揄拍国内精品少妇国语 | 精品国产国产综合精品 | 婷婷五月综合激情中文字幕 | 99riav国产精品视频 | 久久国内精品自在自线 | 国产精品成人av在线观看 | 国内精品久久久久久中文字幕 | 久久国内精品自在自线 | 婷婷丁香六月激情综合啪 | 国产网红无码精品视频 | 日日夜夜撸啊撸 | 无码帝国www无码专区色综合 | 女人高潮内射99精品 | 国产成人综合色在线观看网站 | 性色av无码免费一区二区三区 | 国产一精品一av一免费 | 国产一区二区三区影院 | 99久久久无码国产aaa精品 | 国产一区二区三区日韩精品 | 精品日本一区二区三区在线观看 | 久久99精品国产麻豆蜜芽 | 亚洲色成人中文字幕网站 | a在线亚洲男人的天堂 | 精品久久久久香蕉网 | 国产成人精品优优av | 亚洲乱码中文字幕在线 | 国产熟妇高潮叫床视频播放 | 亚洲熟妇色xxxxx亚洲 | 亚洲色偷偷偷综合网 | 亚洲中文字幕无码中文字在线 | 激情国产av做激情国产爱 | 88国产精品欧美一区二区三区 | 久久99精品久久久久久动态图 | 国产午夜手机精彩视频 | 波多野结衣av在线观看 | 伊人久久大香线蕉av一区二区 | 国产精品鲁鲁鲁 | 任你躁在线精品免费 | 国产片av国语在线观看 | 麻豆国产人妻欲求不满 | 免费无码的av片在线观看 | 亚洲狠狠色丁香婷婷综合 | 亚洲毛片av日韩av无码 | 男女超爽视频免费播放 | 久久99精品久久久久久动态图 | 免费人成网站视频在线观看 | 国产精品无码久久av | 十八禁真人啪啪免费网站 | 一本色道久久综合狠狠躁 | 人妻熟女一区 | 久久久无码中文字幕久... | 综合网日日天干夜夜久久 | 131美女爱做视频 | 99视频精品全部免费免费观看 | 成人精品视频一区二区三区尤物 | 狠狠cao日日穞夜夜穞av | 亚洲成av人综合在线观看 | 风流少妇按摩来高潮 | 天天摸天天碰天天添 | 亚洲一区二区三区无码久久 | 久久久精品人妻久久影视 | 亚洲色欲久久久综合网东京热 | 亚洲国产精品美女久久久久 | 国产97色在线 | 免 | 国产情侣作爱视频免费观看 | 色婷婷综合激情综在线播放 | 伊人久久大香线蕉亚洲 | 天堂亚洲免费视频 | 日韩成人一区二区三区在线观看 | 久久久久久九九精品久 | 97se亚洲精品一区 | 一区二区三区乱码在线 | 欧洲 | 色情久久久av熟女人妻网站 | 国产精品久久久久久亚洲影视内衣 | 欧美日韩一区二区三区自拍 | 国产日产欧产精品精品app | 99精品国产综合久久久久五月天 | 久久精品中文闷骚内射 | 国产婷婷色一区二区三区在线 | 天堂一区人妻无码 | 一个人看的www免费视频在线观看 | 免费无码一区二区三区蜜桃大 | 色婷婷综合激情综在线播放 | 狠狠综合久久久久综合网 | 欧美亚洲日韩国产人成在线播放 | 国产av一区二区三区最新精品 | 亚洲综合久久一区二区 | 精品熟女少妇av免费观看 | 久久综合狠狠综合久久综合88 | 久久久亚洲欧洲日产国码αv | 久久综合给久久狠狠97色 | 中文字幕av无码一区二区三区电影 | 在线观看免费人成视频 | 综合网日日天干夜夜久久 | 十八禁视频网站在线观看 | 欧美兽交xxxx×视频 | 亚洲一区二区三区国产精华液 | 国内揄拍国内精品少妇国语 | 无码纯肉视频在线观看 | 激情内射亚州一区二区三区爱妻 | 欧美人妻一区二区三区 | 国产黑色丝袜在线播放 | 亚洲国产欧美国产综合一区 | 日本一卡2卡3卡四卡精品网站 | 久久精品丝袜高跟鞋 | 中文字幕久久久久人妻 | 中文字幕av日韩精品一区二区 | 国产国产精品人在线视 | 国产一区二区不卡老阿姨 | 欧洲美熟女乱又伦 | 九九综合va免费看 | 久久精品国产精品国产精品污 | 亚洲毛片av日韩av无码 | 亚洲伊人久久精品影院 | 亚洲国产成人a精品不卡在线 | 精品偷自拍另类在线观看 | 亚洲一区二区三区国产精华液 | 午夜福利一区二区三区在线观看 | 亚洲成色www久久网站 | 四虎国产精品免费久久 | 欧美zoozzooz性欧美 | 国产在热线精品视频 | 国产精品嫩草久久久久 | 亚洲成av人片在线观看无码不卡 | 人妻无码久久精品人妻 | 国产av久久久久精东av | 午夜福利一区二区三区在线观看 | 精品成在人线av无码免费看 | 免费无码午夜福利片69 | 日日鲁鲁鲁夜夜爽爽狠狠 | 国产黄在线观看免费观看不卡 | 亚洲精品国产a久久久久久 | 欧美怡红院免费全部视频 | 夜精品a片一区二区三区无码白浆 | 午夜丰满少妇性开放视频 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 四虎国产精品一区二区 | 在线观看国产午夜福利片 | 久久99久久99精品中文字幕 | 青青青爽视频在线观看 | 男人的天堂av网站 | 亚洲国产午夜精品理论片 | 国产超碰人人爽人人做人人添 | 色综合久久久无码中文字幕 | 亚洲成熟女人毛毛耸耸多 | 国产又爽又猛又粗的视频a片 | 国产口爆吞精在线视频 | 大屁股大乳丰满人妻 | 国产99久久精品一区二区 | 水蜜桃亚洲一二三四在线 | 亚洲成av人片天堂网无码】 | 九月婷婷人人澡人人添人人爽 | 波多野结衣乳巨码无在线观看 | 亚洲日本va中文字幕 | 久热国产vs视频在线观看 | 欧美老熟妇乱xxxxx | 成熟人妻av无码专区 | 丰满人妻被黑人猛烈进入 | 国产午夜手机精彩视频 | 色综合久久久无码中文字幕 | 亚洲精品欧美二区三区中文字幕 | 77777熟女视频在线观看 а天堂中文在线官网 | 国产熟妇高潮叫床视频播放 | 18禁止看的免费污网站 | 一本色道久久综合亚洲精品不卡 | 久久久久久国产精品无码下载 | 国产精品第一国产精品 | 一本大道久久东京热无码av | 天天躁夜夜躁狠狠是什么心态 | 中文字幕+乱码+中文字幕一区 | 国模大胆一区二区三区 | 亚洲国产欧美在线成人 | 成人影院yy111111在线观看 | 中文字幕+乱码+中文字幕一区 | 国产两女互慰高潮视频在线观看 | 国产人妻精品一区二区三区 | 人妻人人添人妻人人爱 | 精品国产一区二区三区四区 | 欧美丰满熟妇xxxx性ppx人交 | 中文无码伦av中文字幕 | 性做久久久久久久免费看 | 久久国产精品精品国产色婷婷 | 国内揄拍国内精品少妇国语 | 欧美日韩人成综合在线播放 | 精品国精品国产自在久国产87 | a在线观看免费网站大全 | 亚洲午夜福利在线观看 | 国内综合精品午夜久久资源 | 国产午夜亚洲精品不卡下载 | 欧美午夜特黄aaaaaa片 | 综合激情五月综合激情五月激情1 | 欧美丰满熟妇xxxx | 在线观看免费人成视频 | 图片小说视频一区二区 | 欧美日韩综合一区二区三区 | 扒开双腿疯狂进出爽爽爽视频 | 四虎影视成人永久免费观看视频 | 久久久精品国产sm最大网站 | 午夜无码人妻av大片色欲 | 欧美精品在线观看 | 成年美女黄网站色大免费全看 | 极品尤物被啪到呻吟喷水 | 无码人妻精品一区二区三区下载 | 久久国产精品萌白酱免费 | 亚洲大尺度无码无码专区 | 国产一区二区三区精品视频 | 无码福利日韩神码福利片 | 亚洲精品鲁一鲁一区二区三区 | 国产精品久免费的黄网站 | 欧美精品一区二区精品久久 | 亚洲精品综合五月久久小说 | 国产人妻精品一区二区三区 | 国产精品-区区久久久狼 | 亚洲自偷自拍另类第1页 | 亚洲中文无码av永久不收费 | 国产超碰人人爽人人做人人添 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 夜夜影院未满十八勿进 | 亚洲va中文字幕无码久久不卡 | 中文字幕人妻无码一夲道 | √8天堂资源地址中文在线 | 国产精品久久久久无码av色戒 | 国产乱人伦av在线无码 | 亚洲の无码国产の无码步美 | 欧美丰满熟妇xxxx性ppx人交 | 永久免费观看美女裸体的网站 | 精品国产乱码久久久久乱码 | 国产激情无码一区二区app | 在线观看欧美一区二区三区 | 荡女精品导航 | 一本色道久久综合亚洲精品不卡 | 亚洲va欧美va天堂v国产综合 | 中文字幕av无码一区二区三区电影 | 亚洲国产精品无码久久久久高潮 | 曰韩少妇内射免费播放 | 麻豆精产国品 | 成人av无码一区二区三区 | 久久久国产一区二区三区 | 国产特级毛片aaaaaa高潮流水 | 日韩少妇内射免费播放 | 亚洲人交乣女bbw | 最近的中文字幕在线看视频 | 四虎永久在线精品免费网址 | 国产精品人妻一区二区三区四 | 国产成人综合在线女婷五月99播放 | 国产精品igao视频网 | 久久久精品国产sm最大网站 | 中文字幕无码免费久久99 | 亚洲七七久久桃花影院 | 亚洲爆乳精品无码一区二区三区 | 高中生自慰www网站 | 亚洲中文字幕久久无码 | 国产精品无码mv在线观看 | 国产精品无码一区二区三区不卡 | 国产在线无码精品电影网 | 狂野欧美性猛交免费视频 | 欧洲熟妇精品视频 | 日日干夜夜干 | 亚洲成av人片在线观看无码不卡 | 国产色视频一区二区三区 | 少妇性荡欲午夜性开放视频剧场 | 精品国产国产综合精品 | 无码一区二区三区在线观看 | 亚洲精品一区二区三区四区五区 | 97精品人妻一区二区三区香蕉 | 无码国产激情在线观看 | 2019nv天堂香蕉在线观看 | 婷婷五月综合激情中文字幕 | 欧美色就是色 | 十八禁真人啪啪免费网站 | 国产美女精品一区二区三区 | 久久久久se色偷偷亚洲精品av | 色一情一乱一伦一视频免费看 | 欧美日本免费一区二区三区 | 内射老妇bbwx0c0ck | 四虎永久在线精品免费网址 | 天天躁日日躁狠狠躁免费麻豆 | 无码av最新清无码专区吞精 | 麻豆av传媒蜜桃天美传媒 | 欧洲精品码一区二区三区免费看 | 日本乱人伦片中文三区 | √天堂中文官网8在线 | 97se亚洲精品一区 | 午夜成人1000部免费视频 | 精品无码国产自产拍在线观看蜜 | 成人精品一区二区三区中文字幕 | 日产精品高潮呻吟av久久 | 亚洲国产av精品一区二区蜜芽 | 疯狂三人交性欧美 | 又黄又爽又色的视频 | 无码午夜成人1000部免费视频 | 亚洲精品午夜国产va久久成人 | 国产艳妇av在线观看果冻传媒 | 精品久久8x国产免费观看 | 人妻人人添人妻人人爱 | 亚洲熟妇色xxxxx欧美老妇y | 无码精品国产va在线观看dvd | 国产女主播喷水视频在线观看 | 亚洲精品无码国产 | 国产麻豆精品一区二区三区v视界 | 欧美丰满熟妇xxxx | 久久综合久久自在自线精品自 | 波多野结衣av在线观看 | 国产午夜亚洲精品不卡下载 | 黑人巨大精品欧美黑寡妇 | 亚洲欧洲中文日韩av乱码 | 久久精品成人欧美大片 | 激情爆乳一区二区三区 | 美女毛片一区二区三区四区 | 熟女俱乐部五十路六十路av | 国产精品资源一区二区 | v一区无码内射国产 | 99re在线播放 | 国产成人精品一区二区在线小狼 | 精品国产一区二区三区四区在线看 | 亚洲精品欧美二区三区中文字幕 | 精品厕所偷拍各类美女tp嘘嘘 | 国产无遮挡又黄又爽又色 | 色婷婷综合激情综在线播放 | 国产凸凹视频一区二区 | 日韩精品乱码av一区二区 | 亚洲成av人综合在线观看 | 国产舌乚八伦偷品w中 | 大肉大捧一进一出视频出来呀 | 国产va免费精品观看 | 无码国内精品人妻少妇 | 久久亚洲国产成人精品性色 | 国产精品99爱免费视频 | 欧美变态另类xxxx | 中国女人内谢69xxxxxa片 | 日韩精品无码免费一区二区三区 | 成人免费无码大片a毛片 | 亚洲精品一区二区三区在线 | 1000部夫妻午夜免费 | 激情内射亚州一区二区三区爱妻 | 国产超碰人人爽人人做人人添 | 美女极度色诱视频国产 | 亚洲精品久久久久久一区二区 | 免费网站看v片在线18禁无码 | 亚洲国产精品久久人人爱 | 日韩亚洲欧美精品综合 | 免费无码的av片在线观看 | 中文字幕 亚洲精品 第1页 | 少妇无码av无码专区在线观看 | 好男人www社区 | 青青青爽视频在线观看 | 亚洲精品国产精品乱码不卡 | 内射老妇bbwx0c0ck | 亚洲国产精品一区二区美利坚 | 在线观看国产午夜福利片 | 特黄特色大片免费播放器图片 | 国产精品人妻一区二区三区四 | 久久精品国产亚洲精品 | 亚洲成av人片天堂网无码】 | 亚洲熟妇色xxxxx欧美老妇 | 久久精品女人天堂av免费观看 | 黑人玩弄人妻中文在线 | 亚洲一区av无码专区在线观看 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 国产在线精品一区二区高清不卡 | 色综合视频一区二区三区 | 久久99国产综合精品 | 国产69精品久久久久app下载 | 日日摸天天摸爽爽狠狠97 | 人妻少妇精品视频专区 | 欧美熟妇另类久久久久久多毛 | 国产精品鲁鲁鲁 | 精品熟女少妇av免费观看 | 高清无码午夜福利视频 | 国产乡下妇女做爰 | 在线天堂新版最新版在线8 | 偷窥日本少妇撒尿chinese | 亚洲gv猛男gv无码男同 | 精品熟女少妇av免费观看 | 国产欧美亚洲精品a | 亚洲一区二区三区无码久久 | 欧美丰满老熟妇xxxxx性 | 中文字幕av无码一区二区三区电影 | 亚洲国产精品一区二区美利坚 | 熟妇人妻中文av无码 | 又黄又爽又色的视频 | 国产精品人人爽人人做我的可爱 | 亚洲小说春色综合另类 | 一二三四在线观看免费视频 | 西西人体www44rt大胆高清 | 亚洲欧美色中文字幕在线 | 黑人巨大精品欧美一区二区 | 国产无套粉嫩白浆在线 | 国产后入清纯学生妹 | 国产色xx群视频射精 | 日韩精品无码一本二本三本色 | 亚洲男人av天堂午夜在 | 性色欲网站人妻丰满中文久久不卡 | 婷婷五月综合激情中文字幕 | 在线欧美精品一区二区三区 | 国产成人精品久久亚洲高清不卡 | 国产va免费精品观看 | 久久精品99久久香蕉国产色戒 | 2020最新国产自产精品 | 最近免费中文字幕中文高清百度 | 色偷偷av老熟女 久久精品人妻少妇一区二区三区 | 精品少妇爆乳无码av无码专区 | 国产精品久久久久无码av色戒 | 日韩欧美中文字幕在线三区 | 国产性生大片免费观看性 | 性啪啪chinese东北女人 | 久久无码中文字幕免费影院蜜桃 | 国产免费观看黄av片 | 久9re热视频这里只有精品 | 精品午夜福利在线观看 | 亚洲区欧美区综合区自拍区 | 久久无码中文字幕免费影院蜜桃 | 精品国产一区二区三区四区 | www成人国产高清内射 | 国产精品久久久久9999小说 | 久久亚洲a片com人成 | av无码不卡在线观看免费 | 久久精品国产日本波多野结衣 | 中文精品无码中文字幕无码专区 | 国产三级久久久精品麻豆三级 | 国产无遮挡又黄又爽免费视频 | 色窝窝无码一区二区三区色欲 | 无遮挡国产高潮视频免费观看 | a国产一区二区免费入口 | 国产精品99爱免费视频 | 国产在线aaa片一区二区99 | 欧美精品一区二区精品久久 | 亚洲男人av香蕉爽爽爽爽 | 宝宝好涨水快流出来免费视频 | 欧美三级不卡在线观看 | 国産精品久久久久久久 | 婷婷丁香五月天综合东京热 | 久久亚洲精品成人无码 | 玩弄人妻少妇500系列视频 | 日韩成人一区二区三区在线观看 | 亚洲日本va中文字幕 | 国产亚洲精品久久久闺蜜 | 亚洲日韩一区二区 | 毛片内射-百度 | 一本加勒比波多野结衣 | 5858s亚洲色大成网站www | 日本在线高清不卡免费播放 | 国产一区二区三区日韩精品 | 欧美国产日韩久久mv | 一本一道久久综合久久 | 伦伦影院午夜理论片 | 中文字幕av日韩精品一区二区 | 欧美日韩一区二区综合 | 色爱情人网站 | 色一情一乱一伦一区二区三欧美 | 日日麻批免费40分钟无码 | 亚洲国产成人av在线观看 | 国产在线精品一区二区高清不卡 | 女人被爽到呻吟gif动态图视看 | 国产又粗又硬又大爽黄老大爷视 | 熟妇人妻无码xxx视频 | 永久免费精品精品永久-夜色 | 日本高清一区免费中文视频 | 性欧美熟妇videofreesex | 无码av岛国片在线播放 | 狠狠色噜噜狠狠狠狠7777米奇 | 日本精品人妻无码77777 天堂一区人妻无码 | 国产口爆吞精在线视频 | 日本精品少妇一区二区三区 | 久久久精品国产sm最大网站 | 亚洲gv猛男gv无码男同 | 中文无码精品a∨在线观看不卡 | 国产精品久久久久久亚洲毛片 | 国产精品怡红院永久免费 | 天天摸天天碰天天添 | 久久午夜夜伦鲁鲁片无码免费 | 精品无码国产一区二区三区av | 亚洲性无码av中文字幕 | 国产成人精品一区二区在线小狼 | 性欧美疯狂xxxxbbbb | 国产精品人人爽人人做我的可爱 | 欧美丰满熟妇xxxx | 亚洲熟妇自偷自拍另类 | 又粗又大又硬又长又爽 | 国产又粗又硬又大爽黄老大爷视 | 波多野42部无码喷潮在线 | 国产真实夫妇视频 | 亚洲日本一区二区三区在线 | 黑森林福利视频导航 | 亚洲国产欧美日韩精品一区二区三区 | 亚洲色偷偷男人的天堂 | 国产亲子乱弄免费视频 | 久久久久免费精品国产 | 丁香花在线影院观看在线播放 | 内射巨臀欧美在线视频 | 久久久成人毛片无码 | 午夜免费福利小电影 | 初尝人妻少妇中文字幕 | 人人妻人人澡人人爽欧美一区九九 | 黑人巨大精品欧美一区二区 | 国产真实伦对白全集 | 亚洲一区二区三区在线观看网站 | 国产sm调教视频在线观看 | 中文字幕无线码免费人妻 | 天天躁日日躁狠狠躁免费麻豆 | 国产小呦泬泬99精品 | 久久亚洲国产成人精品性色 | 丰满人妻一区二区三区免费视频 | 欧美一区二区三区视频在线观看 | 伊人久久大香线焦av综合影院 | 精品成人av一区二区三区 | 女人被男人爽到呻吟的视频 | 久久精品国产99久久6动漫 | 99久久亚洲精品无码毛片 | 国产欧美亚洲精品a | 久久99精品国产.久久久久 | 俄罗斯老熟妇色xxxx | 欧美 日韩 亚洲 在线 | 午夜精品久久久久久久 | 国产麻豆精品精东影业av网站 | 日本欧美一区二区三区乱码 | 久9re热视频这里只有精品 | 色噜噜亚洲男人的天堂 | www国产精品内射老师 | 中国女人内谢69xxxx | 国产精品理论片在线观看 | 老熟妇仑乱视频一区二区 | 精品国产乱码久久久久乱码 | 99久久99久久免费精品蜜桃 | 亚洲精品一区国产 | 野外少妇愉情中文字幕 | 国产亚洲精品久久久闺蜜 | 国产激情精品一区二区三区 | 国产精品无套呻吟在线 | 亚洲啪av永久无码精品放毛片 | 亚拍精品一区二区三区探花 | 久精品国产欧美亚洲色aⅴ大片 | 中文字幕无线码 | 老子影院午夜精品无码 | 亚洲国产精品无码久久久久高潮 | 欧美日韩在线亚洲综合国产人 | 国产人成高清在线视频99最全资源 | 内射老妇bbwx0c0ck | 亚洲成av人在线观看网址 | 国产在线一区二区三区四区五区 | 免费国产成人高清在线观看网站 | 国产va免费精品观看 | 97夜夜澡人人爽人人喊中国片 | 亚洲 欧美 激情 小说 另类 | 亚洲自偷自偷在线制服 | 日本www一道久久久免费榴莲 | 午夜精品一区二区三区在线观看 | 性做久久久久久久免费看 | 2019午夜福利不卡片在线 | 亚洲の无码国产の无码影院 | 国产精品无码成人午夜电影 | 国产麻豆精品一区二区三区v视界 | 无码av岛国片在线播放 | 亚洲国产成人a精品不卡在线 | 亚洲成av人影院在线观看 | 午夜丰满少妇性开放视频 | aⅴ亚洲 日韩 色 图网站 播放 | 久久综合久久自在自线精品自 | 欧洲欧美人成视频在线 | 精品厕所偷拍各类美女tp嘘嘘 | 四虎4hu永久免费 | 国产做国产爱免费视频 | 网友自拍区视频精品 | 久久 国产 尿 小便 嘘嘘 | 国产精品igao视频网 | 国产精品亚洲lv粉色 | 精品aⅴ一区二区三区 | 国产精品久久精品三级 | 国产精品亚洲综合色区韩国 | 亚洲人亚洲人成电影网站色 | 国产va免费精品观看 | 巨爆乳无码视频在线观看 | 欧美35页视频在线观看 | 国产欧美精品一区二区三区 | 欧美三级a做爰在线观看 | 久久精品人妻少妇一区二区三区 | 人妻少妇精品无码专区二区 | v一区无码内射国产 | 少妇太爽了在线观看 | 日韩在线不卡免费视频一区 | 亚洲中文字幕av在天堂 | 精品国产精品久久一区免费式 | 久久99精品久久久久久 | 大屁股大乳丰满人妻 | 国产猛烈高潮尖叫视频免费 | 男人扒开女人内裤强吻桶进去 | 久久亚洲国产成人精品性色 | 露脸叫床粗话东北少妇 | 久久久久成人精品免费播放动漫 | 国产亚洲视频中文字幕97精品 | 人妻有码中文字幕在线 | 日本www一道久久久免费榴莲 | 欧美乱妇无乱码大黄a片 | 久久国产精品萌白酱免费 | 久久国产精品偷任你爽任你 | 精品国偷自产在线 | 午夜精品一区二区三区的区别 | 精品久久8x国产免费观看 | 午夜福利一区二区三区在线观看 | 亚洲国产精品美女久久久久 | 中文无码成人免费视频在线观看 | 亚洲狠狠色丁香婷婷综合 | 人人妻人人澡人人爽精品欧美 | 青青青手机频在线观看 | 亚洲人成网站在线播放942 | 欧美熟妇另类久久久久久不卡 | 水蜜桃色314在线观看 | 久久精品国产大片免费观看 | 久久精品女人的天堂av | 日韩精品无码免费一区二区三区 | 国产激情无码一区二区 | 国产人妻精品一区二区三区不卡 | 国产在热线精品视频 | 中文字幕中文有码在线 | 无码国产色欲xxxxx视频 | 色一情一乱一伦一区二区三欧美 | 亚洲成a人片在线观看日本 | 国产精品多人p群无码 | 日本又色又爽又黄的a片18禁 | 综合人妻久久一区二区精品 | 日韩av无码中文无码电影 | 亚洲精品www久久久 | 久久亚洲中文字幕无码 | √天堂资源地址中文在线 | 永久免费观看美女裸体的网站 | 成人无码精品1区2区3区免费看 | 国产成人无码a区在线观看视频app | 欧美黑人巨大xxxxx | 色综合天天综合狠狠爱 | 欧美日韩一区二区三区自拍 | 天海翼激烈高潮到腰振不止 | 中文字幕人妻无码一区二区三区 | 无码国内精品人妻少妇 | 亚洲人成人无码网www国产 | 蜜桃av蜜臀av色欲av麻 999久久久国产精品消防器材 | 无码人妻丰满熟妇区毛片18 | 99久久精品国产一区二区蜜芽 | 最近的中文字幕在线看视频 | 国产亚洲欧美在线专区 | 国产香蕉尹人视频在线 | 国产精品国产自线拍免费软件 | 波多野结衣av一区二区全免费观看 | 在线播放无码字幕亚洲 | 精品无码国产一区二区三区av | 狠狠噜狠狠狠狠丁香五月 | 奇米影视888欧美在线观看 | 亚洲精品综合五月久久小说 | 亚洲精品国偷拍自产在线麻豆 | 欧美日韩一区二区免费视频 | 狠狠色噜噜狠狠狠7777奇米 | 人人澡人人妻人人爽人人蜜桃 | 噜噜噜亚洲色成人网站 | 风流少妇按摩来高潮 | 精品一区二区三区波多野结衣 | 亚洲成熟女人毛毛耸耸多 | 精品国产精品久久一区免费式 | 国产成人久久精品流白浆 | 久久亚洲国产成人精品性色 | 亚洲精品一区二区三区在线 | 人人妻人人藻人人爽欧美一区 | 丰满诱人的人妻3 | 18黄暴禁片在线观看 | 无码精品国产va在线观看dvd | 色欲久久久天天天综合网精品 | 亚洲成av人片天堂网无码】 | 在线精品亚洲一区二区 | 性色欲情网站iwww九文堂 | 欧美日韩精品 | 中文字幕无线码免费人妻 | 亚洲精品成a人在线观看 | 极品尤物被啪到呻吟喷水 | 色窝窝无码一区二区三区色欲 | 丝袜美腿亚洲一区二区 | 少妇愉情理伦片bd | 高潮喷水的毛片 | 国产综合在线观看 | 人人妻人人澡人人爽精品欧美 | 无遮挡国产高潮视频免费观看 | 天天拍夜夜添久久精品大 | 天天拍夜夜添久久精品大 | 少妇太爽了在线观看 | 亚洲精品国产精品乱码不卡 | 久久精品国产99精品亚洲 | 好屌草这里只有精品 | 秋霞成人午夜鲁丝一区二区三区 | 好爽又高潮了毛片免费下载 | 亚洲综合在线一区二区三区 | 中文字幕+乱码+中文字幕一区 | 国产精品美女久久久久av爽李琼 | 久久成人a毛片免费观看网站 | 久久国产自偷自偷免费一区调 | 在线亚洲高清揄拍自拍一品区 | 中文字幕无线码免费人妻 | 国产农村妇女高潮大叫 | 中文字幕无码av波多野吉衣 | 日韩精品无码免费一区二区三区 | 亚洲 激情 小说 另类 欧美 | 人人妻人人澡人人爽欧美一区 | 欧美成人免费全部网站 | 精品无码一区二区三区爱欲 | 桃花色综合影院 | 日日噜噜噜噜夜夜爽亚洲精品 | 国产小呦泬泬99精品 | 两性色午夜视频免费播放 | 国产精品视频免费播放 | 亚洲熟妇色xxxxx亚洲 | 成人试看120秒体验区 | 国产香蕉97碰碰久久人人 | 成人欧美一区二区三区黑人 | 亚洲国产精品一区二区美利坚 | 国产综合在线观看 | 亚洲熟妇色xxxxx欧美老妇y | 草草网站影院白丝内射 | 亚洲成av人在线观看网址 | 人妻少妇被猛烈进入中文字幕 | 国产一区二区三区日韩精品 | 国产区女主播在线观看 | 中文字幕av伊人av无码av | 永久免费观看美女裸体的网站 | 国产精品亚洲综合色区韩国 | 曰韩无码二三区中文字幕 | 久久精品女人的天堂av | 性做久久久久久久免费看 | 精品无人区无码乱码毛片国产 | 亚洲爆乳无码专区 | 精品国产乱码久久久久乱码 | 亚洲国产日韩a在线播放 | 任你躁国产自任一区二区三区 | 成人片黄网站色大片免费观看 | 天堂久久天堂av色综合 | 无码人妻av免费一区二区三区 | 丰满诱人的人妻3 | 国产成人精品久久亚洲高清不卡 | 300部国产真实乱 | 小sao货水好多真紧h无码视频 | 水蜜桃亚洲一二三四在线 | 无套内谢老熟女 | 日日麻批免费40分钟无码 | 成熟妇人a片免费看网站 | 国产激情综合五月久久 | 亚洲人成人无码网www国产 | 国产卡一卡二卡三 | a片在线免费观看 | 亚洲一区二区三区播放 | 野外少妇愉情中文字幕 | 人人妻人人澡人人爽欧美一区九九 | 日韩精品无码一区二区中文字幕 | 国产农村乱对白刺激视频 | 亚洲狠狠色丁香婷婷综合 | 欧洲欧美人成视频在线 | 亚洲人成网站免费播放 | 国产人妻久久精品二区三区老狼 | 2019午夜福利不卡片在线 | 99久久久无码国产aaa精品 | 色一情一乱一伦一区二区三欧美 | 无遮挡国产高潮视频免费观看 | 波多野结衣 黑人 | 荫蒂添的好舒服视频囗交 | 久久久久久久久蜜桃 | 国产精品igao视频网 | 少妇被粗大的猛进出69影院 | 国产一区二区三区精品视频 | 久久综合给合久久狠狠狠97色 | 中国女人内谢69xxxx | 在线欧美精品一区二区三区 | 少妇高潮一区二区三区99 | 人妻少妇精品无码专区动漫 | 日本精品久久久久中文字幕 | 成人一在线视频日韩国产 | 亚洲va欧美va天堂v国产综合 | 午夜时刻免费入口 | 最新版天堂资源中文官网 | 美女毛片一区二区三区四区 | 国产精品亚洲一区二区三区喷水 | 婷婷综合久久中文字幕蜜桃三电影 | 乱人伦人妻中文字幕无码久久网 | 小sao货水好多真紧h无码视频 | 牲欲强的熟妇农村老妇女视频 | 国产精品久久久久久久9999 | 曰本女人与公拘交酡免费视频 | 最近中文2019字幕第二页 | 国产做国产爱免费视频 | 亚洲精品鲁一鲁一区二区三区 | 人人妻人人澡人人爽欧美一区九九 | 久久久久久a亚洲欧洲av冫 | a片在线免费观看 | av无码久久久久不卡免费网站 | 国产精品久久久久久久9999 | 精品久久久无码人妻字幂 | 色欲人妻aaaaaaa无码 | 一本久道久久综合婷婷五月 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 两性色午夜免费视频 | 在线观看欧美一区二区三区 | 亚洲无人区午夜福利码高清完整版 | 中文无码伦av中文字幕 | 亚洲日韩av一区二区三区四区 | 国产农村妇女高潮大叫 | 日韩精品a片一区二区三区妖精 | 亚洲日韩一区二区三区 | 99久久精品日本一区二区免费 | aⅴ亚洲 日韩 色 图网站 播放 | 亚洲色成人中文字幕网站 | 亚洲日本va中文字幕 | 精品国产青草久久久久福利 | 玩弄少妇高潮ⅹxxxyw | 无码一区二区三区在线 | 亚洲区小说区激情区图片区 | 亚洲精品一区三区三区在线观看 | 色诱久久久久综合网ywww | 青草青草久热国产精品 | 又大又紧又粉嫩18p少妇 | 少妇无码吹潮 | 精品国产乱码久久久久乱码 | 鲁一鲁av2019在线 | 日本精品少妇一区二区三区 | 麻豆精品国产精华精华液好用吗 | 精品人妻人人做人人爽夜夜爽 | 日韩欧美群交p片內射中文 | 成人一在线视频日韩国产 | 扒开双腿吃奶呻吟做受视频 | 女人色极品影院 | 国产精品久久久久无码av色戒 | 国产又爽又猛又粗的视频a片 | 国产成人无码a区在线观看视频app | 日本一卡2卡3卡四卡精品网站 | 国产黑色丝袜在线播放 | 国产精品理论片在线观看 | 正在播放老肥熟妇露脸 | 亚洲自偷精品视频自拍 | 18精品久久久无码午夜福利 | 国语精品一区二区三区 | 国产精品久久久久久亚洲影视内衣 | 中文字幕日产无线码一区 | 国产亚洲日韩欧美另类第八页 | 日本成熟视频免费视频 | 国产艳妇av在线观看果冻传媒 | 国产亚洲精品久久久久久 | 男人和女人高潮免费网站 | 亚洲一区二区三区国产精华液 | 熟女俱乐部五十路六十路av | 18精品久久久无码午夜福利 | 婷婷六月久久综合丁香 | 日韩欧美群交p片內射中文 | 久久久精品成人免费观看 | 东京热男人av天堂 | 天堂久久天堂av色综合 | 亚洲色大成网站www国产 | 亚洲精品成a人在线观看 | 亚洲国产精品久久久天堂 | 亚洲精品一区国产 | 国产在热线精品视频 | 午夜免费福利小电影 | 伊人久久大香线蕉亚洲 | aa片在线观看视频在线播放 | 亚洲色www成人永久网址 | 无码精品人妻一区二区三区av | 少妇的肉体aa片免费 | 成 人 网 站国产免费观看 | 久久久久成人精品免费播放动漫 | 久久久久久久人妻无码中文字幕爆 | 久久久久久a亚洲欧洲av冫 | 国产精品久久久久久久9999 | 97人妻精品一区二区三区 | 免费无码的av片在线观看 | 色婷婷香蕉在线一区二区 | 无遮挡国产高潮视频免费观看 | 日日橹狠狠爱欧美视频 | 人人妻人人澡人人爽欧美一区九九 | 影音先锋中文字幕无码 | 天堂亚洲2017在线观看 | 中文字幕人妻丝袜二区 | 久久99精品久久久久久动态图 | 国产在线精品一区二区高清不卡 | 2020最新国产自产精品 | 全黄性性激高免费视频 | 久久99久久99精品中文字幕 | 欧美丰满熟妇xxxx | 夜夜夜高潮夜夜爽夜夜爰爰 | 国产午夜福利亚洲第一 | 国产小呦泬泬99精品 | 黑人大群体交免费视频 | 国产sm调教视频在线观看 | 色噜噜亚洲男人的天堂 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 国产亚av手机在线观看 | 99视频精品全部免费免费观看 | 丝袜 中出 制服 人妻 美腿 | 中文字幕无码热在线视频 | 国产亚洲精品久久久闺蜜 | 国内精品人妻无码久久久影院蜜桃 | 欧美亚洲日韩国产人成在线播放 | 蜜臀aⅴ国产精品久久久国产老师 | 国产精品久久久久久亚洲影视内衣 | 色欲综合久久中文字幕网 | 强奷人妻日本中文字幕 | 久久精品丝袜高跟鞋 | 两性色午夜免费视频 | 久久亚洲中文字幕精品一区 | 久久人人97超碰a片精品 | 久久久精品国产sm最大网站 | 国产内射老熟女aaaa | 中文字幕无码乱人伦 | 黑人巨大精品欧美一区二区 | 国产成人精品一区二区在线小狼 | 日本大香伊一区二区三区 | 国产口爆吞精在线视频 | 无码av免费一区二区三区试看 | 久久精品国产日本波多野结衣 | 无码精品人妻一区二区三区av | 中文字幕日韩精品一区二区三区 | 99久久久国产精品无码免费 | 日韩少妇内射免费播放 | 人妻尝试又大又粗久久 | 欧美老熟妇乱xxxxx | 亚无码乱人伦一区二区 | 欧美日韩综合一区二区三区 | 男女下面进入的视频免费午夜 | 国产人妻久久精品二区三区老狼 | 国产情侣作爱视频免费观看 | 欧美成人午夜精品久久久 | 无码人妻丰满熟妇区五十路百度 | 久久人人97超碰a片精品 | 日韩人妻少妇一区二区三区 | 国产亚洲视频中文字幕97精品 | 女人被男人爽到呻吟的视频 | 无遮无挡爽爽免费视频 | 色综合久久中文娱乐网 | 鲁一鲁av2019在线 | 老熟妇乱子伦牲交视频 | 国产精品无套呻吟在线 | 亚洲一区av无码专区在线观看 | 激情人妻另类人妻伦 | 亚洲欧美综合区丁香五月小说 | 精品人妻av区 | 亚洲色www成人永久网址 | 搡女人真爽免费视频大全 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 人人爽人人爽人人片av亚洲 | 欧美freesex黑人又粗又大 | 成 人 免费观看网站 | 免费无码av一区二区 | 色五月丁香五月综合五月 | 图片区 小说区 区 亚洲五月 | 麻豆果冻传媒2021精品传媒一区下载 | 又色又爽又黄的美女裸体网站 | 亚洲成av人综合在线观看 | 国产午夜无码视频在线观看 | 色综合久久久无码网中文 | 国产亚洲精品精品国产亚洲综合 | 欧洲熟妇精品视频 | 嫩b人妻精品一区二区三区 | 天天摸天天碰天天添 | 国产凸凹视频一区二区 | 亚洲日韩乱码中文无码蜜桃臀网站 | 久久久中文久久久无码 | 亚洲午夜福利在线观看 | 国产精品亚洲综合色区韩国 | 成人动漫在线观看 | 中文无码伦av中文字幕 | 在线观看欧美一区二区三区 | 亚洲性无码av中文字幕 | 西西人体www44rt大胆高清 | 日韩人妻无码一区二区三区久久99 | 日韩av无码中文无码电影 | 毛片内射-百度 | 东北女人啪啪对白 | 亚洲色无码一区二区三区 | 国产av剧情md精品麻豆 | 国产综合久久久久鬼色 | 久久久精品成人免费观看 | 日日鲁鲁鲁夜夜爽爽狠狠 | 欧美性猛交xxxx富婆 | 99精品视频在线观看免费 | 伊人色综合久久天天小片 | 少妇人妻大乳在线视频 | 夜夜影院未满十八勿进 | 精品无人区无码乱码毛片国产 | 日本一区二区三区免费高清 | 1000部夫妻午夜免费 | а天堂中文在线官网 | 大胆欧美熟妇xx | 少妇人妻av毛片在线看 | 成人欧美一区二区三区黑人 | 精品人妻人人做人人爽夜夜爽 | 久久综合狠狠综合久久综合88 | 国产精品第一国产精品 | 国精品人妻无码一区二区三区蜜柚 | 丰满少妇熟乱xxxxx视频 | 久久97精品久久久久久久不卡 | 国产片av国语在线观看 | 男女猛烈xx00免费视频试看 | 国产精品自产拍在线观看 | 成人精品天堂一区二区三区 | 日日摸天天摸爽爽狠狠97 | 2020久久香蕉国产线看观看 | 久久五月精品中文字幕 | 性色欲网站人妻丰满中文久久不卡 | 国产欧美精品一区二区三区 | 国产精品国产自线拍免费软件 | 激情五月综合色婷婷一区二区 | 天天躁夜夜躁狠狠是什么心态 | 欧美三级a做爰在线观看 | 强开小婷嫩苞又嫩又紧视频 | 日韩亚洲欧美中文高清在线 | 国产手机在线αⅴ片无码观看 | 久久午夜无码鲁丝片午夜精品 | 精品 日韩 国产 欧美 视频 | 国产精品亚洲五月天高清 | 中国大陆精品视频xxxx | 国产精品a成v人在线播放 | 久久久国产精品无码免费专区 | а天堂中文在线官网 | 一本久道久久综合婷婷五月 | 无码福利日韩神码福利片 | 国产精品第一区揄拍无码 | 亚洲国产精品美女久久久久 | 亚洲国产av美女网站 | 少妇激情av一区二区 | 人人妻人人澡人人爽精品欧美 | 永久免费观看国产裸体美女 | 色欲av亚洲一区无码少妇 | 欧美精品免费观看二区 | 99久久久无码国产精品免费 | 无码人妻av免费一区二区三区 | 天天躁日日躁狠狠躁免费麻豆 | 鲁大师影院在线观看 | 日本爽爽爽爽爽爽在线观看免 | 中文字幕无码av波多野吉衣 | 国产黄在线观看免费观看不卡 | 亚洲色在线无码国产精品不卡 | 成人无码影片精品久久久 | 国产成人无码a区在线观看视频app | 鲁大师影院在线观看 | 日本护士xxxxhd少妇 | 丰满少妇女裸体bbw | 波多野结衣av一区二区全免费观看 | 亚洲精品久久久久久一区二区 | 亚洲精品久久久久久久久久久 | 亚洲色大成网站www | 亚洲欧美色中文字幕在线 | 国产精品亚洲专区无码不卡 | 欧美人与禽猛交狂配 | 九九在线中文字幕无码 | 久久国内精品自在自线 | 亚洲娇小与黑人巨大交 | 国产又粗又硬又大爽黄老大爷视 | 亚洲人成人无码网www国产 | 中文无码伦av中文字幕 | 老司机亚洲精品影院无码 | 人妻少妇精品视频专区 | 久久精品人妻少妇一区二区三区 | 日韩无套无码精品 | 内射爽无广熟女亚洲 | 国产又爽又猛又粗的视频a片 | 少妇被黑人到高潮喷出白浆 | 欧美日韩精品 | 撕开奶罩揉吮奶头视频 | 日本饥渴人妻欲求不满 | 日本护士毛茸茸高潮 | 久久久久se色偷偷亚洲精品av | 欧美xxxxx精品 | 国产亚洲精品久久久闺蜜 | 亚洲日韩av一区二区三区四区 | 亚洲一区二区三区无码久久 | 奇米影视7777久久精品 | 日韩在线不卡免费视频一区 | 亚洲国产成人av在线观看 | 无码人妻少妇伦在线电影 | 丰满肥臀大屁股熟妇激情视频 | 麻豆国产人妻欲求不满 | 国产成人精品久久亚洲高清不卡 | 国产精品手机免费 | 欧美老熟妇乱xxxxx | aⅴ亚洲 日韩 色 图网站 播放 | 精品国产一区二区三区四区 | 色婷婷香蕉在线一区二区 | 色婷婷久久一区二区三区麻豆 | 青青青手机频在线观看 | 国产黑色丝袜在线播放 | 国产人妻精品一区二区三区 | 无码任你躁久久久久久久 | 久久综合给久久狠狠97色 | 女高中生第一次破苞av | 亚洲成熟女人毛毛耸耸多 | 日本va欧美va欧美va精品 | 老太婆性杂交欧美肥老太 | 无码人妻精品一区二区三区下载 | 欧美日韩亚洲国产精品 | 亚洲国产综合无码一区 | 国产亚洲精品久久久久久国模美 | 亚洲色欲色欲欲www在线 | 最新国产麻豆aⅴ精品无码 | 欧美日本日韩 | 国内揄拍国内精品人妻 | 天堂亚洲免费视频 | 曰本女人与公拘交酡免费视频 | 最新国产乱人伦偷精品免费网站 | yw尤物av无码国产在线观看 | 亚洲国产精品毛片av不卡在线 | 99久久人妻精品免费一区 | 亚洲一区二区三区偷拍女厕 | 国产av无码专区亚洲a∨毛片 | 日日摸天天摸爽爽狠狠97 | 嫩b人妻精品一区二区三区 | 窝窝午夜理论片影院 | 久久精品国产日本波多野结衣 | 欧美日本日韩 | 久久久中文久久久无码 | 国产成人综合色在线观看网站 | 国产片av国语在线观看 | 97无码免费人妻超级碰碰夜夜 | 男女超爽视频免费播放 | 中文毛片无遮挡高清免费 | 国产人妻精品一区二区三区 | 欧美日韩一区二区综合 | 国精产品一区二区三区 | a国产一区二区免费入口 | 人妻与老人中文字幕 | 亚洲中文字幕无码中字 | 免费观看的无遮挡av | 国产成人精品一区二区在线小狼 | 丝袜足控一区二区三区 | 日日天日日夜日日摸 | 亚洲热妇无码av在线播放 | 青青久在线视频免费观看 | 久久99精品久久久久久动态图 | 综合网日日天干夜夜久久 | 国产9 9在线 | 中文 | www一区二区www免费 | 精品久久综合1区2区3区激情 | 在线 国产 欧美 亚洲 天堂 | 亚洲精品一区二区三区在线观看 | 国产在线精品一区二区三区直播 | 中文字幕 亚洲精品 第1页 | 亚洲国产成人a精品不卡在线 | 国产极品美女高潮无套在线观看 | 中文久久乱码一区二区 | 亚洲国产精品美女久久久久 | 丁香啪啪综合成人亚洲 | 在线播放免费人成毛片乱码 | 无码人妻av免费一区二区三区 | 天堂无码人妻精品一区二区三区 | 人人妻人人澡人人爽欧美一区 | 日本免费一区二区三区最新 | 中文字幕乱码人妻二区三区 | 久久综合给久久狠狠97色 | 中文字幕无码免费久久9一区9 | 久久综合给合久久狠狠狠97色 | 亚洲精品www久久久 | 欧美 日韩 人妻 高清 中文 | 又大又硬又黄的免费视频 | 国产欧美熟妇另类久久久 | 欧美自拍另类欧美综合图片区 | 俄罗斯老熟妇色xxxx | 人妻插b视频一区二区三区 | 国产免费观看黄av片 | 欧美人与物videos另类 | 亚洲精品国产品国语在线观看 | 一本精品99久久精品77 | 啦啦啦www在线观看免费视频 | 成人试看120秒体验区 | 国产精品第一区揄拍无码 | 国产两女互慰高潮视频在线观看 | 麻豆国产97在线 | 欧洲 | 国产一区二区三区影院 | 国产口爆吞精在线视频 | 国产无套粉嫩白浆在线 | 国产精品办公室沙发 | 欧美丰满老熟妇xxxxx性 | 麻豆果冻传媒2021精品传媒一区下载 | 欧美第一黄网免费网站 | 欧美日韩人成综合在线播放 | 男女下面进入的视频免费午夜 | 国产舌乚八伦偷品w中 | 日韩av无码一区二区三区 | 国产av久久久久精东av | 欧美日韩综合一区二区三区 | 99久久精品日本一区二区免费 | 无码精品国产va在线观看dvd | 国产成人午夜福利在线播放 | 日本一区二区更新不卡 | 国产成人综合在线女婷五月99播放 | 婷婷六月久久综合丁香 | 亚洲 a v无 码免 费 成 人 a v | 中文字幕无码乱人伦 | 亚洲阿v天堂在线 | 国产猛烈高潮尖叫视频免费 | 波多野结衣av一区二区全免费观看 | 亚洲精品国产精品乱码视色 | 亚洲一区二区三区在线观看网站 | 日韩少妇内射免费播放 | 夫妻免费无码v看片 | 国产av一区二区精品久久凹凸 | 人妻与老人中文字幕 | 人人澡人摸人人添 | 97精品人妻一区二区三区香蕉 | 少妇被粗大的猛进出69影院 | 色婷婷久久一区二区三区麻豆 | 人人妻人人澡人人爽欧美精品 | 国产精品第一国产精品 | 国产亚洲精品久久久闺蜜 | 狠狠躁日日躁夜夜躁2020 | 3d动漫精品啪啪一区二区中 | 男女下面进入的视频免费午夜 | 色综合久久久久综合一本到桃花网 | 少妇愉情理伦片bd | 奇米影视7777久久精品人人爽 | 久久国产精品偷任你爽任你 | 日日夜夜撸啊撸 | 久久久无码中文字幕久... | 丁香啪啪综合成人亚洲 | 国产成人无码区免费内射一片色欲 | 国产99久久精品一区二区 | 亚洲国产欧美日韩精品一区二区三区 | 亚无码乱人伦一区二区 | 高清无码午夜福利视频 | 中文字幕日产无线码一区 | 久激情内射婷内射蜜桃人妖 | av无码电影一区二区三区 | 红桃av一区二区三区在线无码av | 亚洲国产精品一区二区第一页 | 东京热无码av男人的天堂 | 人人澡人人透人人爽 | 日本成熟视频免费视频 | 欧美老妇交乱视频在线观看 | 精品久久综合1区2区3区激情 | √天堂中文官网8在线 | 欧美日本免费一区二区三区 | www成人国产高清内射 | 久久久中文久久久无码 | 久激情内射婷内射蜜桃人妖 | 国产精品久久久久久久影院 | 亚洲 a v无 码免 费 成 人 a v | 亚洲国产欧美在线成人 | 中文字幕中文有码在线 | 啦啦啦www在线观看免费视频 | 又大又紧又粉嫩18p少妇 | 77777熟女视频在线观看 а天堂中文在线官网 | 成人一在线视频日韩国产 | 亚洲中文字幕va福利 | 亚洲爆乳大丰满无码专区 | 黑森林福利视频导航 | 亚洲精品无码国产 | 中文精品久久久久人妻不卡 | 小泽玛莉亚一区二区视频在线 | 日本免费一区二区三区最新 | 国产一精品一av一免费 | 麻豆精品国产精华精华液好用吗 | 久久久精品欧美一区二区免费 | 久久99精品国产麻豆 | 曰韩无码二三区中文字幕 | 国产午夜亚洲精品不卡下载 | 狠狠色丁香久久婷婷综合五月 | 宝宝好涨水快流出来免费视频 | 思思久久99热只有频精品66 | 又粗又大又硬毛片免费看 | 亚洲熟妇色xxxxx欧美老妇y | 成人精品天堂一区二区三区 | 人妻插b视频一区二区三区 | 激情内射亚州一区二区三区爱妻 | 丰腴饱满的极品熟妇 | 18无码粉嫩小泬无套在线观看 | 综合激情五月综合激情五月激情1 | 久久久久亚洲精品中文字幕 | 国产乱子伦视频在线播放 | 无套内谢的新婚少妇国语播放 | 成人一在线视频日韩国产 | 中文字幕无线码免费人妻 | 夫妻免费无码v看片 | 精品国产福利一区二区 | 亚洲精品午夜国产va久久成人 | 国产亚洲精品久久久久久久久动漫 | 在线观看免费人成视频 | 亚洲男人av天堂午夜在 | 亚洲国产精品久久人人爱 | 国产午夜福利亚洲第一 | 亚洲日本va中文字幕 | 国产精品久久久 | 我要看www免费看插插视频 | 鲁大师影院在线观看 | 欧美国产日韩亚洲中文 | 欧美人与动性行为视频 | 高潮毛片无遮挡高清免费视频 | 亚洲日韩中文字幕在线播放 | 超碰97人人做人人爱少妇 | 久久久精品人妻久久影视 | 久久久中文久久久无码 | 国产又爽又黄又刺激的视频 | 婷婷五月综合缴情在线视频 | 六十路熟妇乱子伦 | 国产熟女一区二区三区四区五区 | 久久精品国产99精品亚洲 | 欧美日韩精品 | 欧美熟妇另类久久久久久不卡 | 日产精品高潮呻吟av久久 | 色 综合 欧美 亚洲 国产 | аⅴ资源天堂资源库在线 | 国产午夜无码精品免费看 | 中文字幕无码乱人伦 | 在线精品亚洲一区二区 | 日韩少妇白浆无码系列 | 国精品人妻无码一区二区三区蜜柚 | 人妻体内射精一区二区三四 | 中文精品久久久久人妻不卡 | 丁香啪啪综合成人亚洲 | 欧美第一黄网免费网站 | 日韩欧美成人免费观看 | 奇米影视7777久久精品人人爽 | 精品久久综合1区2区3区激情 | 丰满护士巨好爽好大乳 | аⅴ资源天堂资源库在线 | 永久黄网站色视频免费直播 | 日韩亚洲欧美精品综合 | 亚洲一区二区三区在线观看网站 | 亚洲aⅴ无码成人网站国产app | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 成人aaa片一区国产精品 | 久久综合给合久久狠狠狠97色 | 鲁大师影院在线观看 | 麻豆精产国品 | 色综合久久88色综合天天 | 亚洲综合伊人久久大杳蕉 | 4hu四虎永久在线观看 | 国产精品久久久久久久影院 | 午夜精品久久久久久久 | 亚洲伊人久久精品影院 | 奇米影视888欧美在线观看 | 久久久久se色偷偷亚洲精品av | 99精品无人区乱码1区2区3区 | 曰韩无码二三区中文字幕 | 亚洲欧美日韩国产精品一区二区 | 99国产精品白浆在线观看免费 | 久精品国产欧美亚洲色aⅴ大片 | 成人精品视频一区二区三区尤物 | aⅴ在线视频男人的天堂 | 欧美日韩一区二区三区自拍 | 国产黄在线观看免费观看不卡 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 精品国产国产综合精品 | 国产人妻大战黑人第1集 | 色偷偷人人澡人人爽人人模 | 色窝窝无码一区二区三区色欲 | 少妇无码av无码专区在线观看 | 久久久久亚洲精品男人的天堂 | 日本精品人妻无码77777 天堂一区人妻无码 | 国产手机在线αⅴ片无码观看 | 国产精品久久福利网站 | 亚洲综合无码久久精品综合 | 中文字幕人成乱码熟女app | 精品国精品国产自在久国产87 | 国产在线aaa片一区二区99 | 国产网红无码精品视频 | 日韩人妻系列无码专区 | 婷婷色婷婷开心五月四房播播 | 欧美自拍另类欧美综合图片区 | 国产精品-区区久久久狼 | 婷婷六月久久综合丁香 | 人妻少妇精品视频专区 | 精品国产福利一区二区 | 日本熟妇大屁股人妻 | 成人性做爰aaa片免费看不忠 | 国内少妇偷人精品视频免费 | 麻豆成人精品国产免费 | 精品久久久无码人妻字幂 | 亚洲s色大片在线观看 | 国产无av码在线观看 | 日本xxxx色视频在线观看免费 | 国产精品视频免费播放 | 色妞www精品免费视频 | 久久午夜无码鲁丝片秋霞 | 高潮毛片无遮挡高清免费 | 国产亚洲欧美日韩亚洲中文色 | 国产乱人伦av在线无码 | 国产精品沙发午睡系列 | 老熟妇仑乱视频一区二区 | 精品一区二区三区波多野结衣 | 大色综合色综合网站 | 精品国产一区二区三区av 性色 | 久久精品成人欧美大片 | 18禁止看的免费污网站 | 欧美35页视频在线观看 | 亚洲无人区一区二区三区 | 午夜免费福利小电影 | 亚洲gv猛男gv无码男同 | 中文字幕无线码 | 国产亚洲欧美在线专区 | 欧美 丝袜 自拍 制服 另类 | 亚洲精品午夜无码电影网 | 亚欧洲精品在线视频免费观看 | 亚洲成av人片在线观看无码不卡 | 国产偷抇久久精品a片69 | 国产精品久久国产三级国 | 国产综合色产在线精品 | 国产福利视频一区二区 | 狠狠综合久久久久综合网 | 波多野42部无码喷潮在线 | 人妻少妇精品无码专区二区 | 久久精品中文字幕一区 | 天堂亚洲2017在线观看 | 少妇性俱乐部纵欲狂欢电影 | 午夜福利电影 | 撕开奶罩揉吮奶头视频 | 清纯唯美经典一区二区 | 久热国产vs视频在线观看 | 亚洲欧美精品伊人久久 | 好屌草这里只有精品 | 亚洲无人区一区二区三区 | 欧美国产日产一区二区 | 国产高清不卡无码视频 | 国产成人综合美国十次 | 人妻无码αv中文字幕久久琪琪布 | 奇米影视7777久久精品人人爽 | 色窝窝无码一区二区三区色欲 | 久久99国产综合精品 | 性色欲网站人妻丰满中文久久不卡 | 亚洲 另类 在线 欧美 制服 | 无码任你躁久久久久久久 | 夜夜夜高潮夜夜爽夜夜爰爰 | 天天爽夜夜爽夜夜爽 | 国产人妻大战黑人第1集 | 精品久久久久久亚洲精品 | 久久精品视频在线看15 | 小鲜肉自慰网站xnxx | 性色av无码免费一区二区三区 | 国产内射爽爽大片视频社区在线 | 天天av天天av天天透 | 色偷偷av老熟女 久久精品人妻少妇一区二区三区 | 18黄暴禁片在线观看 | 少妇人妻大乳在线视频 | 国产亚洲人成在线播放 | 欧美放荡的少妇 | 中国女人内谢69xxxxxa片 | 免费视频欧美无人区码 | 又湿又紧又大又爽a视频国产 |