Mercurial > mplayer.hg
annotate libmpcodecs/ad.h @ 22809:09f97d0161ba
Handle X-QT extradata in a slightly more correct way
| author | cehoyos |
|---|---|
| date | Mon, 26 Mar 2007 09:35:03 +0000 |
| parents | e72d8e3955ea |
| children | 6ac1ece1f9fe |
| rev | line source |
|---|---|
| 5324 | 1 |
| 2 #include "mpc_info.h" | |
| 3 typedef mp_codec_info_t ad_info_t; | |
| 4 | |
| 5 /* interface of video decoder drivers */ | |
| 6 typedef struct ad_functions_s | |
| 7 { | |
| 8 ad_info_t *info; | |
|
5339
e72d8e3955ea
changed to be more-or-less compatible with Nick's stuff
arpi
parents:
5324
diff
changeset
|
9 int (*preinit)(sh_audio_t *sh); |
| 5324 | 10 int (*init)(sh_audio_t *sh); |
| 11 void (*uninit)(sh_audio_t *sh); | |
| 12 int (*control)(sh_audio_t *sh,int cmd,void* arg, ...); | |
|
5339
e72d8e3955ea
changed to be more-or-less compatible with Nick's stuff
arpi
parents:
5324
diff
changeset
|
13 int (*decode_audio)(sh_audio_t *sh,unsigned char* buffer,int minlen,int maxlen); |
| 5324 | 14 } ad_functions_t; |
| 15 | |
| 16 // NULL terminated array of all drivers | |
| 17 extern ad_functions_t* mpcodecs_ad_drivers[]; | |
| 18 | |
| 19 // fallback if ADCTRL_RESYNC not implemented: sh_audio->a_in_buffer_len=0; | |
|
5339
e72d8e3955ea
changed to be more-or-less compatible with Nick's stuff
arpi
parents:
5324
diff
changeset
|
20 #define ADCTRL_RESYNC_STREAM 1 /* resync, called after seeking! */ |
| 5324 | 21 |
| 22 // fallback if ADCTRL_SKIP not implemented: ds_fill_buffer(sh_audio->ds); | |
|
5339
e72d8e3955ea
changed to be more-or-less compatible with Nick's stuff
arpi
parents:
5324
diff
changeset
|
23 #define ADCTRL_SKIP_FRAME 2 /* skip block/frame, called while seeking! */ |
| 5324 | 24 |
| 25 // fallback if ADCTRL_QUERY_FORMAT not implemented: sh_audio->sample_format | |
| 26 #define ADCTRL_QUERY_FORMAT 3 /* test for availabilty of a format */ | |
| 27 | |
| 28 // fallback: use hw mixer in libao | |
| 29 #define ADCTRL_SET_VOLUME 4 /* set volume (used for mp3lib and liba52) */ | |
| 30 |
