Déréferencement d'un pointeur de type incomplet
Bonjour, j'ai des erreurs de déréférencement de pointeur de type incomplet.
J'ai un fichier video_stage_decoder.h où je déclare la structure suivante :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| typedef struct _video_decoder_config_t
{
vp_api_picture_t *src_picture; // vient de la structure vp_api_picture
vp_api_picture_t *dst_picture; // vient de la structure vp_api_picture
uint32_t num_frames;
uint32_t num_picture_decoded;
uint32_t rowstride;
uint32_t bpp;
bool_t vlibMustChangeFormat;
vlib_stage_decoding_config_t *vlibConf;
vp_api_io_data_t *vlibOut;
mp4h264_config_t *mp4h264Conf;
vp_api_io_data_t *mp4h264Out;
} video_decoder_config_t; |
et le fichier vlib.h définie la structure suivante :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| typedef struct _vp_api_picture_
{
enum PixelFormat format; // camif -> encoder : PIX_FMT_YUV420P
uint32_t width; // camif -> encoder
uint32_t height; // camif -> encoder
uint32_t framerate; // camif -> encoder
uint8_t *y_buf; // camif -> encoder
uint8_t *cb_buf; // camif -> encoder
uint8_t *cr_buf; // camif -> encoder
uint32_t y_pad; // 2* camif_config.y_pad
uint32_t c_pad; // 2* camif_config.c_pad
uint32_t y_line_size;
uint32_t cb_line_size;
uint32_t cr_line_size;
uint32_t vision_complete;
uint32_t complete;
int32_t blockline;
}
vp_api_picture_t; |
J'utilise ces structures dans le fichier video_stage_latency_estimation.c (évidement j'ai include les deux headers précédents ...) aux lignes suivantes :
Code:
1 2 3 4 5 6 7 8 9 10
| struct video_decoder_config_t * vec;
if ( cfg->w != vec->dst_picture->width || cfg->h != vec->dst_picture->height)
{
cfg->w = vec->dst_picture->width;
cfg->h = vec->dst_picture->height;
...
switch (vec->dst_picture->format)
{
...
} |
Voilà, quelqu'un pour m'aider ?
merci d'avance !