午夜视频免费看_日韩三级电影网站_国产精品久久一级_亚洲一级在线播放_人妻体内射精一区二区三区_91夜夜揉人人捏人人添红杏_91福利在线导航_国产又粗又猛又黄又爽无遮挡_欧美日韩一区在线播放_中文字幕一区二区三区四区不卡 _日日夜夜精品视频免费观看_欧美韩日一区二区三区

主頁 > 知識庫 > wma tag 批量修改[原代碼-從wmfsdk中修改]

wma tag 批量修改[原代碼-從wmfsdk中修改]

熱門標(biāo)簽:生化危機(jī)3原版地圖標(biāo)注 電銷客服機(jī)器人價(jià)格 地圖標(biāo)注的聊天案例 江門申請400電話 慶陽電腦外呼系統(tǒng)代理商 智能外呼系統(tǒng)的劣勢 騰訊搜狗地圖標(biāo)注在哪里 泉州呼叫中心外呼系統(tǒng)多少錢 定位地圖標(biāo)注
wma tag 批量修改[原代碼-從wmfsdk中修改]
代碼是自己做音樂站點(diǎn)時(shí)寫的,沒有仔細(xì)檢查,用他修改了近7萬的 wma,mp3暫時(shí)還沒有發(fā)現(xiàn)出錯(cuò)。需要的朋友可以自己修改一下。
效率:5萬音樂 70G音樂數(shù)據(jù)需要差不多3個(gè)多小時(shí),程序沒有優(yōu)化。
編譯環(huán)境: vc6.0 + WMFSDK9(http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmform95/htm/aboutthewindowsmediaformatsdk.asp)
注意:使用前請先做實(shí)驗(yàn),你的音樂數(shù)據(jù)搞壞了我是不責(zé)任的咯~~~
提示:其實(shí)程序本身寫得不是很好,提供的這些資料你能在wma 中嵌入歌詞包括動(dòng)態(tài)歌詞,另外wma 中加入script 可以防止偷連,給需要用的人吧!
包含三個(gè)文件 wmatag.cpp, config.txt, input.txt
config.txt (詳細(xì)請參見MSDN http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmform95/htm/attributelist.asp )
復(fù)制代碼 代碼如下:

FileName
Title
Author
Copyright
CopyrightURL
Description
WM/AlbumTitle
WM/Composer
WM/Lyrics

input.txt (這個(gè)文件是你的批量修改的信息,需要從數(shù)據(jù)庫生成)
復(fù)制代碼 代碼如下:

j:\music\abc\xxxyyy.wma|第十六屆Cash流行曲創(chuàng)作大賽-懶醒|雜錦合輯|版權(quán)為原作者所有,所有音樂收集自互聯(lián)網(wǎng)。|http://www.yoursite.com|yoursite....|第十六屆Cash流行曲創(chuàng)作大賽|yoursite|歌詞
j:\music\abd\yyyyy.wma|毅憂未盡_預(yù)購限量版-左鞋右穿-搶先試聽版|陸毅|版權(quán)為原作者所有,所有音樂收集自互聯(lián)網(wǎng)。|http://www.yoursite.com|xxxyy|毅憂未盡_預(yù)購限量版|yoursite|歌詞
...

wmatag.cpp
復(fù)制代碼 代碼如下:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <tchar.h>
#include <stdio.h>
#include <string.h>
#include <wmsdk.h>
#pragma comment( lib, "wmvcore.lib" )
#pragma comment( lib, "Rpcrt4.lib" )
#define FIELD_NUM        9
#define FIELD_LEN        1024
char __sFileName[ MAX_PATH ];
#ifndef SAFE_RELEASE
#define SAFE_RELEASE( x )       \
    if( NULL != x )             \
    {                           \
        x->Release( );          \
        x = NULL;               \
    }
#endif // SAFE_RELEASE
#ifndef SAFE_DELETE
#define SAFE_DELETE( x )        \
    if( NULL != x )             \
    {                           \
        delete x;               \
        x = NULL;               \
    }
#endif // SAFE_DELETE
#ifndef SAFE_ARRAYDELETE
#define SAFE_ARRAYDELETE( x )   \
    if( NULL != x )             \
    {                           \
        delete [] x;            \
        x = NULL;               \
    }
