+++ /dev/null
-#ifndef __DATA_TYPE_CONVERSIONS_H__
-#define __DATA_TYPE_CONVERSIONS_H__
-
-#include <stdint.h>
-#include <wchar.h>
-
-#ifdef __cplusplus
-namespace avxsynth {
-#endif // __cplusplus
-
-typedef int64_t __int64;
-typedef int32_t __int32;
-#ifdef __cplusplus
-typedef bool BOOL;
-#else
-typedef uint32_t BOOL;
-#endif // __cplusplus
-typedef void* HMODULE;
-typedef void* LPVOID;
-typedef void* PVOID;
-typedef PVOID HANDLE;
-typedef HANDLE HWND;
-typedef HANDLE HINSTANCE;
-typedef void* HDC;
-typedef void* HBITMAP;
-typedef void* HICON;
-typedef void* HFONT;
-typedef void* HGDIOBJ;
-typedef void* HBRUSH;
-typedef void* HMMIO;
-typedef void* HACMSTREAM;
-typedef void* HACMDRIVER;
-typedef void* HIC;
-typedef void* HACMOBJ;
-typedef HACMSTREAM* LPHACMSTREAM;
-typedef void* HACMDRIVERID;
-typedef void* LPHACMDRIVER;
-typedef unsigned char BYTE;
-typedef BYTE* LPBYTE;
-typedef char TCHAR;
-typedef TCHAR* LPTSTR;
-typedef const TCHAR* LPCTSTR;
-typedef char* LPSTR;
-typedef LPSTR LPOLESTR;
-typedef const char* LPCSTR;
-typedef LPCSTR LPCOLESTR;
-typedef wchar_t WCHAR;
-typedef unsigned short WORD;
-typedef unsigned int UINT;
-typedef UINT MMRESULT;
-typedef uint32_t DWORD;
-typedef DWORD COLORREF;
-typedef DWORD FOURCC;
-typedef DWORD HRESULT;
-typedef DWORD* LPDWORD;
-typedef DWORD* DWORD_PTR;
-typedef int32_t LONG;
-typedef int32_t* LONG_PTR;
-typedef LONG_PTR LRESULT;
-typedef uint32_t ULONG;
-typedef uint32_t* ULONG_PTR;
-//typedef __int64_t intptr_t;
-typedef uint64_t _fsize_t;
-
-
-//
-// Structures
-//
-
-typedef struct _GUID {
- DWORD Data1;
- WORD Data2;
- WORD Data3;
- BYTE Data4[8];
-} GUID;
-
-typedef GUID REFIID;
-typedef GUID CLSID;
-typedef CLSID* LPCLSID;
-typedef GUID IID;
-
-#ifdef __cplusplus
-}; // namespace avxsynth
-#endif // __cplusplus
-#endif // __DATA_TYPE_CONVERSIONS_H__
+++ /dev/null
-#ifndef __WINDOWS2LINUX_H__
-#define __WINDOWS2LINUX_H__
-
-/*
- * LINUX SPECIFIC DEFINITIONS
-*/
-//
-// Data types conversions
-//
-#include <stdlib.h>
-#include <string.h>
-#include "basicDataTypeConversions.h"
-
-#ifdef __cplusplus
-namespace avxsynth {
-#endif // __cplusplus
-//
-// purposefully define the following MSFT definitions
-// to mean nothing (as they do not mean anything on Linux)
-//
-#define __stdcall
-#define __cdecl
-#define noreturn
-#define __declspec(x)
-#define STDAPI extern "C" HRESULT
-#define STDMETHODIMP HRESULT __stdcall
-#define STDMETHODIMP_(x) x __stdcall
-
-#define STDMETHOD(x) virtual HRESULT x
-#define STDMETHOD_(a, x) virtual a x
-
-#ifndef TRUE
-#define TRUE true
-#endif
-
-#ifndef FALSE
-#define FALSE false
-#endif
-
-#define S_OK (0x00000000)
-#define S_FALSE (0x00000001)
-#define E_NOINTERFACE (0X80004002)
-#define E_POINTER (0x80004003)
-#define E_FAIL (0x80004005)
-#define E_OUTOFMEMORY (0x8007000E)
-
-#define INVALID_HANDLE_VALUE ((HANDLE)((LONG_PTR)-1))
-#define FAILED(hr) ((hr) & 0x80000000)
-#define SUCCEEDED(hr) (!FAILED(hr))
-
-
-//
-// Functions
-//
-#define MAKEDWORD(a,b,c,d) ((a << 24) | (b << 16) | (c << 8) | (d))
-#define MAKEWORD(a,b) ((a << 8) | (b))
-
-#define lstrlen strlen
-#define lstrcpy strcpy
-#define lstrcmpi strcasecmp
-#define _stricmp strcasecmp
-#define InterlockedIncrement(x) __sync_fetch_and_add((x), 1)
-#define InterlockedDecrement(x) __sync_fetch_and_sub((x), 1)
-// Windows uses (new, old) ordering but GCC has (old, new)
-#define InterlockedCompareExchange(x,y,z) __sync_val_compare_and_swap(x,z,y)
-
-#define UInt32x32To64(a, b) ( (uint64_t) ( ((uint64_t)((uint32_t)(a))) * ((uint32_t)(b)) ) )
-#define Int64ShrlMod32(a, b) ( (uint64_t) ( (uint64_t)(a) >> (b) ) )
-#define Int32x32To64(a, b) ((__int64)(((__int64)((long)(a))) * ((long)(b))))
-
-#define MulDiv(nNumber, nNumerator, nDenominator) (int32_t) (((int64_t) (nNumber) * (int64_t) (nNumerator) + (int64_t) ((nDenominator)/2)) / (int64_t) (nDenominator))
-
-#ifdef __cplusplus
-}; // namespace avxsynth
-#endif // __cplusplus
-
-#endif // __WINDOWS2LINUX_H__
#if USE_AVXSYNTH
#include <dlfcn.h>
#if SYS_MACOSX
-#define avs_open dlopen( "libavxsynth.dylib", RTLD_NOW )
+#define avs_open() dlopen( "libavxsynth.dylib", RTLD_NOW )
#else
-#define avs_open dlopen( "libavxsynth.so", RTLD_NOW )
+#define avs_open() dlopen( "libavxsynth.so", RTLD_NOW )
#endif
#define avs_close dlclose
#define avs_address dlsym
#else
#include <windows.h>
-#define avs_open LoadLibraryW( L"avisynth" )
+#define avs_open() LoadLibraryW( L"avisynth" )
#define avs_close FreeLibrary
#define avs_address GetProcAddress
#endif
{
AVS_Clip *clip;
AVS_ScriptEnvironment *env;
- HMODULE library;
+ void *library;
int num_frames;
struct
{
/* load the library and functions we require from it */
static int x264_avs_load_library( avs_hnd_t *h )
{
- h->library = avs_open;
+ h->library = avs_open();
if( !h->library )
return -1;
LOAD_AVS_FUNC( avs_clip_get_error, 0 );