摄像头avcodec-凯发app官方网站

凯发app官方网站-凯发k8官网下载客户端中心 | | 凯发app官方网站-凯发k8官网下载客户端中心
  • 博客访问: 1235525
  • 博文数量: 76
  • 博客积分: 1959
  • 博客等级: 上尉
  • 技术积分: 2689
  • 用 户 组: 普通用户
  • 注册时间: 2007-11-19 12:07
个人简介

樽中酒不空

文章分类

全部博文(76)

文章存档

2020年(4)

2019年(1)

2017年(2)

2016年(2)

2015年(7)

2014年(11)

2013年(13)

2012年(18)

2011年(2)

2010年(16)

相关博文
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·

分类: c/c

2016-01-08 10:19:57

从摄像头采集视频, 调用avcodec_encode_video2编码成h264后,保存裸流到 .264文件,发现播放不正常,一般是比较快。
仔细看官方的例子,在decoding_encoding.c里面,
ret = avcodec_encode_video2(c, &pkt, frame, &got_output);之前有一句:
 frame->pts = i;
加上就解决了问题了。

再看官方的libavdevice\xcbgrab.c里面,采集视频编码时,有如下代码:
static void wait_frame(avformatcontext *s, avpacket *pkt)
{
    xcbgrabcontext *c = s->priv_data;
    int64_t curtime, delay;
    int64_t frame_time = av_rescale_q(1, c->time_base, av_time_base_q);


    c->time_frame = frame_time;


    for (;;) {
        curtime = av_gettime();
        delay   = c->time_frame - curtime;
        if (delay <= 0)
            break;
        av_usleep(delay);
    }


    pkt->pts = curtime;
}

很明显,pts就是取时间戳:av_gettime().

相关资源:

这上面的讨论非常好。


阅读(12325) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
")); function link(t){ var href= $(t).attr('href'); href ="?url=" encodeuricomponent(location.href); $(t).attr('href',href); //setcookie("returnouturl", location.href, 60, "/"); }
网站地图