Mercurial > libavcodec.hg
comparison dv.c @ 2822:fdedaa2e6da4 libavcodec
DV video encoder/decoder doesn't set keyframe and picture type properties patch by (Edward Hervey:bilboed,gmail com)
author | michael |
---|---|
date | Thu, 11 Aug 2005 01:28:04 +0000 |
parents | b2846918585c |
children | d9f4b93e81c5 |
comparison
equal
deleted
inserted
replaced
2821:0f428b024677 | 2822:fdedaa2e6da4 |
---|---|
895 | 895 |
896 if(s->picture.data[0]) | 896 if(s->picture.data[0]) |
897 avctx->release_buffer(avctx, &s->picture); | 897 avctx->release_buffer(avctx, &s->picture); |
898 | 898 |
899 s->picture.reference = 0; | 899 s->picture.reference = 0; |
900 s->picture.key_frame = 1; | |
901 s->picture.pict_type = FF_I_TYPE; | |
900 avctx->pix_fmt = s->sys->pix_fmt; | 902 avctx->pix_fmt = s->sys->pix_fmt; |
901 avctx->width = s->sys->width; | 903 avctx->width = s->sys->width; |
902 avctx->height = s->sys->height; | 904 avctx->height = s->sys->height; |
903 if(avctx->get_buffer(avctx, &s->picture) < 0) { | 905 if(avctx->get_buffer(avctx, &s->picture) < 0) { |
904 av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n"); | 906 av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n"); |
931 if(buf_size < s->sys->frame_size) | 933 if(buf_size < s->sys->frame_size) |
932 return -1; | 934 return -1; |
933 | 935 |
934 c->pix_fmt = s->sys->pix_fmt; | 936 c->pix_fmt = s->sys->pix_fmt; |
935 s->picture = *((AVFrame *)data); | 937 s->picture = *((AVFrame *)data); |
938 s->picture.key_frame = 1; | |
939 s->picture.pict_type = FF_I_TYPE; | |
936 | 940 |
937 s->buf = buf; | 941 s->buf = buf; |
938 c->execute(c, dv_encode_mt, (void**)&dv_anchor[0], NULL, | 942 c->execute(c, dv_encode_mt, (void**)&dv_anchor[0], NULL, |
939 s->sys->difseg_size * 27); | 943 s->sys->difseg_size * 27); |
940 | 944 |