38 #ifndef __AVISYNTH_C__ 
   39 #define __AVISYNTH_C__ 
   51 #ifndef __AVISYNTH_6_H__ 
  204 #ifdef BUILDING_AVSCORE 
  206         IScriptEnvironment * env;
 
  209                 : env(e), error(0) {}
 
  241         { 
return (p->
width!=0); }
 
  272         { 
return ((p->
image_type & property)==property ); }
 
  352     unsigned x=numerator, 
y=denominator;
 
  354       unsigned t = x%
y; x = 
y; y = t;
 
  360 #ifdef AVS_IMPLICIT_FUNCTION_DECLARATION_ERROR 
  405 #ifdef AVS_IMPLICIT_FUNCTION_DECLARATION_ERROR 
  422 #ifdef AVS_IMPLICIT_FUNCTION_DECLARATION_ERROR 
  431 #ifdef AVS_IMPLICIT_FUNCTION_DECLARATION_ERROR 
  440 #ifndef AVSC_NO_DECLSPEC 
  442   {avs_release_video_frame(f);}
 
  444   {
return avs_copy_video_frame(f);}
 
  526 #ifndef AVSC_NO_DECLSPEC 
  528         { 
AVS_Value v; avs_set_to_clip(&v, v0); 
return v; }
 
  661 #ifndef AVSC_NO_DECLSPEC 
  665   {
return avs_new_video_frame_a(env,vi,
FRAME_ALIGN);}
 
  670   {
return avs_new_video_frame_a(env,vi,
FRAME_ALIGN);}
 
  704 #ifdef AVSC_NO_DECLSPEC 
  718 typedef struct AVS_Library AVS_Library;
 
  720 #define AVSC_DECLARE_FUNC(name) name##_func name 
  785 #undef AVSC_DECLARE_FUNC 
  789   AVS_Library *library = (AVS_Library *)malloc(
sizeof(AVS_Library));
 
  793   if (library->handle == 
NULL)
 
  796 #define __AVSC_STRINGIFY(x) #x 
  797 #define AVSC_STRINGIFY(x) __AVSC_STRINGIFY(x) 
  798 #define AVSC_LOAD_FUNC(name) {\ 
  799   library->name = (name##_func) GetProcAddress(library->handle, AVSC_STRINGIFY(name));\ 
  800   if (library->name == NULL)\ 
  804   AVSC_LOAD_FUNC(avs_add_function);
 
  805   AVSC_LOAD_FUNC(avs_at_exit);
 
  806   AVSC_LOAD_FUNC(avs_bit_blt);
 
  807   AVSC_LOAD_FUNC(avs_check_version);
 
  808   AVSC_LOAD_FUNC(avs_clip_get_error);
 
  809   AVSC_LOAD_FUNC(avs_copy_clip);
 
  810   AVSC_LOAD_FUNC(avs_copy_value);
 
  811   AVSC_LOAD_FUNC(avs_copy_video_frame);
 
  812   AVSC_LOAD_FUNC(avs_create_script_environment);
 
  813   AVSC_LOAD_FUNC(avs_delete_script_environment);
 
  814   AVSC_LOAD_FUNC(avs_function_exists);
 
  815   AVSC_LOAD_FUNC(avs_get_audio);
 
  816   AVSC_LOAD_FUNC(avs_get_cpu_flags);
 
  817   AVSC_LOAD_FUNC(avs_get_frame);
 
  818   AVSC_LOAD_FUNC(avs_get_parity);
 
  819   AVSC_LOAD_FUNC(avs_get_var);
 
  820   AVSC_LOAD_FUNC(avs_get_version);
 
  821   AVSC_LOAD_FUNC(avs_get_video_info);
 
  822   AVSC_LOAD_FUNC(avs_invoke);
 
  823   AVSC_LOAD_FUNC(avs_make_writable);
 
  824   AVSC_LOAD_FUNC(avs_new_c_filter);
 
  825   AVSC_LOAD_FUNC(avs_new_video_frame_a);
 
  826   AVSC_LOAD_FUNC(avs_release_clip);
 
  827   AVSC_LOAD_FUNC(avs_release_value);
 
  828   AVSC_LOAD_FUNC(avs_release_video_frame);
 
  829   AVSC_LOAD_FUNC(avs_save_string);
 
  830   AVSC_LOAD_FUNC(avs_set_cache_hints);
 
  831   AVSC_LOAD_FUNC(avs_set_global_var);
 
  832   AVSC_LOAD_FUNC(avs_set_memory_max);
 
  833   AVSC_LOAD_FUNC(avs_set_to_clip);
 
  834   AVSC_LOAD_FUNC(avs_set_var);
 
  835   AVSC_LOAD_FUNC(avs_set_working_dir);
 
  836   AVSC_LOAD_FUNC(avs_sprintf);
 
  837   AVSC_LOAD_FUNC(avs_subframe);
 
  838   AVSC_LOAD_FUNC(avs_subframe_planar);
 
  839   AVSC_LOAD_FUNC(avs_take_clip);
 
  840   AVSC_LOAD_FUNC(avs_vsprintf);
 
  842   AVSC_LOAD_FUNC(avs_get_error);
 
  843   AVSC_LOAD_FUNC(avs_is_yv24);
 
  844   AVSC_LOAD_FUNC(avs_is_yv16);
 
  846   AVSC_LOAD_FUNC(avs_is_yv411);
 
  847   AVSC_LOAD_FUNC(avs_is_y8);
 
  850   AVSC_LOAD_FUNC(avs_get_plane_width_subsampling);
 
  851   AVSC_LOAD_FUNC(avs_get_plane_height_subsampling);
 
  863 #undef __AVSC_STRINGIFY 
  864 #undef AVSC_STRINGIFY 
  865 #undef AVSC_LOAD_FUNC 
  874 AVSC_INLINE void avs_free_library(AVS_Library *library) {
 
const char const char void * val
 
AVSC_INLINE int avs_is_rgb32(const AVS_VideoInfo *p)
 
BYTE int const BYTE int int row_size
 
AVSC_INLINE AVS_VideoFrame * avs_new_video_frame(AVS_ScriptEnvironment *env, const AVS_VideoInfo *vi)
 
volatile long sequence_number
 
BYTE int const BYTE int src_pitch
 
AVS_VideoFrame *AVSC_CC * get_frame(AVS_FilterInfo *, int n)
 
AVSC_INLINE const AVS_Value * avs_as_array(AVS_Value v)
 
const char AVS_Value const char ** arg_names
 
AVSC_INLINE const char * avs_as_string(AVS_Value v)
 
AVSC_INLINE int avs_is_tff(const AVS_VideoInfo *p)
 
AVSC_INLINE int avs_bytes_per_audio_sample(const AVS_VideoInfo *p)
 
AVS_VideoFrame int int int int int int rel_offsetV
 
AVSC_INLINE AVS_VideoFrame * avs_copy_frame(AVS_VideoFrame *f)
 
AVSC_INLINE int avs_bytes_from_pixels(const AVS_VideoInfo *p, int pixels)
 
AVSC_INLINE AVS_Value avs_new_value_error(const char *v0)
 
static const AVS_Value avs_void
 
AVS_VideoFrame int int int int new_height
 
AVSC_INLINE INT64 avs_audio_samples_from_bytes(const AVS_VideoInfo *p, INT64 bytes)
 
AVSC_INLINE void avs_set_fps(AVS_VideoInfo *p, unsigned numerator, unsigned denominator)
 
AVSC_INLINE AVS_Value avs_new_value_int(int v0)
 
AVSC_INLINE int avs_is_parity_known(const AVS_VideoInfo *p)
 
AVSC_INLINE int avs_bmp_size(const AVS_VideoInfo *vi)
 
BYTE int const BYTE * srcp
 
typedef AVS_Value(AVSC_CC *AVS_ApplyFunc)(AVS_ScriptEnvironment *
 
AVSC_INLINE int avs_audio_channels(const AVS_VideoInfo *p)
 
AVSC_INLINE int avs_samples_per_second(const AVS_VideoInfo *p)
 
AVS_FilterInfo AVS_Value child
 
#define AVSC_DECLARE_FUNC(name)
 
AVSC_INLINE int avs_is_property(const AVS_VideoInfo *p, int property)
 
AVS_VideoFrame int int int int int rel_offsetU
 
AVS_ScriptEnvironment * env
 
AVSC_INLINE int avs_is_int(AVS_Value v)
 
AVSC_INLINE int avs_is_rgb(const AVS_VideoInfo *p)
 
AVSC_INLINE AVS_Value avs_array_elt(AVS_Value v, int index)
 
AVSC_INLINE int avs_array_size(AVS_Value v)
 
AVSC_INLINE int avs_as_int(AVS_Value v)
 
AVSC_INLINE INT64 avs_bytes_from_audio_samples(const AVS_VideoInfo *p, INT64 samples)
 
AVSC_API(int, avs_is_yv24)(const AVS_VideoInfo *p)
 
AVSC_INLINE int avs_is_array(AVS_Value v)
 
AVSC_INLINE int avs_is_bool(AVS_Value v)
 
AVSC_INLINE int avs_get_height(const AVS_VideoFrame *p)
 
AVSC_INLINE int avs_get_pitch_p(const AVS_VideoFrame *p, int plane)
 
AVSC_INLINE int avs_is_float(AVS_Value v)
 
AVSC_INLINE AVS_Value avs_new_value_float(float v0)
 
AVSC_INLINE int avs_is_planar(const AVS_VideoInfo *p)
 
AVSC_EXPORT const char *AVSC_CC avisynth_c_plugin_init(AVS_ScriptEnvironment *env)
 
AVSC_INLINE void avs_set_property(AVS_VideoInfo *p, int property)
 
AVSC_INLINE const unsigned char * avs_get_read_ptr(const AVS_VideoFrame *p)
 
AVS_Value void * user_data
 
AVSC_INLINE int avs_is_rgb24(const AVS_VideoInfo *p)
 
AVSC_INLINE int avs_has_video(const AVS_VideoInfo *p)
 
AVSC_INLINE int avs_is_color_space(const AVS_VideoInfo *p, int c_space)
 
AVSC_INLINE int avs_get_pitch(const AVS_VideoFrame *p)
 
AVSC_INLINE int avs_defined(AVS_Value v)
 
AVSC_INLINE AVS_Value avs_new_value_bool(int v0)
 
AVSC_INLINE int avs_is_clip(AVS_Value v)
 
AVSC_INLINE unsigned char * avs_get_write_ptr_p(const AVS_VideoFrame *p, int plane)
 
AVSC_INLINE AVS_Value avs_new_value_string(const char *v0)
 
AVSC_INLINE const char * avs_as_error(AVS_Value v)
 
typedef void(APIENTRY *FF_PFNGLACTIVETEXTUREPROC)(GLenum texture)
 
AVSC_INLINE int avs_is_bff(const AVS_VideoInfo *p)
 
AVSC_INLINE double avs_as_float(AVS_Value v)
 
AVSC_INLINE int avs_get_row_size(const AVS_VideoFrame *p)
 
AVSC_INLINE int avs_bits_per_pixel(const AVS_VideoInfo *p)
 
const AVS_VideoInfo int align
 
AVSC_INLINE const unsigned char * avs_get_read_ptr_p(const AVS_VideoFrame *p, int plane)
 
AVSC_INLINE int avs_is_yv12(const AVS_VideoInfo *p)
 
AVSC_INLINE int avs_is_error(AVS_Value v)
 
int(AVSC_CC *get_parity)(AVS_FilterInfo *
 
AVSC_INLINE int avs_is_field_based(const AVS_VideoInfo *p)
 
AVS_VideoFrame int rel_offset
 
BYTE int const BYTE int int int height
 
AVSC_INLINE AVS_Value avs_new_value_array(AVS_Value *v0, int size)
 
void(AVSC_CC * AVS_ShutdownFunc)(void *user_data, AVS_ScriptEnvironment *env)
 
AVSC_INLINE int avs_bytes_per_channel_sample(const AVS_VideoInfo *p)
 
AVSC_INLINE void avs_set_field_based(AVS_VideoInfo *p, int isfieldbased)
 
AVS_VideoFrame int int int new_row_size
 
void(AVSC_CC *free_filter)(AVS_FilterInfo *)
 
AVS_VideoFrameBuffer * vfb
 
AVS_ScriptEnvironment AVS_Clip *AVSC_INLINE int avs_as_bool(AVS_Value v)
 
AVSC_INLINE int avs_is_yuv(const AVS_VideoInfo *p)
 
AVSC_INLINE void avs_clear_property(AVS_VideoInfo *p, int property)
 
AVSC_INLINE AVS_VideoFrame * avs_new_frame(AVS_ScriptEnvironment *env, const AVS_VideoInfo *vi)
 
const char const char * params
 
struct AVS_ScriptEnvironment AVS_ScriptEnvironment
 
AVSC_INLINE void avs_release_frame(AVS_VideoFrame *f)
 
AVSC_INLINE int avs_is_same_colorspace(AVS_VideoInfo *x, AVS_VideoInfo *y)
 
AVS_VideoFrame int int new_pitch
 
AVSC_INLINE AVS_Value avs_new_value_clip(AVS_Clip *v0)
 
AVSC_INLINE int avs_is_string(AVS_Value v)
 
AVSC_INLINE int avs_get_height_p(const AVS_VideoFrame *p, int plane)
 
AVSC_INLINE int avs_frames_from_audio_samples(const AVS_VideoInfo *p, INT64 samples)
 
AVSC_INLINE int avs_sample_type(const AVS_VideoInfo *p)
 
AVSC_INLINE int avs_row_size(const AVS_VideoInfo *p)
 
AVS_VideoFrame int int int int int int int new_pitchUV
 
AVSC_INLINE INT64 avs_audio_samples_from_frames(const AVS_VideoInfo *p, INT64 frames)
 
AVSC_INLINE int avs_is_yuy2(const AVS_VideoInfo *p)
 
const char const char AVS_ApplyFunc apply
 
AVSC_INLINE int avs_get_row_size_p(const AVS_VideoFrame *p, int plane)
 
static int get_parity(uint8_t value)
Get parity bit of bit 2..7. 
 
AVS_FilterInfo AVS_Value int store_child
 
AVSC_INLINE unsigned char * avs_get_write_ptr(const AVS_VideoFrame *p)
 
AVSC_INLINE int avs_is_writable(const AVS_VideoFrame *p)
 
AVSC_INLINE int avs_has_audio(const AVS_VideoInfo *p)
 
int audio_samples_per_second