#endif // SAFE_ARRAYDELETE
#ifndef UNICODE
HRESULT ConvertMBtoWC( LPCTSTR ptszInString, LPWSTR *ppwszOutString )
{
    if( ptszInString == NULL || ppwszOutString == NULL ){
        return( E_INVALIDARG );
    }
    HRESULT hr          = S_OK;
    int     nSizeCount  = 0;
    *ppwszOutString     = NULL;
    do
    {
        //
        // Get the memory reqd for this string
        //
        nSizeCount = MultiByteToWideChar( CP_ACP, 0, ptszInString, -1, NULL, 0 );
        if( 0 ==  nSizeCount )
        {
            hr = HRESULT_FROM_WIN32( GetLastError() );
            break;
        }
        *ppwszOutString = new WCHAR[ nSizeCount ];
        if( NULL == *ppwszOutString )
        {
            hr = HRESULT_FROM_WIN32( GetLastError() );
            break;
        }
        if( 0 == MultiByteToWideChar( CP_ACP, 0, ptszInString, -1, *ppwszOutString, nSizeCount ) )
        {
            hr = HRESULT_FROM_WIN32( GetLastError() );
            break;
        }
    }
    while( FALSE );
    if( FAILED( hr ) )
    {
        SAFE_ARRAYDELETE( *ppwszOutString );
        _tprintf( _T( "Internal error ( hr=0x%08x )\n" ), hr );
    }
    return( hr );
}
#endif // UNICODE
HRESULT editorOpen( WCHAR* _wma_file, IWMMetadataEditor ** ppEditor, IWMHeaderInfo ** ppHeaderInfo )
{
    if( ( NULL == _wma_file ) || ( NULL == ppEditor ) ){
        return( E_INVALIDARG );
    }
    HRESULT hr = S_OK;
    do
    {
        hr = WMCreateEditor( ppEditor );
        if( FAILED( hr ) ){
            _tprintf( _T( "Could not create Metadata Editor ( hr=0x%08x ).\n" ), hr );
            break;
        }
        hr = ( *ppEditor )->Open( _wma_file );
        if( FAILED ( hr ) ){
            _tprintf( _T( "Could not open the file %ws ( hr=0x%08x ).\n" ), 
                _wma_file, hr );
            break;
        }
        if( NULL != ppHeaderInfo ){
            hr = ( *ppEditor )->QueryInterface( IID_IWMHeaderInfo, 
                                                (void **)ppHeaderInfo );
            if( FAILED( hr ) ){
                _tprintf( _T( "Could not QI for IWMHeaderInfo ( hr=0x%08x ).\n" ), hr );
                break;
            }
        }
    }
    while( FALSE );
    return( hr );
}
HRESULT SetAttrib( WCHAR * _wma_file, WCHAR * pName, WCHAR * pValue )
{
        WORD wStreamNum = 0;
        WORD wAttribType = WMT_TYPE_STRING;
    if( ( NULL == _wma_file ) || ( NULL == pName ) || ( NULL == pValue ) ){
        return( E_INVALIDARG );
    }
    HRESULT hr = S_OK;
    IWMMetadataEditor   * pEditor       = NULL;
    IWMHeaderInfo       * pHeaderInfo   = NULL;
    BYTE*               pbAttribValue   = NULL;
    WORD                wAttribValueLen = 0;
    WMT_ATTR_DATATYPE   AttribDataType  = ( WMT_ATTR_DATATYPE ) wAttribType;
    DWORD               dwAttribValue   = 0;
    WORD                wAttribValue    = 0;
    QWORD               qwAttribValue   = 0;
    BOOL                fAttribValue    = 0;
    do
    {
        hr = editorOpen( _wma_file, &pEditor, &pHeaderInfo );
        if(FAILED( hr ) ){
            break;
        }
                /*
                        Attrib type = string...        
                */
        wAttribValueLen = ( wcslen( pValue ) + 1 )* sizeof( WCHAR );
        pbAttribValue = (BYTE *)pValue;
        hr = pHeaderInfo->SetAttribute( wStreamNum,
                                        pName,
                                        AttribDataType,                                        
                                        pbAttribValue,
                                        wAttribValueLen );
        if( FAILED( hr ) ){
            _tprintf( _T( "SetAttribute failed for Attribute name %ws ( hr=0x%08x ).\n" ), 
                pName, hr );
            break;
        }
        hr = pEditor->Flush();
        if( FAILED( hr ) ){
            _tprintf( _T( "Could not flush the file %ws ( hr=0x%08x ).\n" ), 
                _wma_file, hr );
            break;
        }
        hr = pEditor->Close();
        if( FAILED( hr ) ){
            _tprintf( _T( "Could not close the file %ws ( hr=0x%08x ).\n" ), 
                _wma_file, hr );
            break;
        }
    }
    while( FALSE );
    SAFE_RELEASE( pHeaderInfo );
    SAFE_RELEASE( pEditor );
    return( hr );
}
HRESULT __SetAttrib( WCHAR * _wma_file, WCHAR ** pName, WCHAR ** pValue )
{
        WORD wStreamNum = 0;
        WORD wAttribType = WMT_TYPE_STRING;
        int i;
    if( ( NULL == _wma_file ) || ( NULL == pName ) || ( NULL == pValue ) ){
        return( E_INVALIDARG );
    }
    HRESULT hr = S_OK;
    IWMMetadataEditor   * pEditor       = NULL;
    IWMHeaderInfo       * pHeaderInfo   = NULL;
    BYTE*               pbAttribValue   = NULL;
    WORD                wAttribValueLen = 0;
    WMT_ATTR_DATATYPE   AttribDataType  = ( WMT_ATTR_DATATYPE ) wAttribType;
    DWORD               dwAttribValue   = 0;
    WORD                wAttribValue    = 0;
    QWORD               qwAttribValue   = 0;
    BOOL                fAttribValue    = 0;
    do
    {
        hr = editorOpen( _wma_file, &pEditor, &pHeaderInfo );
        if(FAILED( hr ) ){
            break;
        }
                for( i = 1; i < FIELD_NUM; i ++ ){
                                                //SetAttrib( _wma_file, attribNames[ i ], fields[ i ] );
                                                //printf( "%d: %s\n", i, fields[ i ] );
                        /*
                                Attrib type = string...        
                        */
                wAttribValueLen = ( wcslen( pValue[ i ] ) + 1 )* sizeof( WCHAR );
                pbAttribValue = (BYTE *)pValue[ i ];
                hr = pHeaderInfo->SetAttribute( wStreamNum,
                                        pName[ i ],
                                        AttribDataType,                                        
                                        pbAttribValue, 
                                        wAttribValueLen );
                if( FAILED( hr ) ){
                    _tprintf( _T( "SetAttribute failed for Attribute name %ws ( hr=0x%08x ).\n" ), pName[ i ], hr );
                    break;
                }
                }
        hr = pEditor->Flush();
        if( FAILED( hr ) ){
            _tprintf( _T( "Could not flush the file %ws ( hr=0x%08x ).\n" ), 
                _wma_file, hr );
            break;
        }
        hr = pEditor->Close();
        if( FAILED( hr ) ){
            _tprintf( _T( "Could not close the file %ws ( hr=0x%08x ).\n" ), 
                _wma_file, hr );
            break;
        }
    }
    while( FALSE );
    SAFE_RELEASE( pHeaderInfo );
    SAFE_RELEASE( pEditor );
    return( hr );
}
bool get_info( WCHAR **fields, int num , char *input ){
        int seg = 0;
        char *s = input;
        char buffer[ 1024 * 4 ] = { 0x00 };
        __sFileName[ 0 ] = 0x00;
        for( char *p = input; *p != 0x00 ; p ++ ){
                if( *p == '|' ){
                        *p = 0x00;
                        strcpy( buffer, s );
                        if( __sFileName[ 0 ] == 0x00 )
                                strcpy( __sFileName, s );
                HRESULT hr = ConvertMBtoWC( buffer, &fields[ seg ] );
                if( FAILED( hr ) ){
                           break;
                }
                buffer[ 0 ] = 0x00;                
                        //strcpy( fields[ seg ], s );
                        s = p + 1;
                        seg ++;
                        if( seg == num - 1 ){
                                if( *s != 0x00 ){
                                        strcpy( buffer, s );
                                        hr = ConvertMBtoWC( buffer, &fields[ seg ] );
                                        //strcpy( fields[ seg ], s );
                                }
                                break;
                        }
                }
        }
        if( seg == num - 1 )
                return true;
        else
                return false;
}
int loadConfig( WCHAR **attribNames ){
        char buffer[ 1024 ];
        FILE *fp;
        int i = 0;
        HRESULT hr = S_OK;
        fp = fopen( "config.txt", "rb" );
        if( !fp ){
                perror( "fopen( config.txt )" );
                return -1;
        }
        while( !feof( fp )){
                if( fgets( buffer, sizeof( buffer ), fp ) ){
                        if( strlen( buffer ) < 3 )
                                continue;
                        for( int j = 0; j < (int)strlen( buffer ); j ++ ){
                                if( buffer[ j ] == 0x0a || buffer[ j ] == 0x0d )
                                        buffer[ j ] = 0x00;
                        }
                        hr = ConvertMBtoWC( buffer, &attribNames[ i ] );
                        if( FAILED( hr ) )
                                break;
                        else
                                i ++;
                }
        }
        fclose( fp );
        if( FAILED( hr ) )
                return -1;
        else
                return i;
}
 
