Mercurial > libavcodec.hg
comparison dv.c @ 3777:20545fbb6f7c libavcodec
add some #ifdef CONFIG_ENCODERS/DECODERS
| author | mru |
|---|---|
| date | Wed, 27 Sep 2006 19:54:07 +0000 |
| parents | 18113845d891 |
| children | e1986d9ddc2d |
comparison
equal
deleted
inserted
replaced
| 3776:1843a85123b7 | 3777:20545fbb6f7c |
|---|---|
| 1008 dv_decode_video_segment(s, &s->buf[((chan_slice/27)*6+(chan_slice/3)+chan_slice*5+7)*80 + chan_offset], | 1008 dv_decode_video_segment(s, &s->buf[((chan_slice/27)*6+(chan_slice/3)+chan_slice*5+7)*80 + chan_offset], |
| 1009 &s->sys->video_place[slice*5]); | 1009 &s->sys->video_place[slice*5]); |
| 1010 return 0; | 1010 return 0; |
| 1011 } | 1011 } |
| 1012 | 1012 |
| 1013 #ifdef CONFIG_ENCODERS | |
| 1013 static int dv_encode_mt(AVCodecContext *avctx, void* sl) | 1014 static int dv_encode_mt(AVCodecContext *avctx, void* sl) |
| 1014 { | 1015 { |
| 1015 DVVideoContext *s = avctx->priv_data; | 1016 DVVideoContext *s = avctx->priv_data; |
| 1016 int slice = (size_t)sl; | 1017 int slice = (size_t)sl; |
| 1017 | 1018 |
| 1026 | 1027 |
| 1027 dv_encode_video_segment(s, &s->buf[((chan_slice/27)*6+(chan_slice/3)+chan_slice*5+7)*80 + chan_offset], | 1028 dv_encode_video_segment(s, &s->buf[((chan_slice/27)*6+(chan_slice/3)+chan_slice*5+7)*80 + chan_offset], |
| 1028 &s->sys->video_place[slice*5]); | 1029 &s->sys->video_place[slice*5]); |
| 1029 return 0; | 1030 return 0; |
| 1030 } | 1031 } |
| 1031 | 1032 #endif |
| 1033 | |
| 1034 #ifdef CONFIG_DECODERS | |
| 1032 /* NOTE: exactly one frame must be given (120000 bytes for NTSC, | 1035 /* NOTE: exactly one frame must be given (120000 bytes for NTSC, |
| 1033 144000 bytes for PAL - or twice those for 50Mbps) */ | 1036 144000 bytes for PAL - or twice those for 50Mbps) */ |
| 1034 static int dvvideo_decode_frame(AVCodecContext *avctx, | 1037 static int dvvideo_decode_frame(AVCodecContext *avctx, |
| 1035 void *data, int *data_size, | 1038 void *data, int *data_size, |
| 1036 uint8_t *buf, int buf_size) | 1039 uint8_t *buf, int buf_size) |
| 1066 *data_size = sizeof(AVFrame); | 1069 *data_size = sizeof(AVFrame); |
| 1067 *(AVFrame*)data= s->picture; | 1070 *(AVFrame*)data= s->picture; |
| 1068 | 1071 |
| 1069 return s->sys->frame_size; | 1072 return s->sys->frame_size; |
| 1070 } | 1073 } |
| 1074 #endif | |
| 1071 | 1075 |
| 1072 | 1076 |
| 1073 static inline int dv_write_pack(enum dv_pack_type pack_id, DVVideoContext *c, uint8_t* buf) | 1077 static inline int dv_write_pack(enum dv_pack_type pack_id, DVVideoContext *c, uint8_t* buf) |
| 1074 { | 1078 { |
| 1075 /* | 1079 /* |
| 1240 CODEC_CAP_DR1, | 1244 CODEC_CAP_DR1, |
| 1241 NULL | 1245 NULL |
| 1242 }; | 1246 }; |
| 1243 #endif // CONFIG_DVVIDEO_ENCODER | 1247 #endif // CONFIG_DVVIDEO_ENCODER |
| 1244 | 1248 |
| 1249 #ifdef CONFIG_DVVIDEO_DECODER | |
| 1245 AVCodec dvvideo_decoder = { | 1250 AVCodec dvvideo_decoder = { |
| 1246 "dvvideo", | 1251 "dvvideo", |
| 1247 CODEC_TYPE_VIDEO, | 1252 CODEC_TYPE_VIDEO, |
| 1248 CODEC_ID_DVVIDEO, | 1253 CODEC_ID_DVVIDEO, |
| 1249 sizeof(DVVideoContext), | 1254 sizeof(DVVideoContext), |
| 1252 dvvideo_close, | 1257 dvvideo_close, |
| 1253 dvvideo_decode_frame, | 1258 dvvideo_decode_frame, |
| 1254 CODEC_CAP_DR1, | 1259 CODEC_CAP_DR1, |
| 1255 NULL | 1260 NULL |
| 1256 }; | 1261 }; |
| 1262 #endif |
