以下情况时使用了GB28181 中 udp发送视频流的情况,有的相机udp丢包比较严重,有的可以,对有问题的相机着重进行分析
read ps
RTP测试工具进一步升级
今天写了一段程序,为了解决花屏的问题,需要知道问题到底在哪里,保存了几百个ps文件,然后读出按照流程保存成h264文件,使用vlc 工具读,有简单跳帧。
int main_ps()
{
int meetkeyframe = 0;
const char* buffer = "j:/ps/h264save%d.264";
char filename[128];
uint8_t* h264buffer = new uint8_t[1024 * 500];
int h264length = 0;
int skip = 0;
FILE* fpw = fopen("j:/out1.264", "wb");
for (int i = 0; i < 2855; i++)
{
sprintf(filename, buffer, i);
FILE* fp = fopen(filename, "rb");
if (fp != NULL)
{
fseek(fp, 0, SEEK_END);
long len = ftell(fp);
fseek(fp, 0, SEEK_SET);
//fread(pp, sizeof(char) * 4, 1, fp);
uint8_t* data = new uint8_t[len];
fread(data, len, 1, fp);
if (*data == 0x00 && *(data + 1) == 0x00 && *(data + 2) == 0x01 && *(data + 3) == 0xba)
{
GetH264FromPs((char*)data, len, (char*)h264buffer, &h264length);
if (h264length > 0)
{
if (m

文章讲述了在GB28181协议中遇到UDP视频流丢包问题的解决方案,通过读取PS和RTP包,分析关键帧并保存为H264,检测RTP包的连续性,发现丢包模式,计划增加RTP协议的可视化分析功能。
最低0.47元/天 解锁文章
4132

被折叠的 条评论
为什么被折叠?



