QQ语音视频传输原理

时间:2022-08-13 08:42:52
QQ语音视频传输原理是什么?
视频是一帧一帧发还是怎样?
我想把视频的包都截取下来然后还原成一个视频文件,请问怎么做啊

32 个解决方案

#1


QQ使用的是流格式,用TCP连接后传输播放的。边缓冲边播放。不是做成图再传的

#2


mark 

好象一般都是用流壓縮模式

#3


gz

#4


是tcp连接吗?据我所知道的好像是用udp的,应用层用sip协议
还有流格式能具体说一下吗?每一个视频数据包能完整的显示一幅图吗?如果我把视频的包都截取了应该怎么把数据生成一个视频文件呢。。。
望大家告知~~

#5


该回复被版主删除

#6


楼上的大哥能不能发一份你的代码给我
email:softbiao@163.com

#7


UDP传输,流媒体处理原理《==》边缓冲边播放,可通过RAW_SOCKET 截获数据包,然后解析合包

#8


现在难点就是不知道如何解析出视频的数据,而且也不知道能否合成一个视频文件来

#9


先采集视频黄和音频信号,然后传输到对方,然后播放。

没有用到文件吧。

#10


我想把传输的所有视频信息生成一个视频文件
那我问具体点吧,就是视频的内容在包的具体什么地方,除去那些长度,类型啊什么的字段

#11


gz

#12


顶一下,QQ视频传输协议是什么?有谁研究过

#13


QQ使用的是UDP,关于格式解析,只有去找个截包工具,截了之后慢慢分析,没有其它办法

#14


看来也只有这样了,如果谁分析过的可以共享一下啊,顺便问下,传输的视频数据都是编码后的数据吗?tcodecv5/90000编码有谁知道~~

#15


一般都是先缓冲再播放,无论是视频还是音频

#16


去看下direct show and direct sound

#17


qq的视频编码应该是H.263,你抓包后要把视频数据分离出来,解压缩,转换,可能是(YUV-》BMP24格式),最好用DirectShow,可以保存文件

#18


我抓包分析了,它的编码应该是采用tcodecv5编码,找不到关于这个编码的资料
还有就是分离出来后采用什么样的方式解压缩,又是采用什么方式转换呢,谢谢

#19


刚开始接触所以有好些问题不太明白,希望大家帮忙~

#20


up

#21


我看QQ加密已经头都晕了  不知道该怎么继续啊

#22


它的文本好像是加密的,就不知道它的语音视频数据是否加密了~

#23


hehe

#24


算了,我还是自己解决吧~~
问个简单的问题,谁回答了就马上结贴~
我编译了directshow sample的ball例子,命令行下注册regsvr32 ball.ax,没任何提示,不知道是否成功,但是我在GraphEdit里看不到Bouncing ball这个filter,有谁知道怎么弄吗?
我的GraphEdit是网上下的绿色版~~

#25


或者有谁知道manifest版本的问题吗?
我生成的ball.ax.manifest里面的version='8.0.50608.0'
然后在manifests目录下找不到对应的版本,用的是vs2005。。。。。

#26


regsvr32 ball.ax注册出现的错误
---------------------------
Microsoft Visual C++ Runtime Library
---------------------------
Runtime Error!

Program: C:\WINDOWS\system32\regsvr32.exe

R6034

An application has made an attempt to load the C runtime library incorrectly.
Please contact the application's support team for more information.

#27


如果注册成功会弹出一个消息条的
你重编译一下,选release
QQ或其他所有IM的音视频都是一帧一帧的,可以抓下来,但要知道他们的协议才能正确组织数据.如果数据包前32个字节可能存其他信息,后面才是视频数据.如果不清楚的话,前32字节无法解码,音视频就有问题.

#28


终于有人回复了~~~
release的我也编译过了,还是一样的错误,网上一些人说是manifest的问题,但也没弄好,不知道还有什么办法没
QQ的音视频数据我已有进展了,现在只剩下解码和如何播放的问题了

#29


解码用ffmpeg,不用费心去写什么filter,得到一帧就解一帧好了
你根本就没必要去搞那个ball.ax
播放可以用DirectShow,当然也可以用GDI直接画出来。

#30


用ffmpeg可以解码吗?从数据包里分析得出采用的是tcodecv5这种编码,不知道是否能行
怎么用GraphEdit将一帧来解码然后播放,哪个source filter可以支持一帧数据的二进制文件
或者有什么库函数可以生成wmv、avi等文件,也就是说不用关心这些文件的结构而直接将我的视频数据填充到wmv、avi等文件里去,这样我就可以通过GraphEdit来调试了
谢谢sxcong(sxcong)~~

