设为首页收藏本站

AnyChat技术支持论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 8944|回复: 19
打印 上一主题 下一主题

关于anychat视频压缩编码选择

[复制链接]

36

主题

181

帖子

542

积分

高级会员

Rank: 4

积分
542
跳转到指定楼层
楼主
发表于 2015-9-30 19:11:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
你好,今天我们测试视频通话软件时发现远程视频有卡顿的现象,然后打开日志看到视频压缩编码是video init finish:1280x720, YUY2, fps:10, codecid:1 ,这里不是H264编码,请问为什么会是YUY2,是你们默认就是这个编码吗,远程视频传输卡顿和这个有关系吗,怎么样才能设置成H264编码.
另外我们用摄像头查看软件对比了下,如果设置成YUY2的话本地视频就会卡,如果设置成MJPG就会很流畅。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

36

主题

181

帖子

542

积分

高级会员

Rank: 4

积分
542
沙发
 楼主| 发表于 2015-9-30 19:16:11 | 只看该作者
下面是完整的日志:
[2015-09-30 19:06:11(742)]        ---------------------------AnyChat Platform Core SDK Client Log---------------------------
[2015-09-30 19:06:11(743)]        Load BRAnyChatCore.dll success!(V5.3 Build Time:Aug 10 2015 12:20:22)
[2015-09-30 19:06:11(748)]        Load BRMiscUtil.dll success!(V5.3 Build Time:Aug 10 2015 12:20:50)
[2015-09-30 19:06:11(798)]        Load BRMediaUtil.dll success!(V5.3 Build Time:Aug 10 2015 12:20:02)
[2015-09-30 19:06:11(800)]        Load BRMediaShow.dll success!(V5.3 Build Time:Aug 10 2015 12:20:53)
[2015-09-30 19:06:11(802)]        Load BRMediaCore.dll success!(V5.3 Build Time:Aug 10 2015 12:21:04)
[2015-09-30 19:06:11(834)]        Apply video parameter:1280x720, bitrate:1200kbps, quality:3, gop:60, fps:25, preset:3, codec:0
[2015-09-30 19:06:11(850)]        Invoke        Connect(192.168.0.100,8906)=0
[2015-09-30 19:06:11(851)]        Invoke        LoginServer(username=user123)
[2015-09-30 19:06:11(901)]        CheckClientSocketLink         Connect(ip=192.168.0.100,port=8906)
[2015-09-30 19:06:12(012)]        Server version: V5.3(Build Time:2015-08-10 12:21:30, Server OS:Windows)
[2015-09-30 19:06:12(013)]        Message        OnConnect(bSuccess:1, errorcode=0)
[2015-09-30 19:06:12(054)]        Message        OnLoginSystem(userid=-6,errorcode=0,username=user123), msg deliver worked(1)
[2015-09-30 19:06:12(054)]        Invoke        EnterRoom(roomid=1)
[2015-09-30 19:06:12(055)]        Server running time: 1 days, 2 hours, 15 minutes, license mode:0
[2015-09-30 19:06:12(095)]        Connection to streaming media server successfully!(udp delay:15ms)
[2015-09-30 19:06:12(135)]        Message        OnEnterRoom(roomid=1,errorcode=0,siteindex=0)
[2015-09-30 19:06:12(136)]        Message        OnReceiveOnlineUser(count=1,roomid=1)
[2015-09-30 19:06:12(136)]        Invoke        SetVideoPos(dwUserId:-1, hWnd:0xe1a66, l:0, t:0, r:295, b:168)
[2015-09-30 19:06:12(138)]        Invoke        UserCameraControl(userid=-1, bOpen=1, stream=0)
[2015-09-30 19:06:12(138)]        Invoke        UserSpeakControl(userid=-1,bOpen=1)
[2015-09-30 19:06:12(210)]        WaveIn Audio Capture Driver(麦克风 (2- HD Pro Webcam C920))
[2015-09-30 19:06:12(211)]        Audio Init, error:0, device:0, 1, 16000, 16, capmode:0
[2015-09-30 19:06:12(212)]        Audio codec init, handle:1, 11, 1, 16000, 16, 15850
[2015-09-30 19:06:12(226)]        Audio Playback Device Init(0, 1, 16000, 16), WaveOut Playback Driver
[2015-09-30 19:06:12(252)]        Audio FX Status: VAD:1, NS:1, AGC:1, AEC:1
[2015-09-30 19:06:12(377)]        MinCroppingSize(640, 480)        MaxCroppingSize(640, 480)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(378)]        MinCroppingSize(640, 480)        MaxCroppingSize(640, 480)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(379)]        MinCroppingSize(160, 120)        MaxCroppingSize(160, 120)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(379)]        MinCroppingSize(160, 120)        MaxCroppingSize(160, 120)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(380)]        MinCroppingSize(176, 144)        MaxCroppingSize(176, 144)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(381)]        MinCroppingSize(176, 144)        MaxCroppingSize(176, 144)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(382)]        MinCroppingSize(320, 176)        MaxCroppingSize(320, 176)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(382)]        MinCroppingSize(320, 176)        MaxCroppingSize(320, 176)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(383)]        MinCroppingSize(320, 240)        MaxCroppingSize(320, 240)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(384)]        MinCroppingSize(320, 240)        MaxCroppingSize(320, 240)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(384)]        MinCroppingSize(352, 288)        MaxCroppingSize(352, 288)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(385)]        MinCroppingSize(352, 288)        MaxCroppingSize(352, 288)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(386)]        MinCroppingSize(432, 240)        MaxCroppingSize(432, 240)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(386)]        MinCroppingSize(432, 240)        MaxCroppingSize(432, 240)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(387)]        MinCroppingSize(544, 288)        MaxCroppingSize(544, 288)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(388)]        MinCroppingSize(544, 288)        MaxCroppingSize(544, 288)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(389)]        MinCroppingSize(640, 360)        MaxCroppingSize(640, 360)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(389)]        MinCroppingSize(640, 360)        MaxCroppingSize(640, 360)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(390)]        MinCroppingSize(752, 416)        MaxCroppingSize(752, 416)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(391)]        MinCroppingSize(752, 416)        MaxCroppingSize(752, 416)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(392)]        MinCroppingSize(800, 448)        MaxCroppingSize(800, 448)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(392)]        MinCroppingSize(800, 448)        MaxCroppingSize(800, 448)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(393)]        MinCroppingSize(800, 600)        MaxCroppingSize(800, 600)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(394)]        MinCroppingSize(800, 600)        MaxCroppingSize(800, 600)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(394)]        MinCroppingSize(864, 480)        MaxCroppingSize(864, 480)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(395)]        MinCroppingSize(864, 480)        MaxCroppingSize(864, 480)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(396)]        MinCroppingSize(960, 544)        MaxCroppingSize(960, 544)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(397)]        MinCroppingSize(960, 544)        MaxCroppingSize(960, 544)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(397)]        MinCroppingSize(960, 720)        MaxCroppingSize(960, 720)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(398)]        MinCroppingSize(960, 720)        MaxCroppingSize(960, 720)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(398)]        MinCroppingSize(1024, 576)        MaxCroppingSize(1024, 576)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(399)]        MinCroppingSize(1024, 576)        MaxCroppingSize(1024, 576)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(400)]        MinCroppingSize(1184, 656)        MaxCroppingSize(1184, 656)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(400)]        MinCroppingSize(1184, 656)        MaxCroppingSize(1184, 656)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(401)]        MinCroppingSize(1280, 720)        MaxCroppingSize(1280, 720)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(402)]        MinCroppingSize(1280, 720)        MaxCroppingSize(1280, 720)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(402)]        MinCroppingSize(1280, 960)        MaxCroppingSize(1280, 960)        Format(YUY2, 0x32595559)
[2015-09-30 19:06:12(403)]        MinCroppingSize(1280, 960)        MaxCroppingSize(1280, 960)        Format(YUY2, 0x8d2681)
[2015-09-30 19:06:12(404)]        MinCroppingSize(640, 480)        MaxCroppingSize(640, 480)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(405)]        MinCroppingSize(640, 480)        MaxCroppingSize(640, 480)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(406)]        MinCroppingSize(160, 120)        MaxCroppingSize(160, 120)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(406)]        MinCroppingSize(160, 120)        MaxCroppingSize(160, 120)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(407)]        MinCroppingSize(176, 144)        MaxCroppingSize(176, 144)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(408)]        MinCroppingSize(176, 144)        MaxCroppingSize(176, 144)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(408)]        MinCroppingSize(320, 176)        MaxCroppingSize(320, 176)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(409)]        MinCroppingSize(320, 176)        MaxCroppingSize(320, 176)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(410)]        MinCroppingSize(320, 240)        MaxCroppingSize(320, 240)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(411)]        MinCroppingSize(320, 240)        MaxCroppingSize(320, 240)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(411)]        MinCroppingSize(352, 288)        MaxCroppingSize(352, 288)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(412)]        MinCroppingSize(352, 288)        MaxCroppingSize(352, 288)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(413)]        MinCroppingSize(432, 240)        MaxCroppingSize(432, 240)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(414)]        MinCroppingSize(432, 240)        MaxCroppingSize(432, 240)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(415)]        MinCroppingSize(544, 288)        MaxCroppingSize(544, 288)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(415)]        MinCroppingSize(544, 288)        MaxCroppingSize(544, 288)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(416)]        MinCroppingSize(640, 360)        MaxCroppingSize(640, 360)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(417)]        MinCroppingSize(640, 360)        MaxCroppingSize(640, 360)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(418)]        MinCroppingSize(752, 416)        MaxCroppingSize(752, 416)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(418)]        MinCroppingSize(752, 416)        MaxCroppingSize(752, 416)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(419)]        MinCroppingSize(800, 448)        MaxCroppingSize(800, 448)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(420)]        MinCroppingSize(800, 448)        MaxCroppingSize(800, 448)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(421)]        MinCroppingSize(800, 600)        MaxCroppingSize(800, 600)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(422)]        MinCroppingSize(800, 600)        MaxCroppingSize(800, 600)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(423)]        MinCroppingSize(864, 480)        MaxCroppingSize(864, 480)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(424)]        MinCroppingSize(864, 480)        MaxCroppingSize(864, 480)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(425)]        MinCroppingSize(960, 544)        MaxCroppingSize(960, 544)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(425)]        MinCroppingSize(960, 544)        MaxCroppingSize(960, 544)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(426)]        MinCroppingSize(960, 720)        MaxCroppingSize(960, 720)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(427)]        MinCroppingSize(960, 720)        MaxCroppingSize(960, 720)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(428)]        MinCroppingSize(1024, 576)        MaxCroppingSize(1024, 576)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(429)]        MinCroppingSize(1024, 576)        MaxCroppingSize(1024, 576)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(429)]        MinCroppingSize(1184, 656)        MaxCroppingSize(1184, 656)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(430)]        MinCroppingSize(1184, 656)        MaxCroppingSize(1184, 656)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(431)]        MinCroppingSize(1280, 720)        MaxCroppingSize(1280, 720)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(432)]        MinCroppingSize(1280, 720)        MaxCroppingSize(1280, 720)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(433)]        MinCroppingSize(1280, 960)        MaxCroppingSize(1280, 960)        Format(MJPG, 0x47504a4d)
[2015-09-30 19:06:12(433)]        MinCroppingSize(1280, 960)        MaxCroppingSize(1280, 960)        Format(MJPG, 0x8d2181)
[2015-09-30 19:06:12(473)]        Video Config Size(1280, 720)        Format(YUY2, 25fps)
[2015-09-30 19:06:12(536)]        video init finish:1280x720, YUY2, fps:10, codecid:1
[2015-09-30 19:06:13(793)]        video codec init:codec:1, 25fps, 1280x720, bitrate:1200kbps, quality:3, preset:3, gop:60, handle:2
[2015-09-30 19:13:04(640)]        Invoke        LeaveRoom(roomid=1)        Elapse:297 ms
[2015-09-30 19:13:04(689)]        Invoke        LogoutServer(userid=-6)        Elapse:47 ms
[2015-09-30 19:13:04(729)]        Invoke        BRAC_Release        Elapse:31 ms
回复 支持 反对