復(fù)制代碼 代碼如下:

int main( void ){
        WCHAR *fields[ FIELD_NUM ];
        WCHAR *attribNames[ 128 ] = { 0x00 };
        int i;
        int j = 0;
        int fieldNum = loadConfig( attribNames );
        printf( "%d\n", fieldNum );
        for( i = 0; i < 128; i ++ ){
                if( attribNames[ i ] )
                        _tprintf( _T( "%ws %ws\n"), attribNames[ i ], _T( "hello go....") );
        }
        char input[ 1024 * 4 ];
        FILE *fp = fopen( "input.txt", "rb" );
        if( !fp ){
                perror( "fopen( )" );
                return -1;        
        }
        while( !feof( fp ) ){
                input[ 0 ] = 0x00;
                if( fgets( input, sizeof( input ), fp ) ){
                        for( i = 0; i < FIELD_NUM; i ++ )
                                fields[ i ] = NULL;
                        j ++;
                        if( j % 100 == 0 )
                                printf( "files: %d\n", j );
                        bool st = get_info( fields, FIELD_NUM, input );
                        if( st == false )
                                printf( "status: %s\n", st?"true":"false" );
                        //printf( "status: %s\n", st?"true":"false" );
                        if( st ){
                                WCHAR * _wma_file = fields[ 0 ];
                                FILE *fp = fopen( __sFileName, "rb" );
                                if( fp ){
                                        fclose( fp );
                                        //puts( __sFileName );
                                        __SetAttrib( _wma_file, attribNames, fields );
                                        /*
                                        for( i = 1; i < FIELD_NUM; i ++ ){

                                                SetAttrib( _wma_file, attribNames[ i ], fields[ i ] );
                                                //printf( "%d: %s\n", i, fields[ i ] );
                                        }
                                        */
                                }
                        }
                        for( i = 0; i < FIELD_NUM; i ++ )
                                SAFE_ARRAYDELETE( fields[ i ] );                
                }                                
        }
        fclose( fp );
        return 0;
}
 

