view loader/ldt_keeper.h @ 34309:119af6360b00

Discard frames where the size does not match the AVCodecContext width/height. This avoids possible crashes on video size changes. The problem is that we reinitialize the vo on get_buffer but due to codec delay libavcodec might still return frames with the old size afterwards, which the vo might no longer be able to handle. Ideally libavcodec should not show this behaviour, since it requires that any application using DR1 can handle frames of different sizes simultaneously - which seems a bit extreme.
author reimar
date Mon, 05 Dec 2011 18:08:29 +0000
parents 6506ce7ba414
children
line wrap: on
line source

#ifndef MPLAYER_LDT_KEEPER_H
#define MPLAYER_LDT_KEEPER_H

extern void *fs_seg;

typedef struct {
  void* fs_seg;
  char* prev_struct;
} ldt_fs_t;

void Setup_FS_Segment(void);
ldt_fs_t* Setup_LDT_Keeper(void);
void Restore_LDT_Keeper(ldt_fs_t* ldt_fs);

#endif /* MPLAYER_LDT_KEEPER_H */