当前位置: 首页 > news >正文

南京网站设计价格wordpress不显示网站标题

南京网站设计价格,wordpress不显示网站标题,做网页的素材网站,哔哩哔哩视频免费视频大全实时流和普通文件 1 实时流 实时流编码时,我们一般不进行b帧编码,但是文件存储时为了减小大小,会增加b帧,实时流只带了I,P帧,那就会好很多 2 普通文件 很多文件带了b帧,所以要使用解码时间去同…

实时流和普通文件

1 实时流
实时流编码时,我们一般不进行b帧编码,但是文件存储时为了减小大小,会增加b帧,实时流只带了I,P帧,那就会好很多
2 普通文件
很多文件带了b帧,所以要使用解码时间去同步,如果使用pts,很多人一定会被其时间搞混。

我们可以正确使用AVFrame 的pts 和pkt-dts 去保存正常的时间,如果不给其正确赋值,那么值就如下所示,是novalue。
在这里插入图片描述
那么获取pts和dts 去赋值给avframe就行了,注意时间基。如果不进行时间延时,那么文件会被cpu 快速读完,这就看cpu有多强了,当然,为了仅仅是测试,当然可以直接使用帧率,间隔时间延时就行,如果做播放器就不能这样了,我们要严格掐时间,按照秒表去对。

int main()
{c_test test;std::thread t([&test]() {// 在这里编写你的匿名函数的代码std::cout << "Hello from the new thread!" << std::endl;test.func_init("G:/record/A1_.mp4");test.Start();});while (1){AVFrame* f = test.GetData();if (f != NULL){int h = f->height;int w = f->width;cv::Mat mat(h, w, CV_8UC3,f->data[0]);cv::Mat matBGR;cv::cvtColor(mat, matBGR,cv::COLOR_RGB2BGR/* cv::COLOR_BGR2YUV_I420*/);cv::imshow("show", matBGR);std::cout << "the pts is :" << f->pts<<std::endl;av_freep(&f->data[0]);av_frame_free(&f);}if (cv::waitKey(30) == 'q')break;}test.Stop();std::cout << "end of this thread" << std::endl;//test.func_seek(10);t.join();
}

以上代码的RGB到BGR的转化其实没有必要使用, 实际播放的时候,我们直接渲染RGB24,RGBA,甚至YUV,NV12 都可以,这里为了方便,把这个转化成了BGR24,不过是想让opencv 直接渲染,由于opencv 中 bgr的rgb的颜色交换,播放时看起来不舒服,所以转化一下更符合实际,不转化也没什么。如果不想转化,甚至直接使用nv12,yuv420,rgb24,为了方便演示可以使用sdl去播放,如果对opengl熟悉,自己就写一段代码去播放。文章可以到我其他的文章里面找,我应该都写过。

正确的播放延时

获取时间基

	AVRational time_base = input_ctx->streams[video_stream]->time_base;AVRational time_base_q = { 1,AV_TIME_BASE }; // AV_TIME_BASE_Q;

要正确播放,一定要使用dts,也就是解码时间,而非pts,对于带b帧的视频来说一定是如此。

if (v_isrealtime == false && video_stream == packet.stream_index)
{//这里需要更加精确的计算if (v_starttime == -1)v_starttime = av_gettime();//av_usleep(30 * 1000);int64_t pts_time = av_rescale_q(packet.dts, time_base, time_base_q);if (v_startptstime == -1)v_startptstime = pts_time;int64_t N = av_gettime() - v_starttime;int64_t S = pts_time - v_startptstime;if (S > N){av_usleep(S-N);std::cout << "sleep:" << S - N << std::endl;}
}

播放测试的时候可以使用pc上有秒表卡住时间,没有就使用手机也可以,两个相差一直是同样的描述,持续时间长一点

在这里插入图片描述

正确的同步

同步时一定要使用系统时间和播放时间相对应,如果文件有跳帧拖拉进度条和快放的需求,更加要注意,其实以上代码已经包含了跳帧和快放的基本需求,研究一下就知道了。

http://www.yayakq.cn/news/79839/

相关文章:

  • 五合一自助建站网站天辰工程信息网
  • 卖机票的网站怎么做万彩动画大师
  • 网站有标题东莞免费企业网站模板推广
  • 想做网站去哪里做装修建材网站模板
  • 河北建设广州分公司网站西安网站制作 西安彩铃400电话
  • 手机网站建设推广广州海珠发布
  • 厦门海沧区建设局网站制作网站怎么做
  • 信阳做网站的公司专业定制网站开发
  • 地图 添加到网站宠物网站设计案例
  • 网站有哪些区别是什么意思最新软件开发国家标准
  • 搜索引擎友好的网站有哪些特点什么是网站什么是网站建设
  • 网站开发费用怎么账务处理上海企业名录地址电话
  • 哪家微信网站建设好上海娱乐场所关门
  • asp制作网站黄骅市怎么读
  • 成都代做网站校园网站建设管理
  • 怎么确定网站的关键词石家庄网站建设系统
  • 网站没权重教育机构排名全国十大教育机构排名
  • 网站开发公司 广告词在南海建设工程交易中心网站
  • 网站推广营销应该怎么做二级网站怎么建
  • 自己做一个商城网站怎么做网站开发个人总结
  • 网站服务器上的跳转选择怎么做凡科网代理登陆
  • 商城网站怎么做的网站被采集
  • 广东住房和城乡建设厅网站贵阳网站开发推荐
  • 网站商城开发天津it外包公司
  • 网站建设的目标及服务对象wordpress路径爆出
  • 手机网站菜单网页怎么做的邀请注册推广赚钱的app
  • 摄影网站都有什么地方网站总结
  • 网站从建设到赚钱的流程阿里云怎么建设网站
  • 网站内容有哪些上海装修公司排名榜前30名
  • 成都网站优化实战网站建设太难了