diff options
author | Jef <jef@targetspot.com> | 2024-09-24 08:54:57 -0400 |
---|---|---|
committer | Jef <jef@targetspot.com> | 2024-09-24 08:54:57 -0400 |
commit | 20d28e80a5c861a9d5f449ea911ab75b4f37ad0d (patch) | |
tree | 12f17f78986871dd2cfb0a56e5e93b545c1ae0d0 /Src/mpeg4dec/mpeg4vid_api.h | |
parent | 537bcbc86291b32fc04ae4133ce4d7cac8ebe9a7 (diff) | |
download | winamp-20d28e80a5c861a9d5f449ea911ab75b4f37ad0d.tar.gz |
Initial community commit
Diffstat (limited to 'Src/mpeg4dec/mpeg4vid_api.h')
-rw-r--r-- | Src/mpeg4dec/mpeg4vid_api.h | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/Src/mpeg4dec/mpeg4vid_api.h b/Src/mpeg4dec/mpeg4vid_api.h new file mode 100644 index 00000000..bdfdbad8 --- /dev/null +++ b/Src/mpeg4dec/mpeg4vid_api.h @@ -0,0 +1,54 @@ +#pragma once +#ifdef __cplusplus +extern "C" +{ +#endif +#include <bfc/platform/types.h> +#include "mp4def.h" +typedef void *mpeg4vid_decoder_t; + +mpeg4vid_decoder_t MPEG4Video_CreateDecoder(int filetype, int codec); +void MPEG4Video_DestroyDecoder(mpeg4vid_decoder_t decoder); +void MPEG4Video_DecodeFrame(mpeg4vid_decoder_t decoder, const void *buffer, size_t bufferlen, uint64_t time_code); +void MPEG4Video_GetPicture(mpeg4vid_decoder_t decoder, mp4_Frame **frame); +int MPEG4Video_GetOutputFormat(mpeg4vid_decoder_t decoder, int *width, int *height, double *aspect_ratio); +void MPEG4Video_Flush(mpeg4vid_decoder_t decoder); +void MPEG4Video_HurryUp(mpeg4vid_decoder_t decoder, int state); +void MPEG4Video_EndOfStream(mpeg4vid_decoder_t decoder); +void MPEG4Video_ReleaseFrame(mpeg4vid_decoder_t d, mp4_Frame *frame); +#define MPEG4_PROFILE_SIMPLE 0 +#define MPEG4_PROFILE_SIMPLE_SCALABLE 1 +#define MPEG4_PROFILE_CORE 2 +#define MPEG4_PROFILE_MAIN 3 +#define MPEG4_PROFILE_NBIT 4 +#define MPEG4_PROFILE_SCALABLE_TEXTURE 5 +#define MPEG4_PROFILE_SIMPLE_FACE 6 +#define MPEG4_PROFILE_BASIC_ANIMATED_TEXTURE 7 +#define MPEG4_PROFILE_HYBRID 8 +#define MPEG4_PROFILE_ADVANCED_REAL_TIME_SIMPLE 9 +#define MPEG4_PROFILE_CORE_SCALABLE 10 +#define MPEG4_PROFILE_ADVANCED_CODE_EFFICIENCY 11 +#define MPEG4_PROFILE_ADVANCED_CORE 12 +#define MPEG4_PROFILE_ADVANCED_SCALABLE_TEXTURE 13 +#define MPEG4_PROFILE_STUDIO 14 +#define MPEG4_PROFILE_ADVANCED_SIMPLE 15 +#define MPEG4_PROFILE_FGS 16 + +#define MPEG4_LEVEL_0 0 +#define MPEG4_LEVEL_1 1 +#define MPEG4_LEVEL_2 2 +#define MPEG4_LEVEL_3 3 +#define MPEG4_LEVEL_4 4 +#define MPEG4_LEVEL_5 5 +#define MPEG4_LEVEL_3B 13 + +#define MPEG4_FILETYPE_RAW 0 +#define MPEG4_FILETYPE_MP4 1 +#define MPEG4_FILETYPE_AVI 2 + +#define MPEG4_CODEC_DEFAULT 0 +#define MPEG4_CODEC_DIVX5 1 + +#ifdef __cplusplus +} +#endif
\ No newline at end of file |