mirror of
https://github.com/xiaoyifang/goldendict-ng.git
synced 2024-11-27 15:24:05 +00:00
remove mac and windows dependency of libao
This commit is contained in:
parent
85aad0f80c
commit
16bc832a20
2
.github/workflows/macos-homebrew.yml
vendored
2
.github/workflows/macos-homebrew.yml
vendored
|
@ -85,8 +85,6 @@ jobs:
|
|||
run: |
|
||||
qmake CONFIG+=release CONFIG+=no_macos_universal CONFIG+=zim_support CONFIG+=no_extra_tiff_handler #CONFIG+=no_epwing_support # CONFIG+=no_ffmpeg_player #CONFIG+=no_qtmultimedia_player
|
||||
make -j8
|
||||
# libao was specificly build https://github.com/goldendict/goldendict/pull/377
|
||||
cp -fR maclibs/lib/libao* GoldenDict.app/Contents/Frameworks/
|
||||
|
||||
# # 打包
|
||||
# - name: package
|
||||
|
|
|
@ -115,8 +115,7 @@ win32 {
|
|||
-lvorbis \
|
||||
-logg
|
||||
!CONFIG( no_ffmpeg_player ) {
|
||||
LIBS += -lao \
|
||||
-lswresample \
|
||||
LIBS += -lswresample \
|
||||
-lavutil \
|
||||
-lavformat \
|
||||
-lavcodec
|
||||
|
@ -151,8 +150,7 @@ unix:!mac {
|
|||
ogg \
|
||||
hunspell
|
||||
!CONFIG( no_ffmpeg_player ) {
|
||||
PKGCONFIG += ao \
|
||||
libavutil \
|
||||
PKGCONFIG += libavutil \
|
||||
libavformat \
|
||||
libavcodec \
|
||||
libswresample \
|
||||
|
@ -205,8 +203,7 @@ mac {
|
|||
-llzo2
|
||||
|
||||
!CONFIG( no_ffmpeg_player ) {
|
||||
LIBS += -lao \
|
||||
-lswresample \
|
||||
LIBS += -lswresample \
|
||||
-lavutil \
|
||||
-lavformat \
|
||||
-lavcodec
|
||||
|
|
|
@ -1,139 +0,0 @@
|
|||
/*
|
||||
*
|
||||
* ao.h
|
||||
*
|
||||
* Original Copyright (C) Aaron Holtzman - May 1999
|
||||
* Modifications Copyright (C) Stan Seibert - July 2000, July 2001
|
||||
* More Modifications Copyright (C) Jack Moffitt - October 2000
|
||||
*
|
||||
* This file is part of libao, a cross-platform audio outputlibrary. See
|
||||
* README for a history of this source code.
|
||||
*
|
||||
* libao is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* libao is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with GNU Make; see the file COPYING. If not, write to
|
||||
* the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*
|
||||
*/
|
||||
#ifndef __AO_H__
|
||||
#define __AO_H__
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif /* __cplusplus */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <errno.h>
|
||||
#include "os_types.h"
|
||||
|
||||
/* --- Constants ---*/
|
||||
|
||||
#define AO_TYPE_LIVE 1
|
||||
#define AO_TYPE_FILE 2
|
||||
|
||||
|
||||
#define AO_ENODRIVER 1
|
||||
#define AO_ENOTFILE 2
|
||||
#define AO_ENOTLIVE 3
|
||||
#define AO_EBADOPTION 4
|
||||
#define AO_EOPENDEVICE 5
|
||||
#define AO_EOPENFILE 6
|
||||
#define AO_EFILEEXISTS 7
|
||||
#define AO_EBADFORMAT 8
|
||||
|
||||
#define AO_EFAIL 100
|
||||
|
||||
|
||||
#define AO_FMT_LITTLE 1
|
||||
#define AO_FMT_BIG 2
|
||||
#define AO_FMT_NATIVE 4
|
||||
|
||||
/* --- Structures --- */
|
||||
|
||||
typedef struct ao_info {
|
||||
int type; /* live output or file output? */
|
||||
char *name; /* full name of driver */
|
||||
char *short_name; /* short name of driver */
|
||||
char *author; /* driver author */
|
||||
char *comment; /* driver comment */
|
||||
int preferred_byte_format;
|
||||
int priority;
|
||||
char **options;
|
||||
int option_count;
|
||||
} ao_info;
|
||||
|
||||
typedef struct ao_functions ao_functions;
|
||||
typedef struct ao_device ao_device;
|
||||
|
||||
typedef struct ao_sample_format {
|
||||
int bits; /* bits per sample */
|
||||
int rate; /* samples per second (in a single channel) */
|
||||
int channels; /* number of audio channels */
|
||||
int byte_format; /* Byte ordering in sample, see constants below */
|
||||
char *matrix; /* input channel location/ordering */
|
||||
} ao_sample_format;
|
||||
|
||||
typedef struct ao_option {
|
||||
char *key;
|
||||
char *value;
|
||||
struct ao_option *next;
|
||||
} ao_option;
|
||||
|
||||
#if defined(AO_BUILDING_LIBAO)
|
||||
#include "ao_private.h"
|
||||
#endif
|
||||
|
||||
/* --- Functions --- */
|
||||
|
||||
/* library setup/teardown */
|
||||
void ao_initialize(void);
|
||||
void ao_shutdown(void);
|
||||
|
||||
/* device setup/playback/teardown */
|
||||
int ao_append_global_option(const char *key,
|
||||
const char *value);
|
||||
int ao_append_option(ao_option **options,
|
||||
const char *key,
|
||||
const char *value);
|
||||
void ao_free_options(ao_option *options);
|
||||
ao_device* ao_open_live(int driver_id,
|
||||
ao_sample_format *format,
|
||||
ao_option *option);
|
||||
ao_device* ao_open_file(int driver_id,
|
||||
const char *filename,
|
||||
int overwrite,
|
||||
ao_sample_format *format,
|
||||
ao_option *option);
|
||||
|
||||
int ao_play(ao_device *device,
|
||||
char *output_samples,
|
||||
uint_32 num_bytes);
|
||||
int ao_close(ao_device *device);
|
||||
|
||||
/* driver information */
|
||||
int ao_driver_id(const char *short_name);
|
||||
int ao_default_driver_id(void);
|
||||
ao_info *ao_driver_info(int driver_id);
|
||||
ao_info **ao_driver_info_list(int *driver_count);
|
||||
const char *ao_file_extension(int driver_id);
|
||||
|
||||
/* miscellaneous */
|
||||
int ao_is_big_endian(void);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif /* __cplusplus */
|
||||
|
||||
#endif /* __AO_H__ */
|
|
@ -1,211 +0,0 @@
|
|||
/*
|
||||
*
|
||||
* ao_private.c
|
||||
*
|
||||
* Copyright (C) Stan Seibert - July 2001
|
||||
*
|
||||
* This file is part of libao, a cross-platform audio output library. See
|
||||
* README for a history of this source code.
|
||||
*
|
||||
* libao is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* libao is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with GNU Make; see the file COPYING. If not, write to
|
||||
* the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __AO_PRIVATE_H__
|
||||
#define __AO_PRIVATE_H__
|
||||
|
||||
/* --- Operating System Compatibility --- */
|
||||
|
||||
/*
|
||||
OpenBSD systems with a.out binaries require dlsym()ed symbols to be
|
||||
prepended with an underscore, so we need the following nasty #ifdef
|
||||
hack.
|
||||
*/
|
||||
#if defined(__OpenBSD__) && !defined(__ELF__)
|
||||
#define dlsym(h,s) dlsym(h, "_" s)
|
||||
#endif
|
||||
|
||||
/* RTLD_NOW is the preferred symbol resolution behavior, but
|
||||
* some platforms do not support it. The autoconf script will have
|
||||
* already defined DLOPEN_FLAG if the default is unacceptable on the
|
||||
* current platform.
|
||||
*
|
||||
* ALSA requires RTLD_GLOBAL.
|
||||
*/
|
||||
#if !defined(DLOPEN_FLAG)
|
||||
#define DLOPEN_FLAG (RTLD_NOW | RTLD_GLOBAL)
|
||||
#endif
|
||||
|
||||
/* --- Constants --- */
|
||||
|
||||
#ifndef AO_SYSTEM_CONFIG
|
||||
#define AO_SYSTEM_CONFIG "/etc/libao.conf"
|
||||
#endif
|
||||
#ifndef AO_USER_CONFIG
|
||||
#define AO_USER_CONFIG "/.libao"
|
||||
#endif
|
||||
|
||||
/* --- Structures --- */
|
||||
|
||||
typedef struct ao_config {
|
||||
char *default_driver;
|
||||
} ao_config;
|
||||
|
||||
typedef enum {
|
||||
AO_OUTPUT_MATRIX_UNDEFINED=0, /* matrix unset */
|
||||
AO_OUTPUT_MATRIX_FIXED=1, /* fixed, immutable channel order, eg, ALSA */
|
||||
AO_OUTPUT_MATRIX_COLLAPSIBLE=2, /* fixed order but only used channels sent, eg MACOS */
|
||||
AO_OUTPUT_MATRIX_PERMUTABLE=3, /* channel map is fully permutable. eg Pulse */
|
||||
} ao_outorder;
|
||||
|
||||
struct ao_device {
|
||||
int type; /* live output or file output? */
|
||||
int driver_id;
|
||||
ao_functions *funcs;
|
||||
FILE *file; /* File for output if this is a file driver */
|
||||
|
||||
/* input not necessarily == output. Right now, byte order, channel
|
||||
count, and channel mappings may be altered. */
|
||||
|
||||
int client_byte_format;
|
||||
int machine_byte_format;
|
||||
int driver_byte_format;
|
||||
char *swap_buffer;
|
||||
int swap_buffer_size; /* Bytes allocated to swap_buffer */
|
||||
|
||||
int input_channels;
|
||||
int output_channels;
|
||||
int bytewidth;
|
||||
int rate;
|
||||
|
||||
ao_outorder output_matrix_order;
|
||||
char *output_matrix; /* physical output channel
|
||||
ordering/numbering matrix set by
|
||||
driver if there's a channel
|
||||
name->number mapping useful to the
|
||||
backend driver in some way. Eg,
|
||||
Pulse has fully permutable input
|
||||
channel masks, but specific channels
|
||||
locations (eg, 'Center') still have
|
||||
assigned numbers even if not a
|
||||
specific slot int he input
|
||||
interleave. */
|
||||
int output_mask;
|
||||
int *input_map; /* input permutation mapping from each
|
||||
input channel to a location in the
|
||||
output_matrix. Made by ao_open,
|
||||
intended for convenience use by
|
||||
driver in device open. */
|
||||
|
||||
char *inter_matrix; /* channel matrix as presented to the
|
||||
backend API */
|
||||
int *inter_permute; /* maps from each channel in the
|
||||
inter_matrix back to an input channel
|
||||
(if any) */
|
||||
|
||||
void *internal; /* Pointer to driver-specific data */
|
||||
|
||||
int verbose;
|
||||
};
|
||||
|
||||
struct ao_functions {
|
||||
int (*test)(void);
|
||||
ao_info* (*driver_info)(void);
|
||||
int (*device_init)(ao_device *device);
|
||||
int (*set_option)(ao_device *device, const char *key,
|
||||
const char *value);
|
||||
int (*open)(ao_device *device, ao_sample_format *format);
|
||||
int (*play)(ao_device *device, const char *output_samples,
|
||||
uint_32 num_bytes);
|
||||
int (*close)(ao_device *device);
|
||||
void (*device_clear)(ao_device *device);
|
||||
const char* (*file_extension)(void);
|
||||
};
|
||||
|
||||
/* --- Functions --- */
|
||||
|
||||
void ao_read_config_files (ao_config *config);
|
||||
|
||||
#define adebug(format, args...) {\
|
||||
if(!device || device->verbose==2){ \
|
||||
if(strcmp(format,"\n")){ \
|
||||
if(device && device->funcs->driver_info()->short_name){ \
|
||||
fprintf(stderr,"ao_%s debug: " format,device->funcs->driver_info()->short_name,## args); \
|
||||
}else{ \
|
||||
fprintf(stderr,"debug: " format,## args); \
|
||||
} \
|
||||
}else{ \
|
||||
fprintf(stderr,"\n"); \
|
||||
} \
|
||||
} \
|
||||
}
|
||||
|
||||
#define averbose(format, args...) {\
|
||||
if(!device || device->verbose>0){ \
|
||||
if(strcmp(format,"\n")){ \
|
||||
if(device && device->funcs->driver_info()->short_name){ \
|
||||
fprintf(stderr,"ao_%s info: " format,device->funcs->driver_info()->short_name,## args); \
|
||||
}else{ \
|
||||
fprintf(stderr,"info: " format,## args); \
|
||||
} \
|
||||
}else{ \
|
||||
fprintf(stderr,"\n"); \
|
||||
} \
|
||||
} \
|
||||
}
|
||||
|
||||
#define ainfo(format, args...) {\
|
||||
if(!device || device->verbose>=0){ \
|
||||
if(strcmp(format,"\n")){ \
|
||||
if(device && device->funcs->driver_info()->short_name){ \
|
||||
fprintf(stderr,"ao_%s info: " format,device->funcs->driver_info()->short_name,## args); \
|
||||
}else{ \
|
||||
fprintf(stderr,"info: " format,## args); \
|
||||
} \
|
||||
}else{ \
|
||||
fprintf(stderr,"\n"); \
|
||||
} \
|
||||
} \
|
||||
}
|
||||
|
||||
#define awarn(format, args...) {\
|
||||
if(!device || device->verbose>=0){ \
|
||||
if(strcmp(format,"\n")){ \
|
||||
if(device && device->funcs->driver_info()->short_name){ \
|
||||
fprintf(stderr,"ao_%s WARNING: " format,device->funcs->driver_info()->short_name,## args); \
|
||||
}else{ \
|
||||
fprintf(stderr,"WARNING: " format,## args); \
|
||||
} \
|
||||
}else{ \
|
||||
fprintf(stderr,"\n"); \
|
||||
} \
|
||||
} \
|
||||
}
|
||||
|
||||
#define aerror(format, args...) { \
|
||||
if(!device || device->verbose>=0){ \
|
||||
if(strcmp(format,"\n")){ \
|
||||
if(device && device->funcs->driver_info()->short_name){ \
|
||||
fprintf(stderr,"ao_%s ERROR: " format,device->funcs->driver_info()->short_name,## args); \
|
||||
}else{ \
|
||||
fprintf(stderr,"ERROR: " format,## args); \
|
||||
} \
|
||||
}else{ \
|
||||
fprintf(stderr,"\n"); \
|
||||
} \
|
||||
} \
|
||||
}
|
||||
|
||||
#endif /* __AO_PRIVATE_H__ */
|
|
@ -1,39 +0,0 @@
|
|||
/*
|
||||
*
|
||||
* os_types.h
|
||||
*
|
||||
* Original Copyright (C) Aaron Holtzman - May 1999
|
||||
* Modifications Copyright (C) Stan Seibert - July 2000
|
||||
*
|
||||
* This file is part of libao, a cross-platform audio output library. See
|
||||
* README for a history of this source code.
|
||||
*
|
||||
* libao is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* libao is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with GNU Make; see the file COPYING. If not, write to
|
||||
* the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*
|
||||
*/
|
||||
|
||||
/* Set type sizes for this platform (Requires Autoconf) */
|
||||
|
||||
#ifndef __OS_TYPES_H__
|
||||
#define __OS_TYPES_H__
|
||||
|
||||
typedef unsigned char uint_8;
|
||||
typedef unsigned short uint_16;
|
||||
typedef unsigned int uint_32;
|
||||
typedef signed char sint_8;
|
||||
typedef signed short sint_16;
|
||||
typedef signed int sint_32;
|
||||
|
||||
#endif /* __OS_TYPES_H__ */
|
Binary file not shown.
|
@ -1,139 +0,0 @@
|
|||
/*
|
||||
*
|
||||
* ao.h
|
||||
*
|
||||
* Original Copyright (C) Aaron Holtzman - May 1999
|
||||
* Modifications Copyright (C) Stan Seibert - July 2000, July 2001
|
||||
* More Modifications Copyright (C) Jack Moffitt - October 2000
|
||||
*
|
||||
* This file is part of libao, a cross-platform audio outputlibrary. See
|
||||
* README for a history of this source code.
|
||||
*
|
||||
* libao is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* libao is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with GNU Make; see the file COPYING. If not, write to
|
||||
* the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*
|
||||
*/
|
||||
#ifndef __AO_H__
|
||||
#define __AO_H__
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif /* __cplusplus */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <errno.h>
|
||||
#include "os_types.h"
|
||||
|
||||
/* --- Constants ---*/
|
||||
|
||||
#define AO_TYPE_LIVE 1
|
||||
#define AO_TYPE_FILE 2
|
||||
|
||||
|
||||
#define AO_ENODRIVER 1
|
||||
#define AO_ENOTFILE 2
|
||||
#define AO_ENOTLIVE 3
|
||||
#define AO_EBADOPTION 4
|
||||
#define AO_EOPENDEVICE 5
|
||||
#define AO_EOPENFILE 6
|
||||
#define AO_EFILEEXISTS 7
|
||||
#define AO_EBADFORMAT 8
|
||||
|
||||
#define AO_EFAIL 100
|
||||
|
||||
|
||||
#define AO_FMT_LITTLE 1
|
||||
#define AO_FMT_BIG 2
|
||||
#define AO_FMT_NATIVE 4
|
||||
|
||||
/* --- Structures --- */
|
||||
|
||||
typedef struct ao_info {
|
||||
int type; /* live output or file output? */
|
||||
char *name; /* full name of driver */
|
||||
char *short_name; /* short name of driver */
|
||||
char *author; /* driver author */
|
||||
char *comment; /* driver comment */
|
||||
int preferred_byte_format;
|
||||
int priority;
|
||||
char **options;
|
||||
int option_count;
|
||||
} ao_info;
|
||||
|
||||
typedef struct ao_functions ao_functions;
|
||||
typedef struct ao_device ao_device;
|
||||
|
||||
typedef struct ao_sample_format {
|
||||
int bits; /* bits per sample */
|
||||
int rate; /* samples per second (in a single channel) */
|
||||
int channels; /* number of audio channels */
|
||||
int byte_format; /* Byte ordering in sample, see constants below */
|
||||
char *matrix; /* input channel location/ordering */
|
||||
} ao_sample_format;
|
||||
|
||||
typedef struct ao_option {
|
||||
char *key;
|
||||
char *value;
|
||||
struct ao_option *next;
|
||||
} ao_option;
|
||||
|
||||
#if defined(AO_BUILDING_LIBAO)
|
||||
#include "ao_private.h"
|
||||
#endif
|
||||
|
||||
/* --- Functions --- */
|
||||
|
||||
/* library setup/teardown */
|
||||
void ao_initialize(void);
|
||||
void ao_shutdown(void);
|
||||
|
||||
/* device setup/playback/teardown */
|
||||
int ao_append_global_option(const char *key,
|
||||
const char *value);
|
||||
int ao_append_option(ao_option **options,
|
||||
const char *key,
|
||||
const char *value);
|
||||
void ao_free_options(ao_option *options);
|
||||
ao_device* ao_open_live(int driver_id,
|
||||
ao_sample_format *format,
|
||||
ao_option *option);
|
||||
ao_device* ao_open_file(int driver_id,
|
||||
const char *filename,
|
||||
int overwrite,
|
||||
ao_sample_format *format,
|
||||
ao_option *option);
|
||||
|
||||
int ao_play(ao_device *device,
|
||||
char *output_samples,
|
||||
uint_32 num_bytes);
|
||||
int ao_close(ao_device *device);
|
||||
|
||||
/* driver information */
|
||||
int ao_driver_id(const char *short_name);
|
||||
int ao_default_driver_id(void);
|
||||
ao_info *ao_driver_info(int driver_id);
|
||||
ao_info **ao_driver_info_list(int *driver_count);
|
||||
const char *ao_file_extension(int driver_id);
|
||||
|
||||
/* miscellaneous */
|
||||
int ao_is_big_endian(void);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif /* __cplusplus */
|
||||
|
||||
#endif /* __AO_H__ */
|
|
@ -1,39 +0,0 @@
|
|||
/*
|
||||
*
|
||||
* os_types.h
|
||||
*
|
||||
* Original Copyright (C) Aaron Holtzman - May 1999
|
||||
* Modifications Copyright (C) Stan Seibert - July 2000
|
||||
*
|
||||
* This file is part of libao, a cross-platform audio output library. See
|
||||
* README for a history of this source code.
|
||||
*
|
||||
* libao is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* libao is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with GNU Make; see the file COPYING. If not, write to
|
||||
* the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*
|
||||
*/
|
||||
|
||||
/* Set type sizes for this platform (Requires Autoconf) */
|
||||
|
||||
#ifndef __OS_TYPES_H__
|
||||
#define __OS_TYPES_H__
|
||||
|
||||
typedef unsigned char uint_8;
|
||||
typedef unsigned short uint_16;
|
||||
typedef unsigned int uint_32;
|
||||
typedef signed char sint_8;
|
||||
typedef signed short sint_16;
|
||||
typedef signed int sint_32;
|
||||
|
||||
#endif /* __OS_TYPES_H__ */
|
|
@ -1,51 +0,0 @@
|
|||
/*
|
||||
*
|
||||
* plugin.h - function declarations for libao plugins
|
||||
*
|
||||
* Copyright (C) Stan Seibert - June 2001
|
||||
*
|
||||
* This file is part of libao, a cross-platform audio outputlibrary. See
|
||||
* README for a history of this source code.
|
||||
*
|
||||
* libao is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* libao is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with GNU Make; see the file COPYING. If not, write to
|
||||
* the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*
|
||||
*/
|
||||
#ifndef __PLUGIN_H__
|
||||
#define __PLUGIN_H__
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif /* __cplusplus */
|
||||
|
||||
#include <stdlib.h>
|
||||
#include "os_types.h"
|
||||
|
||||
int ao_plugin_test();
|
||||
ao_info *ao_plugin_driver_info();
|
||||
int ao_plugin_device_init(ao_device *device);
|
||||
int ao_plugin_set_option(ao_device *device, const char *key, const char *value);
|
||||
int ao_plugin_open(ao_device *device, ao_sample_format *format);
|
||||
int ao_plugin_play(ao_device *device, const char *output_samples,
|
||||
uint_32 num_bytes);
|
||||
int ao_plugin_close(ao_device *device);
|
||||
void ao_plugin_device_clear(ao_device *device);
|
||||
const char *ao_plugin_file_extension();
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif /* __cplusplus */
|
||||
|
||||
#endif /* __PLUGIN_H__ */
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in a new issue