標(biāo)簽:萍鄉(xiāng) 邢臺 那曲 辛集 來賓 鷹潭 山西 錫林郭勒盟

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《wma tag 批量修改[原代碼-從wmfsdk中修改]》,本文關(guān)鍵詞  wma,tag,批量,修改,原,代碼,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《wma tag 批量修改[原代碼-從wmfsdk中修改]》相關(guān)的同類信息!
  • 本頁收集關(guān)于wma tag 批量修改[原代碼-從wmfsdk中修改]的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    国产精品一区专区| 国产亚洲精品久久久久久| 91一区二区三区在线观看| 国产又黄又猛又爽| 一级片手机在线观看| 水蜜桃色314在线观看| 1区1区3区4区产品乱码芒果精品| 久久精品国产成人精品| 欧美日韩免费不卡视频一区二区三区| 久久精品亚洲一区二区三区浴池| 久久久精品性| 不卡av电影在线| 久久久视频6r| 中文字幕第88页| 伊甸园精品99久久久久久| 国产欧美精品久久久| 色久欧美在线视频观看| 91精品国产91久久久久久一区二区 | 国产成人精品视频免费看| 激情伦成人综合小说| 97色在线视频| 国产一区二区三区在线| 欧美日韩国产三级| 亚洲综合视频网| 99re这里都是精品| 石原莉奈一区二区三区在线观看| 日本免费精品视频| 国产免费久久久久| 中国免费黄色片| 男人天堂成人在线| 韩国黄色一级大片| 精品91免费| 国产精品视频26uuu| 欧美精品午夜视频| 亚洲区在线播放| 6080yy午夜一二三区久久| 亚洲一区免费观看| 国产亚洲欧美日韩在线一区| 激情深爱一区二区| 狠狠人妻久久久久久综合麻豆| 日韩欧美亚洲一区二区三区| 日本爱爱爱视频| 国产精品91av| 亚洲天堂网一区| 69精品丰满人妻无码视频a片| 久久国产精品免费一区| 国产精品日韩欧美大师| 欧美黑人狂野猛交老妇| 中文字幕欧美国内| 亚洲激情免费观看| 91精品欧美综合在线观看最新| 黑人巨大精品欧美一区二区| 亚洲免费在线观看视频| 久久久www免费人成精品| 国产精品一区专区| 麻豆成人av在线| 亚洲 欧美 激情 另类| a毛片在线免费观看| 欧美性猛交xxxx乱大交hd | 一区二区不卡在线视频 午夜欧美不卡' | 国产精品女人网站| 97久久久免费福利网址| 欧美成人合集magnet| 中文字幕不卡在线视频极品| 日韩精品黄色网| 精品少妇一区二区三区在线播放| 欧美日韩国产不卡| 欧美在线制服丝袜| 欧美性猛交xxxx黑人猛交| 亚洲亚洲人成综合网络| 一区二区视频免费在线观看| 中文字幕在线不卡视频| 国产亚洲欧美色| 久久综合久久综合九色| 成人激情黄色小说| 成人一区二区在线观看| 国产精品一区二区在线观看网站| 看国产成人h片视频| 日韩黄色小视频| 亚洲av成人精品毛片| 动漫av一区二区三区| 97人人爽人人爽人人爽| 国产农村妇女毛片精品久久| 91丨porny丨在线中文 | av无码一区二区三区| 美女又黄又免费的视频| 特黄特色免费视频| 国产精品99久久久精品无码| 娇妻高潮浓精白浆xxⅹ| 青青草视频网站| 欧美一区二区三区影院| 免费啪视频在线观看| 91亚洲一线产区二线产区| 韩国三级视频在线观看| 成人免费毛片日本片视频| 亚洲国产精品成人综合久久久| 国产精品无码电影| 亚洲最大成人网站| 影音先锋制服丝袜| 中国1级黄色片| 希岛爱理中文字幕| 久久这里只有精品免费| 日韩av免费网址| 欧美超碰在线观看| 国产v在线观看| 视频污在线观看| 免费不卡在线视频| 国产aⅴ精品一区二区三区色成熟| 国产suv一区二区三区88区| 99久久精品免费| 国产视频一区二区三区在线观看| 国产精品久久久一本精品| 亚洲精品一二三四区| 调教+趴+乳夹+国产+精品| 色综合久久久久综合体| 欧美日产国产精品| 亚洲国产美女精品久久久久∴| 亚洲一区第一页| 欧美裸身视频免费观看| 日本久久久久亚洲中字幕| 91免费欧美精品| 欧美高清视频一区| 天天想你在线观看完整版电影免费| 国产深夜男女无套内射| 日本中文字幕二区| 黄色短视频在线观看| 免费看特级毛片| 精品不卡一区二区| www.麻豆av| 久久精品国产色蜜蜜麻豆| av午夜一区麻豆| 综合久久综合久久| 色激情天天射综合网| 欧美成人a∨高清免费观看| 亚洲一区999| 欧美中文字幕精品| 国产精品一区二区三区观看| 一区二区三区国| 热久久精品国产| 中文成人无字幕乱码精品区| 国产探花在线播放| 亚洲自拍偷拍另类| 免费亚洲电影在线| av色综合久久天堂av综合| 亚洲欧美色图小说| 欧美精选一区二区| 中文精品99久久国产香蕉| 2019中文字幕全在线观看| aa成人免费视频| 中文字幕在线乱| 在线观看免费av网址| 国产精品国产三级国产专业不| 91精品国产乱码久久久张津瑜| 亚洲AV无码乱码国产精品牛牛 | 日韩欧美成人免费视频| 精品国产亚洲一区二区三区在线观看 | 好吊色视频一区二区三区| 欧美交换国产一区内射| 国产suv精品一区二区69| 国产酒店精品激情| 亚洲激情五月婷婷| 欧美一级久久久| 欧美理论片在线观看| 2022国产精品| 丁香六月激情网| 中国极品少妇xxxx| 日韩黄色三级视频| 久久蜜桃精品| 日本一区二区高清| 奇米影视7777精品一区二区| 国产成年人免费视频| 国产喷水吹潮视频www| 久国产精品韩国三级视频| 国产日韩欧美不卡| 欧洲一区在线观看| 日韩小视频在线观看| 91亚洲永久免费精品| 激情五月六月婷婷| 日韩无码精品一区二区| 一级成人黄色片| 精品在线观看视频| 亚洲一区二区三区视频在线播放 | 色综合天天综合网国产成人网| 爱情岛论坛亚洲入口| 亚洲不卡中文字幕无码| 国精品无码人妻一区二区三区| 中文字幕av第一页| 国产一区二区免费看| 亚洲va天堂va国产va久| 亚洲欧美精品中文字幕在线| 国产精品一区二区久久久久| 992tv快乐视频| 性久久久久久久久久| 中文字幕无线码一区| 成人不卡免费av| 国语精品免费视频| 九色精品美女在线| 精品在线视频一区二区| 免费国产成人av| 亚洲精品久久久久久国| 亚洲国产精品国自产拍久久| 91亚洲永久精品| 欧美猛男男办公室激情| 久久久久久一区二区三区| 免费在线成人av电影| 婷婷激情5月天| 中文字幕精品三级久久久| 国产一区二区按摩在线观看| 狠狠色香婷婷久久亚洲精品| 久久久av免费| 日本福利一区二区三区| 无码人妻aⅴ一区二区三区玉蒲团| 亚洲欧美精品一区二区三区| 国产精品一级黄| 欧洲激情一区二区| 97久久超碰福利国产精品…| 一区二区成人国产精品 | 一区二区国产日产| 亚洲av无码一区二区三区网址| 91精品国产乱码久久久| 久久久99精品久久| 亚洲国内精品在线| 亚洲综合中文字幕在线观看| 欧美大尺度做爰床戏| 欧美成人精品欧美一级乱黄| 国产精品12区| 欧美乱妇15p| 国产精品电影久久久久电影网| 男的插女的下面视频| 国产suv一区二区三区| 久久99精品久久久久久动态图| 日韩欧美福利视频| 78m国产成人精品视频| 久无码久无码av无码| 在线免费日韩av| 国产精品亚洲专一区二区三区 | 亚洲精品乱码视频| 国产又粗又猛又爽又黄av| 日韩一级免费毛片| 欧美日韩中文字幕在线视频| 91国产精品电影| 成人在线观看你懂的| 日本少妇bbwbbw精品| 94色蜜桃网一区二区三区| 亚洲精品99久久久久| 久久99精品久久久久久久青青日本 | 成人国产亚洲欧美成人综合网| 日韩欧美高清dvd碟片| 美女一区二区三区| 色婷婷综合久久久中文字幕| 日韩美女在线观看| 国产h视频在线播放| 国产黄色片免费看| 国产清纯美女被跳蛋高潮一区二区久久w | 中文字幕一区二区三区手机版| 国产一区91精品张津瑜| 91精品黄色片免费大全| 91丨九色丨国产| 美女搡bbb又爽又猛又黄www| 亚洲AV无码一区二区三区少妇| 一区二区欧美国产| 国产91精品黑色丝袜高跟鞋| 玩弄japan白嫩少妇hd| 中文字幕在线播放av| 一区二区三区四区精品在线视频| 欧美激情欧美激情在线五月| 欧美亚洲精品一区二区| 天堂av免费在线观看| 亚洲精品日产精品乱码不卡| 久久久亚洲欧洲日产国码aⅴ| 波多野结衣家庭教师在线| 国产又粗又猛又爽又| 尤物在线观看一区| 国产91精品青草社区| 在线免费观看av的网站| 国产黄色av片| 日本精品一区二区三区高清 | 91精品中文在线| 91超薄肉色丝袜交足高跟凉鞋| 色综合免费视频| 欧美高清视频不卡网| 国产一区二区三区四区五区在线| 我和岳m愉情xxxⅹ视频| 国产精品一卡二| 亚洲午夜av电影| 337p亚洲精品色噜噜狠狠p| 国产又黄又爽又色| 一区二区三区在线观看动漫 | 日韩精品电影一区二区| 国产精品一区二区91| 亚洲精品一区二区网址| 国产一二三四五| 高清乱码免费看污| 亚洲成人免费av| 成人黄色大片在线免费观看| 插吧插吧综合网| 国v精品久久久网| 日韩亚洲成人av在线| 国产一区二区三区精彩视频| 精品国自产拍在线观看| 欧美日韩小视频| 欧美精品一区二区三区四区五区| 天天干中文字幕| 国产精品高潮呻吟久久| 欧美在线视频一区| 国产一级免费片| 粉嫩13p一区二区三区| 久久久精品久久久| 9l视频白拍9色9l视频| 日韩成人午夜电影| 日韩精品免费在线视频| 激情五月婷婷六月| 国产成人免费看一级大黄| 欧美日韩在线不卡| 欧美日韩一区二区三| 91视频免费网址| 精品欧美激情精品一区| 成人动漫视频在线观看完整版| 美国黄色片视频| 成人欧美一区二区三区| 国产精品视频一区国模私拍| www在线观看免费视频| 久久久国产一区二区三区四区小说 | av直播在线观看| 久久亚洲精精品中文字幕早川悠里| 久久男人的天堂| 日本一卡二卡在线| 2021国产精品久久精品| 2020国产精品视频| 熟女俱乐部一区二区视频在线| 久久精品综合网| 国产精品美女网站| 国产黄a三级三级| 亚洲男人的天堂网| av噜噜色噜噜久久| 日韩经典在线观看| 91成人免费在线视频| 日韩一区国产在线观看| 亚洲一区二区色| 91精品婷婷国产综合久久性色| 992tv快乐视频| 香蕉视频免费在线看| 亚洲色图25p| 少妇一级淫免费播放| www.激情五月.com| 久久免费看少妇高潮v片特黄| 国产中文字幕久久| 久久99久久久欧美国产| 91在线免费视频观看| 国产精品丝袜在线| 欧美日韩成人综合在线一区二区| 在线影院国内精品| 亚洲一区二区国产| 国产一区红桃视频| 国产精品日韩在线播放| 亚洲欧洲一区二区在线观看| 无码粉嫩虎白一线天在线观看 | 亚洲人与黑人屁股眼交| 久久久久久久久久久97| 日韩国产欧美一区二区三区| 亚洲地区一二三色| 久久成人精品电影| 久久国产精品免费一区| 欧美性潮喷xxxxx免费视频看| 蜜乳av中文字幕| 国产绿帽一区二区三区| 色窝窝无码一区二区三区成人网站| 人妻妺妺窝人体色www聚色窝| 国产蜜臀av在线一区二区三区| 欧美日韩中文字幕一区| 精品国产一区二区三区四区在线观看 | 精品成人av一区二区三区| 国产精品污视频| 久久se精品一区精品二区| 欧美视频第一页| 欧美激情综合亚洲一二区| 成人有码在线视频| 日韩免费毛片视频| 欧美波霸videosex极品| 国产视频一区二区三| 久久精品无码一区二区三区| 日韩精品一区二区三区在线| 国产亚洲精品美女久久久久| 国产精品视频26uuu| 特级西西444| 亚洲做受高潮无遮挡| 秋霞av鲁丝片一区二区| 欧美日韩国产精品自在自线| 91最新在线免费观看| 图片区乱熟图片区亚洲| 懂色av蜜桃av| 国产毛片久久久久| 中文字幕在线视频一区| 日韩国产欧美区| 成人在线免费观看一区| 日韩影视精品| 加勒比av中文字幕| 亚洲国产成人精品女人久久| 懂色中文一区二区在线播放| 日本高清不卡aⅴ免费网站| 国产精品视频免费在线| 日本一区二区免费视频| 韩国成人精品a∨在线观看| 亚洲品质视频自拍网| 精品嫩模一区二区三区| 在线观看国产精品入口男同| 欧美日韩中文在线| 国产美女在线精品免费观看| 亚洲狠狠婷婷综合久久久久图片| 国产成人亚洲精品狼色在线|