日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Java+Windows+ffmpeg实现视频转换

發(fā)布時間:2023/12/20 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java+Windows+ffmpeg实现视频转换 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

舊文,源地址見這里。

最近由于項目需要,研究了一下如何用Java實現(xiàn)視頻轉(zhuǎn)換,“著實”廢了點心思,整理整理,寫出給自己備忘下。

思路

由于之前沒有沒法過相關功能的經(jīng)驗,一開始來真不知道從哪里入手。當然,這個解決,google一下立馬就發(fā)現(xiàn)了ffmpeg,網(wǎng)上講解用Java+ffmpeg來進行視頻轉(zhuǎn)換的文章也不在少數(shù),我主要參考的這篇文章。

上文提到的這篇文章,基本已經(jīng)把開發(fā)流程什么的講的很清楚了,這里總結下:

  • 核心是利用ffmpeg進行視頻轉(zhuǎn)換,我們自己并不寫轉(zhuǎn)換視頻的代碼,只是調(diào)用ffmpeg,它會幫我們完成視頻的轉(zhuǎn)換。ffmpeg支持的類型有:asx,asf,mpg,wmv,3gp,mp4,mov,avi,flv等,這些類型,可以利用ffmpeg進行直接轉(zhuǎn)換。ffmpeg不支持的類型有:wmv9,rm,rmvb等,這些類型需要先用別的工具(mencoder)轉(zhuǎn)換為avi(ffmpeg能解析的)格式。

  • 了解Java如何調(diào)用外部程序,這會是最困難的,也會是坑最多的地方。

  • 根據(jù)我們的需求設置ffmpeg的參數(shù)。(這類文章網(wǎng)上已經(jīng)有很多了,我也不用復制黏貼了,見這里)

  • 代碼

    上文中提到的那篇文章中的代碼其實已經(jīng)寫的很友好了,基本拿來就能用,不過仍然存在許多問題,接下來會講到,下面是文中的代碼:

    javaimport java.io.File; import java.util.ArrayList; import java.util.Calendar; import java.util.List; public class ConvertVideo { private final static String PATH = "c:\\ffmpeg\\input\\c.mp4"; public static void main(String[] args) { if (!checkfile(PATH)) { System.out.println(PATH + " is not file"); return; } if (process()) { System.out.println("ok"); } } private static boolean process() { int type = checkContentType(); boolean status = false; if (type == 0) { System.out.println("直接將文件轉(zhuǎn)為flv文件"); status = processFLV(PATH);// 直接將文件轉(zhuǎn)為flv文件 } else if (type == 1) { String avifilepath = processAVI(type); if (avifilepath == null) return false;// avi文件沒有得到 status = processFLV(avifilepath);// 將avi轉(zhuǎn)為flv } return status; } private static int checkContentType() { String type = PATH.substring(PATH.lastIndexOf(".") + 1, PATH.length()) .toLowerCase(); // ffmpeg能解析的格式:(asx,asf,mpg,wmv,3gp,mp4,mov,avi,flv等) if (type.equals("avi")) { return 0; } else if (type.equals("mpg")) { return 0; } else if (type.equals("wmv")) { return 0; } else if (type.equals("3gp")) { return 0; } else if (type.equals("mov")) { return 0; } else if (type.equals("mp4")) { return 0; } else if (type.equals("asf")) { return 0; } else if (type.equals("asx")) { return 0; } else if (type.equals("flv")) { return 0; } // 對ffmpeg無法解析的文件格式(wmv9,rm,rmvb等), // 可以先用別的工具(mencoder)轉(zhuǎn)換為avi(ffmpeg能解析的)格式. else if (type.equals("wmv9")) { return 1; } else if (type.equals("rm")) { return 1; } else if (type.equals("rmvb")) { return 1; } return 9; } private static boolean checkfile(String path) { File file = new File(path); if (!file.isFile()) { return false; } return true; } // 對ffmpeg無法解析的文件格式(wmv9,rm,rmvb等), 可以先用別的工具(mencoder)轉(zhuǎn)換為avi(ffmpeg能解析的)格式. private static String processAVI(int type) { List<String> commend = new ArrayList<String>(); commend.add("c:\\ffmpeg\\mencoder"); commend.add(PATH); commend.add("-oac"); commend.add("lavc"); commend.add("-lavcopts"); commend.add("acodec=mp3:abitrate=64"); commend.add("-ovc"); commend.add("xvid"); commend.add("-xvidencopts"); commend.add("bitrate=600"); commend.add("-of"); commend.add("avi"); commend.add("-o"); commend.add("c:\\ffmpeg\\output\\a.avi"); try { ProcessBuilder builder = new ProcessBuilder(); builder.command(commend); builder.start(); return "c:\\ffmpeg\\output\\a.avi"; } catch (Exception e) { e.printStackTrace(); return null; } } // ffmpeg能解析的格式:(asx,asf,mpg,wmv,3gp,mp4,mov,avi,flv等) private static boolean processFLV(String oldfilepath) { if (!checkfile(PATH)) { System.out.println(oldfilepath + " is not file"); return false; } // 文件命名 Calendar c = Calendar.getInstance(); String savename = String.valueOf(c.getTimeInMillis())+ Math.round(Math.random() * 100000); List<String> commend = new ArrayList<String>(); commend.add("c:\\ffmpeg\\ffmpeg"); commend.add("-i"); commend.add(oldfilepath); commend.add("-ab"); commend.add("56"); commend.add("-ar"); commend.add("22050"); commend.add("-qscale"); commend.add("8"); commend.add("-r"); commend.add("15"); commend.add("-s"); commend.add("600x500"); commend.add("c:\\ffmpeg\\output\\a.flv"); try { Runtime runtime = Runtime.getRuntime(); Process proce = null; String cmd = ""; String cut = " c:\\ffmpeg\\ffmpeg.exe -i " + oldfilepath + " -y -f image2 -ss 8 -t 0.001 -s 600x500 c:\\ffmpeg\\output\\" + "a.jpg"; String cutCmd = cmd + cut; proce = runtime.exec(cutCmd); ProcessBuilder builder = new ProcessBuilder(commend); builder.command(commend); builder.start(); return true; } catch (Exception e) { e.printStackTrace(); return false; } } }

    接下來是我自己經(jīng)過修改后的代碼:

    javaimport java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.Calendar; import java.util.List; public class ConvertVideo {private static String inputPath = "";private static String outputPath = "";private static String ffmpegPath = "";public static void main(String args[]) throws IOException {getPath();if (!checkfile(inputPath)) {System.out.println(inputPath + " is not file");return;}if (process()) {System.out.println("ok");}}private static void getPath() { // 先獲取當前項目路徑,在獲得源文件、目標文件、轉(zhuǎn)換器的路徑File diretory = new File("");try {String currPath = diretory.getAbsolutePath();inputPath = currPath + "\\input\\test.wmv";outputPath = currPath + "\\output\\";ffmpegPath = currPath + "\\ffmpeg\\";System.out.println(currPath);}catch (Exception e) {System.out.println("getPath出錯");}}private static boolean process() {int type = checkContentType();boolean status = false;if (type == 0) {System.out.println("直接轉(zhuǎn)成flv格式");status = processFLV(inputPath);// 直接轉(zhuǎn)成flv格式} else if (type == 1) {String avifilepath = processAVI(type);if (avifilepath == null)return false;// 沒有得到avi格式status = processFLV(avifilepath);// 將avi轉(zhuǎn)成flv格式}return status;}private static int checkContentType() {String type = inputPath.substring(inputPath.lastIndexOf(".") + 1, inputPath.length()).toLowerCase();// ffmpeg能解析的格式:(asx,asf,mpg,wmv,3gp,mp4,mov,avi,flv等)if (type.equals("avi")) {return 0;} else if (type.equals("mpg")) {return 0;} else if (type.equals("wmv")) {return 0;} else if (type.equals("3gp")) {return 0;} else if (type.equals("mov")) {return 0;} else if (type.equals("mp4")) {return 0;} else if (type.equals("asf")) {return 0;} else if (type.equals("asx")) {return 0;} else if (type.equals("flv")) {return 0;}// 對ffmpeg無法解析的文件格式(wmv9,rm,rmvb等),// 可以先用別的工具(mencoder)轉(zhuǎn)換為avi(ffmpeg能解析的)格式.else if (type.equals("wmv9")) {return 1;} else if (type.equals("rm")) {return 1;} else if (type.equals("rmvb")) {return 1;}return 9;}private static boolean checkfile(String path) {File file = new File(path);if (!file.isFile()) {return false;}return true;}// 對ffmpeg無法解析的文件格式(wmv9,rm,rmvb等), 可以先用別的工具(mencoder)轉(zhuǎn)換為avi(ffmpeg能解析的)格式.private static String processAVI(int type) {List<String> commend = new ArrayList<String>();commend.add(ffmpegPath + "mencoder");commend.add(inputPath);commend.add("-oac");commend.add("lavc");commend.add("-lavcopts");commend.add("acodec=mp3:abitrate=64");commend.add("-ovc");commend.add("xvid");commend.add("-xvidencopts");commend.add("bitrate=600");commend.add("-of");commend.add("avi");commend.add("-o");commend.add(outputPath + "a.avi");try {ProcessBuilder builder = new ProcessBuilder();Process process = builder.command(commend).redirectErrorStream(true).start();new PrintStream(process.getInputStream());new PrintStream(process.getErrorStream());process.waitFor();return outputPath + "a.avi";} catch (Exception e) {e.printStackTrace();return null;}}// ffmpeg能解析的格式:(asx,asf,mpg,wmv,3gp,mp4,mov,avi,flv等)private static boolean processFLV(String oldfilepath) {if (!checkfile(inputPath)) {System.out.println(oldfilepath + " is not file");return false;}List<String> command = new ArrayList<String>();command.add(ffmpegPath + "ffmpeg");command.add("-i");command.add(oldfilepath);command.add("-ab");command.add("56");command.add("-ar");command.add("22050");command.add("-qscale");command.add("8");command.add("-r");command.add("15");command.add("-s");command.add("600x500");command.add(outputPath + "a.flv");try {// 方案1 // Process videoProcess = Runtime.getRuntime().exec(ffmpegPath + "ffmpeg -i " + oldfilepath // + " -ab 56 -ar 22050 -qscale 8 -r 15 -s 600x500 " // + outputPath + "a.flv");// 方案2Process videoProcess = new ProcessBuilder(command).redirectErrorStream(true).start();new PrintStream(videoProcess.getErrorStream()).start();new PrintStream(videoProcess.getInputStream()).start();videoProcess.waitFor();return true;} catch (Exception e) {e.printStackTrace();return false;}} }class PrintStream extends Thread {java.io.InputStream __is = null;public PrintStream(java.io.InputStream is) {__is = is;} public void run() {try {while(this != null) {int _ch = __is.read();if(_ch != -1) System.out.print((char)_ch); else break;}} catch (Exception e) {e.printStackTrace();} } }

    問題

    原文的代碼中有一個很大的問題,便是不知道視頻轉(zhuǎn)換到底什么時候結束。看原文中的這兩處代碼:

    98行處

    builder.command(commend); builder.start(); return "c:\\ffmpeg\\output\\a.avi";

    145行處

    builder.start(); return true;

    在進程開始之后,直接就返回結果了。要知道,這樣的寫法,是不會阻塞當前進程的,也就是說,當然程序返回的時候,轉(zhuǎn)碼程序(ffmpeg和mencoder)還在執(zhí)行。如果需要mencoder進行中間轉(zhuǎn)碼,那原文中的寫法會造成在avi文件還未轉(zhuǎn)換完成時,程序就調(diào)用了ffmpeg進行轉(zhuǎn)換。而對于最終的flv文件,我們也無法知道到底是什么時候轉(zhuǎn)換好的,這顯然是無法滿足我們的業(yè)務需求的 。

    解決方案

    最先想到的辦法自然就是阻塞當前進程(主進程),實例代碼:

    Process process = new ProcessBuilder(command).start(); process.waitFor(); return true;

    采用這種的方案運行程序,發(fā)現(xiàn)視頻轉(zhuǎn)到十幾秒的時候就不轉(zhuǎn)了,但是程序還沒返回,打開進程管理器一開,ffmpeg進程還在,內(nèi)存還占著,但是CPU為0。

    當時不知道什么原因,在網(wǎng)上查了半天,才明白這是死鎖了,但是不知道是什么原因造成的。當時就一直覺得死鎖是waitFor()函數(shù)造成了,看來用它來判斷子進程是否結果是不行了,所以又在網(wǎng)上查了半天其他判斷子進程結束的辦法(這里其實就已經(jīng)走彎路了)。有人說可以用exitValue(),于是就有了下面的代碼:

    Process process = new ProcessBuilder(command).start(); while (true) {try {if (process.exitValue() == 0)break;}catch (IllegalThreadStateException e) {continue;} } return true;

    當子進程沒有結束的時候,如果執(zhí)行exitValue()就會拋出異常,我采用的辦法是捕獲這個異常然后不去理他,直到程序結束exitValue()返回0為止。但是,還是失敗了,出現(xiàn)的情況和用waitFor()方式時的一模一樣,我才覺得可能是另外的原因,在去google,發(fā)現(xiàn)可能是是由于JVM只提供有限緩存空間,當外部程序(子進程)的輸出流超出了這個有限空間而父進程又不讀出這些數(shù)據(jù),子進程會被阻塞waitFor()永遠都不會返回,就會造成死鎖。

    官方解釋:

    Because some native platforms only provide limited buffer size for standard input and output streams, failure to promptly write the input stream or read the output stream of the subprocess may cause the subprocess to block, and even deadlock.

    知道問題了就要對癥下藥(其實當時我也不知道這是不是就是我遇到的問題,只能各種打散彈了,打中了算)。關于如何讀出子進程的輸出流,如何解決這個死鎖,網(wǎng)上的辦法都大同小異,寫的比較好的可以看這個地址。

    于是程序被改成這樣:

    Process process = new ProcessBuilder(command).start();new PrintStream(process.getInputStream()).start();process.waitFor(); PrintStream類如下:class PrintStream extends Thread {java.io.InputStream __is = null;public PrintStream(java.io.InputStream is) {__is = is;} public void run() {try {while(this != null) {int _ch = __is.read();if(_ch != -1) System.out.print((char)_ch); else break;}} catch (Exception e) {e.printStackTrace();} } }

    運行,發(fā)現(xiàn)還是不對,癥狀和之前的一模一樣,我還以為是不是輸出流太多了,一個線程讀的不夠快(好吧,真的很傻很天真,人被逼急了真的什么想法都有),于是我就再開了幾個一模一樣的線程,結果還是一樣。

    就在我快要放棄的時候,在百度知道上,看了個無關痛癢的例子,于是做了個小修改,在進程啟動之前,重定向了下錯誤輸出流,如下:

    Process videoProcess = new ProcessBuilder(command).redirectErrorStream(true).start();new PrintStream(videoProcess.getInputStream()).start();videoProcess.waitFor();return true;

    然后,然后,然后就可以了,凌亂。。。

    結論

    其實有兩種寫法可以解決這個問題,這種事像我上面那樣寫,還有一種如下:

    Process videoProcess = new ProcessBuilder(command).start();new PrintStream(videoProcess.getErrorStream()).start();new PrintStream(videoProcess.getInputStream()).start();videoProcess.waitFor();return true;

    其實道理還是一樣的,就是讀出ffmpeg的輸出流,避免ffmpeg的輸出流塞滿緩存造成死鎖。但是不知道為什么,ffmpeg的輸出信息是在錯誤輸出流里面的,我看了下控制臺打印結果,發(fā)現(xiàn)只是一些當前轉(zhuǎn)換狀態(tài)的信息,并沒有錯誤,令人費解。

    在Process類中,getInputStream用來獲取進程的輸出流,getOutputStream用來獲取進程的輸入流,getErrorStream用來獲取進程的錯誤信息流。為了保險起見,在讀出的時候,最好把子進程的輸出流和錯誤流都讀出來,這樣可以保證清空緩存區(qū)。

    其實,我深刻地感覺到,這些解決的問題的經(jīng)歷是標準的散彈式編程,打到哪算哪,以后引以為戒。

    總結

    以上是生活随笔為你收集整理的Java+Windows+ffmpeg实现视频转换的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

    日韩av中文 | 国产精品久久久久影院日本 | 国产精品美女久久久久久网站 | 国产又粗又猛又色 | 久久久精品欧美 | 国产小视频在线播放 | 99精品在线免费观看 | 黄色影院在线免费观看 | 13日本xxxxxⅹxxx20 | 久草在线费播放视频 | 成 人 黄 色 视频 免费观看 | 国产精品久久在线观看 | 波多野结衣电影一区 | 最近中文字幕免费 | 在线视频观看成人 | 激情欧美网| 久久精视频 | 五月网婷婷| 国产色久 | 中文字幕激情 | 伊人宗合| 国产精品va视频 | 亚洲伊人网在线观看 | 成人免费视频视频在线观看 免费 | 黄色大片国产 | 中文av在线免费观看 | 亚洲美女视频网 | 日本久久精品视频 | 黄视频色网站 | 97久久久免费福利网址 | 国产丝袜一区二区三区 | 国产精品麻豆视频 | 又污又黄的网站 | 日韩精品1区2区 | 免费一级日韩欧美性大片 | 日韩视频在线不卡 | 在线观看av大片 | 黄色大全免费网站 | 亚洲视频资源在线 | 蜜臀精品久久久久久蜜臀 | 国产一二区在线观看 | 九七视频在线观看 | av免费在线免费观看 | 日韩免费久久 | 91精品国 | 午夜婷婷在线播放 | 蜜桃传媒一区二区 | 国产成人a亚洲精品v | 五月婷婷av在线 | 亚洲午夜精品一区 | 中文字幕乱码亚洲精品一区 | 五月天激情视频 | 免费观看一级视频 | 免费在线一区二区 | 欧美日韩视频网站 | 天天射天天操天天干 | 色网站视频 | 成人在线观看免费视频 | 热久久国产 | 99久久国产免费,99久久国产免费大片 | 在线免费色视频 | 亚洲精品www久久久久久 | 国产高清永久免费 | 日韩有码第一页 | 亚洲精品777 | 日本一区二区免费在线观看 | 亚洲国产中文在线观看 | 热久久免费视频精品 | 99久久久成人国产精品 | 综合网天天射 | 18久久久久| 久久久久在线视频 | 国产免费黄视频在线观看 | 国产日韩精品一区二区在线观看播放 | 国产高清免费在线播放 | 中文字幕色在线 | 免费黄色在线网址 | 免费看国产视频 | 国产午夜精品一区二区三区在线观看 | 玖玖999| 91字幕 | 免费观看www视频 | 特片网久久| 96亚洲精品久久 | www.日日操.com| 狠狠做深爱婷婷综合一区 | 久久久精品影视 | 国产97色在线 | 欧美少妇影院 | 香蕉视频最新网址 | 国产精品久久久久久一二三四五 | 欧美va在线观看 | 五月婷婷中文网 | 欧美污在线观看 | 日本中文字幕视频 | 99久久www免费 | 九九九在线观看视频 | 精品视频999 | 久久久久久久久久免费视频 | 天天干天天想 | 国产高清视频在线播放一区 | 成年人在线免费看片 | 欧美一进一出抽搐大尺度视频 | 91中文字幕网 | 97看片| 免费成人av | 成人在线免费av | 精品国产免费人成在线观看 | 天堂资源在线观看视频 | 国产精品毛片久久久久久久 | 国产91影院 | 亚洲理论在线 | 成人av网站在线 | 欧美日韩1区 | 好看av在线| 丁香资源影视免费观看 | 又黄又刺激视频 | 欧美大香线蕉线伊人久久 | 日韩精品在线视频 | 黄色一级大片在线观看 | 成人免费看片98欧美 | 激情综合六月 | 色先锋av资源中文字幕 | 亚洲国产精品日韩 | 久久午夜电影 | 美女久久网站 | 亚洲一区视频免费观看 | av在线播放网址 | 在线观看国产www | av一区在线| 国产精品9区 | 综合网伊人 | 天天操天天爽天天干 | 日本在线观看视频一区 | 欧美激情精品久久久久久 | 国产尤物在线视频 | 日韩二区在线播放 | 天天操天天添天天吹 | 911精品视频 | 国产精在线 | 狠狠操精品 | 视频在线观看亚洲 | 久久免费视频国产 | 综合久久五月天 | 婷婷久久婷婷 | 免费观看www视频 | 九九免费精品 | 五月婷婷在线综合 | 成人性生交视频 | 亚洲综合在线五月 | 在线观看黄色免费视频 | 人人舔人人爽 | 99国产在线 | 亚洲少妇久久 | 日韩在线免费视频 | 成人av影视观看 | 在线观看中文字幕亚洲 | 黄色小说网站在线 | 日韩av中文在线 | 黄色av免费看 | 狠狠干婷婷色 | 在线观看精品 | 中文字幕日本特黄aa毛片 | 国产电影黄色av | 国产精品久久久久av | 男女男视频 | 成人国产精品久久久春色 | 成年人在线免费视频观看 | 波多野结衣电影久久 | 四虎在线永久免费观看 | 99久久99久久免费精品蜜臀 | 国产视频久久久久 | 国产黄影院色大全免费 | 色婷婷色| 成人高清在线观看 | 草久在线视频 | 亚洲精品网站 | av中文字幕日韩 | 天天综合成人 | 四虎影视成人精品 | 国产黄色精品在线 | 国产精品乱码在线 | 五月天久久综合网 | 精品美女久久久久久免费 | 91在线色| aaa日本高清在线播放免费观看 | 国产麻豆精品传媒av国产下载 | 日日摸日日爽 | av在线一| 99视频在线精品国自产拍免费观看 | 婷婷视频在线播放 | 最近久乱中文字幕 | 日韩电影一区二区三区在线观看 | 久久精品影片 | 黄色大片av| 午夜视频亚洲 | 精品国产乱码久久久久久1区二区 | 国产久草在线观看 | 9999精品| 亚洲精品国偷拍自产在线观看蜜桃 | 99r在线观看 | 亚洲经典视频在线观看 | 日韩艹| 国产在线播放观看 | 久久亚洲综合国产精品99麻豆的功能介绍 | 免费黄a大片 | 人人爽人人射 | 色综合天天射 | 亚洲1区 在线 | 视频一区二区三区视频 | 亚洲va在线va天堂va偷拍 | 日日爽天天 | 五月综合网站 | 亚洲精品久久久久久中文传媒 | 日本精品在线视频 | 久久99精品国产99久久 | 国产亚洲婷婷 | 欧美精品亚洲精品日韩精品 | 麻豆传媒在线视频 | 伊人永久| 国产又粗又猛又爽 | 人人爱爱人人 | 在线观看免费黄视频 | 有码中文字幕在线观看 | 久久人操| 国产 一区二区三区 在线 | 最新av在线免费观看 | 国产系列精品av | 欧美精品久久久久久 | 99re8这里有精品热视频免费 | 久久成人高清 | 精品国产伦一区二区三区观看方式 | 日韩视频在线不卡 | 久亚洲 | 欧美精品久久久久久久久久 | 婷婷丁香在线视频 | 色婷婷免费视频 | 中文在线资源 | 成人在线观看你懂的 | 日韩高清毛片 | 欧美大片mv免费 | 麻豆国产视频下载 | 视频在线观看一区 | 激情综合亚洲精品 | 欧美日韩精品网站 | 91在线九色| 成人国产精品久久久春色 | 97视频免费播放 | 日韩中文免费视频 | 99成人精品 | 国产视频99| 丁香高清视频在线看看 | 91香蕉国产在线观看软件 | 久热电影 | 国产福利精品一区二区 | 久久99热精品这里久久精品 | 五月天婷婷综合 | 免费av大全 | 人人插人人澡 | 免费看一级黄色 | 色综合天天综合网国产成人网 | 中文在线亚洲 | 在线国产一区 | 超碰公开在线 | 亚洲色图 校园春色 | av成人免费 | 99久久婷婷国产一区二区三区 | 久草国产精品 | 深夜精品福利 | av大片网站 | 国产精品一区二区av影院萌芽 | 久久爽久久爽久久av东京爽 | 亚洲精品五月天 | 日韩免费不卡视频 | 国产一区高清在线观看 | 欧美精品亚州精品 | 国产精品麻豆果冻传媒在线播放 | 久久免费在线观看 | 91免费网站在线观看 | 99草视频在线观看 | 国产精品1024| 久草免费在线视频 | 黄色av电影在线观看 | 午夜电影av | 中文字幕在线播放日韩 | 久久深夜 | 在线免费观看黄色 | 蜜臀久久99精品久久久无需会员 | 色婷婷狠狠操 | 精品久久久精品 | 国产专区在线看 | 国产美女视频免费观看的网站 | 精品国产欧美 | 九九热国产 | 一区二区三高清 | 精品夜夜嗨av一区二区三区 | 九九久久婷婷 | 亚洲女欲精品久久久久久久18 | 久久久久久毛片精品免费不卡 | 日韩精品免费一区 | 国产成人一区二区精品非洲 | 久久激情视频 | 在线岛国av | 日韩一级电影在线观看 | 日韩国产精品久久久久久亚洲 | 精品国产1区2区 | 91视频免费| 国产极品尤物在线 | 99精品免费在线 | 日日操操| 天天天天爽 | 日韩欧美在线一区二区 | 国产一级二级在线播放 | 最近中文字幕久久 | 91看片麻豆| 久久免费av电影 | 中文字幕免费高清 | 99久久精品无免国产免费 | 麻豆视频一区 | 成人黄色av免费在线观看 | 国产精品免费不卡 | 免费av视屏| 欧美日韩国产在线观看 | 丁香五月亚洲综合在线 | a黄色大片 | 中文字幕黄色网 | 天天操导航 | 欧美日韩国产二区 | 精品视频在线看 | 在线免费观看国产精品 | 国产精品国内免费一区二区三区 | 国产精品美乳一区二区免费 | 国产视频不卡一区 | 欧美午夜a | 波多野结衣视频网址 | 在线免费看黄色 | 久久av网址 | 国产在线毛片 | 91探花在线 | 欧美作爱视频 | 国产在线播放一区 | 久久高清免费 | 黄网站色 | 国产视频精品网 | 最近2019中文免费高清视频观看www99 | 国产精品久久伊人 | 亚洲激情视频在线 | 欧美国产日韩一区二区三区 | 久久人人艹 | 亚洲第一区精品 | 国产亚洲亚洲 | 97**国产露脸精品国产 | av再线观看 | 久久人人97超碰国产公开结果 | 免费看成人 | 人人澡澡人人 | 激情欧美一区二区三区 | 91在线免费播放 | 精品国产一二三四区 | 国产精品久久久久久久久蜜臀 | 成年人视频免费在线 | 97偷拍在线视频 | 91精品国产成人观看 | 亚洲欧美日韩精品久久奇米一区 | 一区二区三区韩国免费中文网站 | 国产高潮久久 | 亚洲欧美视频在线播放 | 91视频免费国产 | 最新国产中文字幕 | 国产中文字幕一区二区三区 | 国产在线无 | 亚洲精品网站 | 国产色综合天天综合网 | 欧洲精品码一区二区三区免费看 | 亚洲视频在线免费观看 | 国产高清日韩欧美 | 久久免费视频99 | 中文字幕成人在线 | 麻豆精品视频 | 久草视频99 | 在线观看一区 | 日本高清中文字幕有码在线 | 精品国偷自产国产一区 | 91日韩在线视频 | 黄色激情网址 | 精品久久久久久久久久久院品网 | 日本黄色免费电影网站 | 天天躁日日 | 亚洲视频axxx | 99re视频在线观看 | 色综合久久久网 | 久久试看 | 最近免费在线观看 | 丁香花在线观看视频在线 | 久久久国产在线视频 | 精品嫩模福利一区二区蜜臀 | 成人av高清在线观看 | 天天干天天操av | 69国产精品视频免费观看 | 成人小视频在线免费观看 | av网站手机在线观看 | 天天综合网国产 | 欧美另类xxxxx | 国产视频在| 91最新地址永久入口 | 视频国产在线观看18 | 在线看国产 | 国产亚洲精品日韩在线tv黄 | 久久99欧美 | 中文字幕av有码 | 日韩av偷拍| 免费在线成人 | 久久综合视频网 | 毛片网在线播放 | 手机av网站 | 天堂av在线网站 | 人人模人人爽 | 91在线中文| 亚洲更新最快 | 国产麻豆视频 | 亚洲精品中文字幕在线 | 91精品对白一区国产伦 | 91精品中文字幕 | 国产精品 亚洲精品 | 国产精品久久久久永久免费观看 | 免费影视大全推荐 | 四川妇女搡bbbb搡bbbb搡 | 天天操网址 | 国产精品久久久亚洲 | 99热在线国产 | 日韩高清国产精品 | 婷婷六月中文字幕 | 日韩精品aaa | 国产亚洲欧美在线视频 | 久久精品一二三区白丝高潮 | 久久久www成人免费精品 | 久久久久欠精品国产毛片国产毛生 | 欧美少妇xxx | 国产精品久久久久久久久久久免费看 | 国产视频丨精品|在线观看 国产精品久久久久久久久久久久午夜 | 欧美色图一区 | 国产成人免费观看久久久 | 婷婷久久一区二区三区 | av无限看 | 黄色的网站在线 | 伊人狠狠色丁香婷婷综合 | www.超碰| 日本女人的性生活视频 | 欧美精品999| 尤物97国产精品久久精品国产 | 日本精品免费看 | 黄网站大全 | 日韩在线网址 | 国产最新网站 | 日韩二区在线观看 | 999男人的天堂 | 国产精品久久久久999 | 一级成人在线 | 午夜三级理论 | 国产亚洲永久域名 | 免费黄色在线网站 | 国产精品系列在线 | 日韩欧美精品在线 | 国产成人精品久 | 国产亚洲精品久久久久久移动网络 | 中文字幕91视频 | 国产亚洲字幕 | 日韩久久视频 | 97品白浆高清久久久久久 | 最新精品视频在线 | 丁香婷婷激情网 | 日日操网| 国产中文字幕在线观看 | 欧美日韩国产免费视频 | 干 操 插 | 中文字幕一区二区三区四区视频 | 日本精品小视频 | 狠狠操天天干 | 久久久综合色 | 天天插天天爱 | 欧美激情视频一二区 | 99视频在线精品国自产拍免费观看 | 激情图片qvod | 欧美国产日韩一区二区三区 | av电影在线观看完整版一区二区 | 亚洲精品久久久久久久蜜桃 | 成人av网页| 久久国产免费 | 久久精品高清视频 | 免费能看的黄色片 | 亚洲码国产日韩欧美高潮在线播放 | 国产亚洲激情视频在线 | 亚洲午夜精品福利 | 精品国产1区 | 99久久久国产精品免费99 | 在线观看一| 中文字幕一区二区三区在线观看 | 国产色一区 | av高清在线观看 | 中文理论片| 在线中文日韩 | 久久国产一区二区 | 黄色午夜| 免费视频网| 中文在线资源 | 亚洲最新av | 久草在线免费看视频 | 中文资源在线观看 | 在线观看日韩精品 | 亚洲精品在线看 | 国产精品原创 | 欧美少妇18p | 日韩精品一区二区久久 | 亚洲少妇激情 | a天堂免费 | 99久久毛片| 久久久久久福利 | 久久免费精彩视频 | 色综合久久88色综合天天 | 亚洲精品视频在线免费播放 | 国产a级片免费观看 | 狠狠干夜夜爽 | 免费毛片一区二区三区久久久 | 免费在线观看亚洲视频 | 日日操操 | 天海翼一区二区三区免费 | 在线免费观看亚洲视频 | 综合色中文 | 超碰日韩在线 | 中文字幕乱码视频 | 日日夜夜天天综合 | 中文字幕一区二区三区四区在线视频 | 精品96久久久久久中文字幕无 | 国产精品九九久久久久久久 | 国产热re99久久6国产精品 | 99re6热在线精品视频 | 亚洲精品h| 粉嫩av一区二区三区四区五区 | 国产精品地址 | 韩国av免费在线观看 | 久久成人国产精品 | 欧美少妇的秘密 | 成人一级 | 国产中文字幕网 | 色婷婷丁香 | 日韩精品视频第一页 | 成片视频免费观看 | 精品国产91亚洲一区二区三区www | 日韩电影在线观看一区二区三区 | 久久免费观看视频 | 在线色资源 | 欧美久久久久久久久久久久久 | 色干综合 | 久久精品亚洲精品国产欧美 | 国产中的精品av小宝探花 | 在线视频欧美日韩 | 日韩精品国产一区 | www.在线看片.com | 麻豆系列在线观看 | 久久成年人 | 在线中文字幕电影 | 国产高清免费在线观看 | 狠狠色丁香久久综合网 | 少妇视频在线播放 | 久久五月婷婷综合 | 国产91精品久久久久 | 97在线视频观看 | 在线小视频你懂得 | 中文字幕在线看 | 99视频在线精品 | 97在线精品国自产拍中文 | 久久男人中文字幕资源站 | 国产精品久久久网站 | 日本久久久精品视频 | 日韩成人不卡 | 亚洲欧美国产精品18p | 亚洲精品小视频 | 日本aaaa级毛片在线看 | 国产精品中文在线 | 在线观看免费黄色 | 在线观看免费版高清版 | 91中文字幕视频 | 91精品办公室少妇高潮对白 | 久热电影 | 久久夜靖品 | www.国产视频 | 国产精品久久久久久久久毛片 | 九九九九热精品免费视频点播观看 | 国内视频在线 | 免费在线观看视频一区 | 欧美另类网站 | 亚洲最新视频在线 | 亚洲色图 校园春色 | 亚洲狠狠婷婷 | 国产精品a久久 | 国产成人中文字幕 | 国内久久精品视频 | 日本韩国精品一区二区在线观看 | 亚洲天堂香蕉 | 九九热有精品 | 91高清在线 | 91高清在线看 | 免费99视频 | 久久国产精品二国产精品中国洋人 | 日韩电影在线观看一区二区 | 婷婷丁香在线 | 午夜久久影院 | www.色爱 | 成人性生交大片免费观看网站 | 人人爽久久涩噜噜噜网站 | 久久精品国亚洲 | 伊人资源视频在线 | 91麻豆精品国产自产在线游戏 | 成人a视频在线观看 | 久久久久网址 | 能在线看的av | 99在线视频播放 | 五月天狠狠操 | 国产一区二区精品久久 | 91成人亚洲 | 中文字幕免费观看 | 久久一区国产 | 最新午夜电影 | 夜夜摸夜夜爽 | 91久久精品一区二区三区 | 国产成人精品在线播放 | 久久婷亚洲五月一区天天躁 | 在线黄色国产电影 | 国产又粗又猛又黄又爽的视频 | 久草精品网 | 天天射综合 | 亚洲精品tv久久久久久久久久 | 国产xxxx| 黄色一集片 | 成人资源网 | 91天天操 | 操处女逼 | 欧美一级久久久久 | 欧美极度另类性三渗透 | 人人澡av| 综合色伊人 | 韩国一区在线 | 麻豆视频免费入口 | 久久精品一级片 | 韩国三级在线一区 | 欧美一二在线 | 国产视频高清 | 婷婷视频 | 一区二区av | 在线国产91| h视频在线看 | 欧美日韩免费在线视频 | 欧洲成人av | 伊人狠狠操 | 曰韩在线| 国产精品一区二区三区电影 | 国产午夜精品福利视频 | 手机成人av在线 | 久久综合狠狠综合久久激情 | 国产一级高清视频 | 特级毛片在线 | 久艹在线免费观看 | 亚洲一级片 | www.久久久精品 | 国产成人精品亚洲 | 欧美一级片免费在线观看 | 亚洲国产精品视频在线观看 | 很黄很黄的网站免费的 | www.日日日.com | 在线综合 亚洲 欧美在线视频 | 五月婷婷综合网 | 午夜av大片 | 激情欧美一区二区免费视频 | 国产一级在线免费观看 | 毛片区 | 不卡av在线播放 | 91mv.cool在线观看 | 国产 欧美 日本 | 婷婷中文在线 | 九九九九九九精品 | 97免费公开视频 | 不卡国产在线 | 午夜丰满寂寞少妇精品 | 中文字幕在线看视频国产 | 久久久久久久久久久成人 | 精品国产免费av | 少妇精品久久久一区二区免费 | 亚洲va欧美va | 精品国产一区二区三区不卡 | 狠狠狠狠狠狠天天爱 | 欧美影院久久 | 日韩大陆欧美高清视频区 | 成年人视频在线观看免费 | 麻豆影视在线观看 | 福利视频导航网址 | 国产精品理论片在线观看 | 天天干天天操天天搞 | 欧美美女视频在线观看 | 91社区国产高清 | 国产麻豆精品传媒av国产下载 | 国产尤物视频在线 | 成人资源站 | 国产午夜在线 | 日韩一区二区免费视频 | 三级av网站 | 国产精品黄 | 99久久99热这里只有精品 | 人人爽人人澡人人添人人人人 | 欧美性天天| 91麻豆精品国产91久久久无限制版 | 国产美女被啪进深处喷白浆视频 | 99热在线精品观看 | 国产在线观看免费 | av在线免费观看网站 | 亚洲japanese制服美女 | 中文字幕免费观看全部电影 | 四月婷婷在线观看 | 色全色在线资源网 | 久久久免费观看完整版 | 中文字幕在线字幕中文 | 九九爱免费视频 | 国产精品入口a级 | 免费色视频 | 国产护士hd高朝护士1 | 日韩在线观看视频中文字幕 | 日韩黄在线观看 | 国产在线精品观看 | 中文字幕第| 欧美成年网站 | 精品欧美小视频在线观看 | 国产一区在线免费观看视频 | 玖操| 国产一级在线观看 | 国产精品亚洲综合久久 | 国产区 在线 | 91网在线观看 | 黄色a视频免费 | 亚洲成人资源网 | 国产精品久久久久久爽爽爽 | 91看片成人 | 国产亚洲字幕 | 亚洲精品国产精品国自产观看 | 日批视频在线观看免费 | 欧美日韩电影在线播放 | 精品在线视频一区二区三区 | 国产a免费 | 99精品久久99久久久久 | 天天操月月操 | 亚洲成年人在线播放 | av色综合网| 在线免费精品视频 | 黄色av影院 | 国产精品第52页 | 中文日韩在线 | 91手机视频 | 亚洲精选国产 | 日韩av不卡在线观看 | 亚洲人成人99网站 | 国产淫片免费看 | 黄色电影在线免费观看 | 免费黄色av. | 中文字幕国产视频 | 国产黄色一级片 | 亚洲综合在| 黄色福利网 | 91精品国产九九九久久久亚洲 | 97视频免费播放 | 亚洲影视九九影院在线观看 | 91在线porny国产在线看 | 欧美成人日韩 | 久久黄色免费视频 | 日韩在线视频网站 | 亚州精品在线视频 | 丁香婷婷综合网 | 久草在线资源网 | 国产精品视频观看 | 精品伦理一区二区三区 | 国产小视频你懂的在线 | 久久综合久久综合九色 | 久久99国产精品视频 | 国产亚洲精品电影 | 久久久久久高潮国产精品视 | 黄色免费在线视频 | 婷婷国产在线 | 国产中文字幕一区 | 中文字幕视频在线播放 | 99精品视频99| 免费成人看片 | 亚洲精品乱码久久久久久久久久 | 日韩高清免费电影 | 亚洲午夜不卡 | 视频国产 | 国产91精品欧美 | 久久综合欧美精品亚洲一区 | 亚洲专区视频在线观看 | 欧美精品免费视频 | 青青啪 | 国产午夜麻豆影院在线观看 | 中文字幕在线一二 | 日韩久久久久久久久久 | 欧美极品在线播放 | 人人玩人人弄 | 久久精品一区二区三区视频 | 久久久久久久久久久久久影院 | 日韩在线免费观看视频 | 免费av观看网站 | 午夜精品久久久久久久99热影院 | 欧美伦理一区二区三区 | 久艹在线免费观看 | 久久久精品福利视频 | 一区免费视频 | 成人黄色大片在线免费观看 | 亚洲国产精品电影在线观看 | 视频国产精品 | 国产黄 | 人人玩人人添人人澡97 | 中文字幕欧美激情 | 99视频在线观看免费 | 国产麻豆视频免费观看 | 久久99热这里只有精品国产 | 免费在线观看av的网站 | 色综合久久久久综合体桃花网 | 国产自制av | 国产在线传媒 | 天天干天天干天天色 | 香蕉视频一级 | 久久精品欧美 | 天天操天天操天天操 | av成人亚洲 | 1000部国产精品成人观看 | .国产精品成人自产拍在线观看6 | 91av久久 | 国产精品久久久久久久久久三级 | 久久久亚洲网站 | 国内成人av | 精品国产一区二区三区在线观看 | 久久经典国产 | 日韩精品免费专区 | 精品美女国产在线 | 亚洲日韩欧美一区二区在线 | 午夜视频欧美 | 久久99精品久久久久久清纯直播 | 午夜视频欧美 | 久久综合色一综合色88 | 精品嫩模福利一区二区蜜臀 | 日韩在线精品一区 | 九色激情网| 亚洲成人网在线 | 国产精品白虎 | 欧美色就是色 | 国产美女在线精品免费观看 | 四虎在线观看精品视频 | 亚洲国产欧洲综合997久久, | 日韩激情中文字幕 | 亚洲精品乱码久久久久v最新版 | 91亚洲精品久久久蜜桃 | 欧美精品久久久久久久 | 久久久久久久免费观看 | 国产一区在线视频 | 精品国内 | 成人黄色影片在线 | 精品免费久久久久 | 91av视频在线观看 | 成人av影院在线观看 | 国产精品a成v人在线播放 | 久久久久免费观看 | 精品国产欧美一区二区三区不卡 | 久久综合九色综合欧美狠狠 | 亚洲精品高清视频 | 九九视频网站 | 欧美日韩免费网站 | 天天射天天操天天 | 久久伦理 | 日韩在线 | 亚洲国产精彩中文乱码av | 久久精品观看 | 伊人天天狠天天添日日拍 | 97电影在线看视频 | 九草在线观看 | 国产免费又爽又刺激在线观看 | 九九色在线观看 | 91av电影| 午夜视频在线观看一区二区 | 国产精品久久久久久久久久99 | 欧美精品中文在线免费观看 | 99国产一区 | 国产精品av在线 | 精品国内自产拍在线观看视频 | 亚洲国内精品 | 欧美性受极品xxxx喷水 | 天天操偷偷干 | 国产人成在线观看 | 成年人免费看片 | 9999毛片 | 亚洲国产高清在线 | 久草a视频| 日韩免费三级 | 天堂v中文 | 亚洲乱亚洲乱亚洲 | 在线电影日韩 | 久久精品国亚洲 | 久久精品毛片基地 | 一区二区精品视频 | 中文字幕在线观看你懂的 | 天天操天天摸天天射 | 日韩视频中文字幕 | 久久都是精品 | 黄色a视频| 日日骑| 91亚洲精品久久久蜜桃借种 | 中文字幕在线播放一区二区 | av在线播放国产 | 9999在线 | 国产在线一区二区 | 国产黄色视 | 一级全黄毛片 | 欧美精品999 | 国外av在线| 免费影视大全推荐 | 国产五月色婷婷六月丁香视频 | 免费欧美高清视频 | 色射色| 久久精品xxx | 夜夜澡人模人人添人人看 | 亚洲精品综合久久 | 国产精品久久一区二区三区, | 中文在线www| 麻豆传媒在线免费看 | 久久久久久久综合色一本 | 9幺看片 | 麻豆视频免费播放 | 999在线视频 | 绯色av一区 | 国产精品私人影院 | 懂色av一区二区在线播放 | 不卡的av| 久久黄页 | 国产一区在线视频播放 | 中文字幕精品三级久久久 | 欧美精品中文在线免费观看 | 国内精品99 | 国产成人三级三级三级97 | 日韩av中文字幕在线免费观看 | 99婷婷| 亚洲精品动漫成人3d无尽在线 | 成人av播放| 开心色插 | 亚洲婷婷综合色高清在线 | 久久免费观看少妇a级毛片 久久久久成人免费 | 99久久精品午夜一区二区小说 | 国产精品福利在线观看 | 国产在线观看国语版免费 | 久久精品中文字幕免费mv | 久章操| 天天爽天天摸 | 99久久99久久精品国产片 | 中文字幕2021 | 欧美福利片在线观看 | 午夜免费福利片 | 99精品国产99久久久久久97 | 成人久久网 | 国产白浆视频 | 伊人久久在线观看 | 五月婷婷久久综合 | 日韩免费在线播放 | 亚洲精品一区二区在线观看 | 免费在线观看午夜视频 | 免费日p视频 | 18做爰免费视频网站 | 狠狠躁夜夜躁人人爽超碰91 | 四虎在线免费观看 | 欧美一级片在线播放 | 日韩精品一区二区三区在线视频 | 久久久久亚洲精品成人网小说 | 99久久夜色精品国产亚洲96 | 在线不卡中文字幕播放 | 午夜aaaa | 天堂视频中文在线 | 婷婷丁香视频 | 国产精品久久久毛片 | 热re99久久精品国产66热 | 国产福利午夜 | 亚洲第一中文网 | 亚洲国产视频网站 | 日本精品中文字幕在线观看 | 韩国av三级| 色婷婷激情电影 | www.色com| 九七在线视频 | 99精品国产高清在线观看 | 97超碰资源 | 丁香午夜| 超碰97人人干 | 国产成人精品亚洲a | 高清不卡免费视频 | 日韩中文字幕视频在线观看 | 99视频免费在线观看 | 精品国产aⅴ麻豆 |