#31


可能用TCP,应该用UDP

#32


感兴趣..路过

正在看tcp/udp方面的东西
也准备研究下qq

#1


QQ使用的是流格式,用TCP连接后传输播放的。边缓冲边播放。不是做成图再传的

#2


mark 

好象一般都是用流壓縮模式

#3


gz

#4


是tcp连接吗?据我所知道的好像是用udp的,应用层用sip协议
还有流格式能具体说一下吗?每一个视频数据包能完整的显示一幅图吗?如果我把视频的包都截取了应该怎么把数据生成一个视频文件呢。。。
望大家告知~~

#5


该回复被版主删除

#6


楼上的大哥能不能发一份你的代码给我
email:softbiao@163.com

#7


UDP传输,流媒体处理原理《==》边缓冲边播放,可通过RAW_SOCKET 截获数据包,然后解析合包

#8


现在难点就是不知道如何解析出视频的数据,而且也不知道能否合成一个视频文件来

#9


先采集视频黄和音频信号,然后传输到对方,然后播放。

没有用到文件吧。

#10


我想把传输的所有视频信息生成一个视频文件
那我问具体点吧,就是视频的内容在包的具体什么地方,除去那些长度,类型啊什么的字段

#11


gz

#12


顶一下,QQ视频传输协议是什么?有谁研究过

#13


QQ使用的是UDP,关于格式解析,只有去找个截包工具,截了之后慢慢分析,没有其它办法

#14


看来也只有这样了,如果谁分析过的可以共享一下啊,顺便问下,传输的视频数据都是编码后的数据吗?tcodecv5/90000编码有谁知道~~

#15


一般都是先缓冲再播放,无论是视频还是音频

#16


去看下direct show and direct sound

#17


qq的视频编码应该是H.263,你抓包后要把视频数据分离出来,解压缩,转换,可能是(YUV-》BMP24格式),最好用DirectShow,可以保存文件

#18


我抓包分析了,它的编码应该是采用tcodecv5编码,找不到关于这个编码的资料
还有就是分离出来后采用什么样的方式解压缩,又是采用什么方式转换呢,谢谢

#19


刚开始接触所以有好些问题不太明白,希望大家帮忙~

#20


up

#21


我看QQ加密已经头都晕了  不知道该怎么继续啊

#22


它的文本好像是加密的,就不知道它的语音视频数据是否加密了~

#23


hehe

#24


算了,我还是自己解决吧~~
问个简单的问题,谁回答了就马上结贴~
我编译了directshow sample的ball例子,命令行下注册regsvr32 ball.ax,没任何提示,不知道是否成功,但是我在GraphEdit里看不到Bouncing ball这个filter,有谁知道怎么弄吗?
我的GraphEdit是网上下的绿色版~~

#25


或者有谁知道manifest版本的问题吗?
我生成的ball.ax.manifest里面的version='8.0.50608.0'
然后在manifests目录下找不到对应的版本,用的是vs2005。。。。。

#26


regsvr32 ball.ax注册出现的错误
---------------------------
Microsoft Visual C++ Runtime Library
---------------------------
Runtime Error!

Program: C:\WINDOWS\system32\regsvr32.exe

R6034

An application has made an attempt to load the C runtime library incorrectly.
Please contact the application's support team for more information.

#27


如果注册成功会弹出一个消息条的
你重编译一下,选release
QQ或其他所有IM的音视频都是一帧一帧的,可以抓下来,但要知道他们的协议才能正确组织数据.如果数据包前32个字节可能存其他信息,后面才是视频数据.如果不清楚的话,前32字节无法解码,音视频就有问题.

#28


终于有人回复了~~~
release的我也编译过了,还是一样的错误,网上一些人说是manifest的问题,但也没弄好,不知道还有什么办法没
QQ的音视频数据我已有进展了,现在只剩下解码和如何播放的问题了

#29


解码用ffmpeg,不用费心去写什么filter,得到一帧就解一帧好了
你根本就没必要去搞那个ball.ax
播放可以用DirectShow,当然也可以用GDI直接画出来。

#30


用ffmpeg可以解码吗?从数据包里分析得出采用的是tcodecv5这种编码,不知道是否能行
怎么用GraphEdit将一帧来解码然后播放,哪个source filter可以支持一帧数据的二进制文件
或者有什么库函数可以生成wmv、avi等文件,也就是说不用关心这些文件的结构而直接将我的视频数据填充到wmv、avi等文件里去,这样我就可以通过GraphEdit来调试了
谢谢sxcong(sxcong)~~

#31


可能用TCP,应该用UDP

#32


感兴趣..路过

正在看tcp/udp方面的东西
也准备研究下qq