使用道具 举报

249

主题

2967

帖子

9108

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
9108
板凳
发表于 2015-9-30 19:29:26 | 只看该作者
您好,这个问题应该是摄像头输出数据格式(YUY2、MJPEG)不一致导致的,根据您的描述,该摄像头输出MJPG格式可能兼容性更好!

您可以通过如下API接口指定优先输出MJPEG格式(登录成功之后调用):
  1. DWORD dwPixFmt = BRAC_PIX_FMT_MJPEG;
  2. BRAC_SetSDKOption(BRAC_SO_LOCALVIDEO_PIXFMTCTRL, (CHAR*)&dwPixFmt, sizeof(DWORD));
复制代码
通常来说,YUY2为高清视频格式,MJPEG为编码之后的视频格式,这是属于摄像头输出的,经过AnyChat之后,还需要再编码为H.264进行传输。根据您上面的描述,应该是摄像头输出YUY2就卡顿了,还没有到后期的H.264编码这个环节,建议您更新摄像头的驱动程序、更换计算机操作系统等途径试试,我们有测试C920摄像头,没有出现YUY2卡顿的情况。
回复 支持 反对

使用道具 举报

36

主题

181

帖子

542

积分

高级会员

Rank: 4

积分
542
地板
 楼主| 发表于 2015-9-30 19:43:14 | 只看该作者
admin 发表于 2015-9-30 19:29
您好,这个问题应该是摄像头输出数据格式(YUY2、MJPEG)不一致导致的,根据您的描述,该摄像头输出MJPG格 ...

你好,在C#上具体是怎么设置的?
回复 支持 反对

使用道具 举报

36

主题

181

帖子

542

积分

高级会员

Rank: 4

积分
542
5#
 楼主| 发表于 2015-9-30 19:57:26 | 只看该作者
admin 发表于 2015-9-30 19:29
您好,这个问题应该是摄像头输出数据格式(YUY2、MJPEG)不一致导致的,根据您的描述,该摄像头输出MJPG格 ...

你好,在C#SDK里只有下面几种格式,请问我要选哪个:
public enum PixelFormat{
                BRAC_PIX_FMT_RGB24 = 0,                                                ///< Packed RGB 8:8:8, 24bpp, RGBRGB...(MEDIASUBTYPE_RGB24)
                BRAC_PIX_FMT_RGB32,                                                        ///< 对应于:MEDIASUBTYPE_RGB32,Packed RGB 8:8:8, 32bpp, (msb)8A 8R 8G 8B(lsb), in cpu endianness
                BRAC_PIX_FMT_YV12,                                                        ///< 对应于:MEDIASUBTYPE_YV12,Planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
                BRAC_PIX_FMT_YUY2,                                                        ///< 对应于:MEDIASUBTYPE_YUY2,Packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
                        BRAC_PIX_FMT_YUV420P,                                                ///< Planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
                        BRAC_PIX_FMT_RGB565,                                                ///< 对应于:MEDIASUBTYPE_RGB565
                        BRAC_PIX_FMT_RGB555,                                                ///< 对应于:MEDIASUBTYPE_RGB555
        }
