📄 w32_libflac_dll.c
字号:
#ifdef HAVE_CONFIG_H#include "config.h"#endif /* HAVE_CONFIG_H */#include "interface.h"#ifdef AU_FLAC_DLL#include <windows.h>#define FLAC__EXPORT_H /* don't include "OggFLAC/export.h" */#define FLAC_API#define OggFLAC__EXPORT_H /* don't include "FLAC/export.h" */#define OggFLAC_API#include "FLAC/all.h"#include "OggFLAC/all.h"#include <windows.h>#define FLAC__EXPORT_H /* don't include "OggFLAC/export.h" */#define FLAC_API#define OggFLAC__EXPORT_H /* don't include "FLAC/export.h" */#define OggFLAC_API#include "FLAC/all.h"#include "OggFLAC/all.h"/*************************************************************** dynamic load library name : libFLAC***************************************************************/#include "w32_libFLAC_dll.h"/*************************************************************** for c source ***************************************************************/#if defined(__cplusplus)extern "C" {#endiflibFLAC_dll_t *load_libFLAC_dll ( char *path ){ int err = 0; libFLAC_dll_t *dll = (libFLAC_dll_t *) malloc ( sizeof(libFLAC_dll_t) ); if ( dll == NULL ) return NULL; dll->__h_dll = LoadLibrary ( path ); if ( dll->__h_dll == NULL ) { free ( dll ); return NULL; };#ifndef IGNORE_libFLAC_FLAC__stream_encoder_new dll->FLAC__stream_encoder_new = (libFLAC_func_FLAC__stream_encoder_new_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_new" ); if ( dll->FLAC__stream_encoder_new == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_delete dll->FLAC__stream_encoder_delete = (libFLAC_func_FLAC__stream_encoder_delete_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_delete" ); if ( dll->FLAC__stream_encoder_delete == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_verify dll->FLAC__stream_encoder_set_verify = (libFLAC_func_FLAC__stream_encoder_set_verify_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_verify" ); if ( dll->FLAC__stream_encoder_set_verify == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_streamable_subset dll->FLAC__stream_encoder_set_streamable_subset = (libFLAC_func_FLAC__stream_encoder_set_streamable_subset_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_streamable_subset" ); if ( dll->FLAC__stream_encoder_set_streamable_subset == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_do_mid_side_stereo dll->FLAC__stream_encoder_set_do_mid_side_stereo = (libFLAC_func_FLAC__stream_encoder_set_do_mid_side_stereo_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_do_mid_side_stereo" ); if ( dll->FLAC__stream_encoder_set_do_mid_side_stereo == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_loose_mid_side_stereo dll->FLAC__stream_encoder_set_loose_mid_side_stereo = (libFLAC_func_FLAC__stream_encoder_set_loose_mid_side_stereo_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_loose_mid_side_stereo" ); if ( dll->FLAC__stream_encoder_set_loose_mid_side_stereo == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_channels dll->FLAC__stream_encoder_set_channels = (libFLAC_func_FLAC__stream_encoder_set_channels_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_channels" ); if ( dll->FLAC__stream_encoder_set_channels == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_bits_per_sample dll->FLAC__stream_encoder_set_bits_per_sample = (libFLAC_func_FLAC__stream_encoder_set_bits_per_sample_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_bits_per_sample" ); if ( dll->FLAC__stream_encoder_set_bits_per_sample == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_sample_rate dll->FLAC__stream_encoder_set_sample_rate = (libFLAC_func_FLAC__stream_encoder_set_sample_rate_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_sample_rate" ); if ( dll->FLAC__stream_encoder_set_sample_rate == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_blocksize dll->FLAC__stream_encoder_set_blocksize = (libFLAC_func_FLAC__stream_encoder_set_blocksize_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_blocksize" ); if ( dll->FLAC__stream_encoder_set_blocksize == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_max_lpc_order dll->FLAC__stream_encoder_set_max_lpc_order = (libFLAC_func_FLAC__stream_encoder_set_max_lpc_order_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_max_lpc_order" ); if ( dll->FLAC__stream_encoder_set_max_lpc_order == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_qlp_coeff_precision dll->FLAC__stream_encoder_set_qlp_coeff_precision = (libFLAC_func_FLAC__stream_encoder_set_qlp_coeff_precision_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_qlp_coeff_precision" ); if ( dll->FLAC__stream_encoder_set_qlp_coeff_precision == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_do_qlp_coeff_prec_search dll->FLAC__stream_encoder_set_do_qlp_coeff_prec_search = (libFLAC_func_FLAC__stream_encoder_set_do_qlp_coeff_prec_search_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_do_qlp_coeff_prec_search" ); if ( dll->FLAC__stream_encoder_set_do_qlp_coeff_prec_search == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_do_escape_coding dll->FLAC__stream_encoder_set_do_escape_coding = (libFLAC_func_FLAC__stream_encoder_set_do_escape_coding_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_do_escape_coding" ); if ( dll->FLAC__stream_encoder_set_do_escape_coding == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_do_exhaustive_model_search dll->FLAC__stream_encoder_set_do_exhaustive_model_search = (libFLAC_func_FLAC__stream_encoder_set_do_exhaustive_model_search_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_do_exhaustive_model_search" ); if ( dll->FLAC__stream_encoder_set_do_exhaustive_model_search == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_min_residual_partition_order dll->FLAC__stream_encoder_set_min_residual_partition_order = (libFLAC_func_FLAC__stream_encoder_set_min_residual_partition_order_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_min_residual_partition_order" ); if ( dll->FLAC__stream_encoder_set_min_residual_partition_order == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_max_residual_partition_order dll->FLAC__stream_encoder_set_max_residual_partition_order = (libFLAC_func_FLAC__stream_encoder_set_max_residual_partition_order_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_max_residual_partition_order" ); if ( dll->FLAC__stream_encoder_set_max_residual_partition_order == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_rice_parameter_search_dist dll->FLAC__stream_encoder_set_rice_parameter_search_dist = (libFLAC_func_FLAC__stream_encoder_set_rice_parameter_search_dist_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_rice_parameter_search_dist" ); if ( dll->FLAC__stream_encoder_set_rice_parameter_search_dist == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_total_samples_estimate dll->FLAC__stream_encoder_set_total_samples_estimate = (libFLAC_func_FLAC__stream_encoder_set_total_samples_estimate_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_total_samples_estimate" ); if ( dll->FLAC__stream_encoder_set_total_samples_estimate == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_metadata dll->FLAC__stream_encoder_set_metadata = (libFLAC_func_FLAC__stream_encoder_set_metadata_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_metadata" ); if ( dll->FLAC__stream_encoder_set_metadata == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_write_callback dll->FLAC__stream_encoder_set_write_callback = (libFLAC_func_FLAC__stream_encoder_set_write_callback_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_write_callback" ); if ( dll->FLAC__stream_encoder_set_write_callback == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_metadata_callback dll->FLAC__stream_encoder_set_metadata_callback = (libFLAC_func_FLAC__stream_encoder_set_metadata_callback_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_metadata_callback" ); if ( dll->FLAC__stream_encoder_set_metadata_callback == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_set_client_data dll->FLAC__stream_encoder_set_client_data = (libFLAC_func_FLAC__stream_encoder_set_client_data_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_set_client_data" ); if ( dll->FLAC__stream_encoder_set_client_data == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_get_state dll->FLAC__stream_encoder_get_state = (libFLAC_func_FLAC__stream_encoder_get_state_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_get_state" ); if ( dll->FLAC__stream_encoder_get_state == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_get_verify_decoder_state dll->FLAC__stream_encoder_get_verify_decoder_state = (libFLAC_func_FLAC__stream_encoder_get_verify_decoder_state_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_get_verify_decoder_state" ); if ( dll->FLAC__stream_encoder_get_verify_decoder_state == NULL ) err++;#endif#ifndef IGNORE_libFLAC_FLAC__stream_encoder_get_resolved_state_string dll->FLAC__stream_encoder_get_resolved_state_string = (libFLAC_func_FLAC__stream_encoder_get_resolved_state_string_t) GetProcAddress ( (HINSTANCE) dll->__h_dll, "FLAC__stream_encoder_get_resolved_state_string" ); if ( dll->FLAC__stream_encoder_get_resolved_state_string == NULL ) err++;#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -