view loader/dshow/DS_VideoDecoder.h @ 30272:c6c40936049c

We only need to disable seeking back in ad_ffmpeg when we actually _use_ a parser, not when just needs_parsing is set. Fixes playback of e.g. ADPCM in AVI like http://samples.mplayerhq.hu/avi/imaadpcm.avi
author reimar
date Fri, 15 Jan 2010 21:01:31 +0000
parents 837cd9762b4e
children
line wrap: on
line source

#ifndef MPLAYER_DS_VIDEODECODER_H
#define MPLAYER_DS_VIDEODECODER_H

#include "loader/com.h"
#include "loader/wine/vfw.h"

typedef struct DS_VideoDecoder DS_VideoDecoder;

int DS_VideoDecoder_GetCapabilities(DS_VideoDecoder *this);

DS_VideoDecoder * DS_VideoDecoder_Open(char* dllname, GUID* guid, BITMAPINFOHEADER * format, int flip, int maxauto);

void DS_VideoDecoder_Destroy(DS_VideoDecoder *this);

void DS_VideoDecoder_StartInternal(DS_VideoDecoder *this);

void DS_VideoDecoder_StopInternal(DS_VideoDecoder *this);

int DS_VideoDecoder_DecodeInternal(DS_VideoDecoder *this, const void* src, int size, int is_keyframe, char* pImage);

/*
 * bits == 0   - leave unchanged
 */
//int SetDestFmt(DS_VideoDecoder * this, int bits = 24, fourcc_t csp = 0);
int DS_VideoDecoder_SetDestFmt(DS_VideoDecoder *this, int bits, unsigned int csp);
int DS_VideoDecoder_SetDirection(DS_VideoDecoder *this, int d);
int DS_VideoDecoder_GetValue(DS_VideoDecoder *this, const char* name, int* value);
int DS_VideoDecoder_SetValue(DS_VideoDecoder *this, const char* name, int value);
int DS_SetAttr_DivX(char* attribute, int value);


#endif /* MPLAYER_DS_VIDEODECODER_H */