回复 支持 反对

使用道具 举报

249

主题

2967

帖子

9108

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
9108
6#
发表于 2015-9-30 20:33:11 | 只看该作者
PIX_FMT_MJPEG=200
  1. // 视频图像格式定义
  2. enum BRAC_PixelFormat{
  3.         BRAC_PIX_FMT_RGB24 = 0,                                                ///< Packed RGB 8:8:8, 24bpp, RGBRGB...(MEDIASUBTYPE_RGB24)
  4.         BRAC_PIX_FMT_RGB32,                                                        ///< 对应于:MEDIASUBTYPE_RGB32,Packed RGB 8:8:8, 32bpp, (msb)8A 8R 8G 8B(lsb), in cpu endianness
  5.         BRAC_PIX_FMT_YV12,                                                        ///< 对应于:MEDIASUBTYPE_YV12,Planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
  6.         BRAC_PIX_FMT_YUY2,                                                        ///< 对应于:MEDIASUBTYPE_YUY2,Packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
  7.         BRAC_PIX_FMT_YUV420P,                                                ///< Planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
  8.         BRAC_PIX_FMT_RGB565,                                                ///< 对应于:MEDIASUBTYPE_RGB565
  9.         BRAC_PIX_FMT_RGB555,                                                ///< 对应于:MEDIASUBTYPE_RGB555
  10.         BRAC_PIX_FMT_NV12,                                                        ///< Planar YUV 4:2:0, 12bpp, Two arrays, one is all Y, the other is U and V
  11.         BRAC_PIX_FMT_NV21,                                                        ///< Planar YUV 4:2:0, 12bpp, Two arrays, one is all Y, the other is V and U
  12.         BRAC_PIX_FMT_NV16,                                                        ///< YUV422SP
  13.        
  14.         BRAC_PIX_FMT_MJPEG = 200,
  15.         BRAC_PIX_FMT_H264,
  16. };
复制代码
回复 支持 反对

使用道具 举报

36

主题

181

帖子

542

积分

高级会员

Rank: 4

积分
542
7#
 楼主| 发表于 2015-10-1 06:59:28 | 只看该作者

你好,目前客户测试的反馈是把码率从1200降到550,画面卡顿现象就几乎没有了,可是画质肯定会也降低的,请问要怎样才能达到高码率高清视频通话呢?另外客户说他们现在的网络是可以用其他视频软件实现高清视频通话的。
回复 支持 反对

使用道具 举报

249

主题

2967

帖子

9108

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
9108
8#
发表于 2015-10-1 09:23:18 | 只看该作者
如果分辨率为720P,1200k码率会卡吗?
回复 支持 反对

使用道具 举报

249

主题

2967

帖子

9108

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
9108
9#
发表于 2015-10-1 09:24:54 | 只看该作者
另外我们用摄像头查看软件对比了下,如果设置成YUY2的话本地视频就会卡,如果设置成MJPG就会很流畅。
只是本地预览,没有网络传输吧?
回复 支持 反对

使用道具 举报

36

主题

181

帖子

542

积分

高级会员

Rank: 4

积分
542
10#
 楼主| 发表于 2015-10-1 09:55:35 | 只看该作者
admin 发表于 2015-10-1 09:24
只是本地预览,没有网络传输吧?

远程画面有卡顿,本地是流畅的
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|AnyChat ( 粤ICP备13022410号-1 )  

GMT+8, 2024-11-24 04:43 , Processed in 0.177260 second(s), 21 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表