/*
 *			GPAC - Multimedia Framework C SDK
 *
 *			Authors: Jean Le Feuvre
 *			Copyright (c) Telecom ParisTech 2000-2026
 *					All rights reserved
 *
 *  This file is part of GPAC
 *
 *  GPAC is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU Lesser General Public License as published by
 *  the Free Software Foundation; either version 2, or (at your option)
 *  any later version.
 *
 *  GPAC 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 Lesser General Public License for more details.
 **  You should have received a copy of the GNU Lesser General Public
 *  License along with this library; see the file COPYING.  If not, write to
 *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 *
 */

/*this file is only used with Win32&MSVC to export the symbols from libgpac(static) to libgpac(dynamic) based on the GPAC configuration*/
#include <gpac/setup.h>

#if defined(_WIN32_WCE) || defined(_WIN64)
#define EXPORT_SYMBOL(a) "/export:"#a
#else
#define EXPORT_SYMBOL(a) "/export:_"#a
#endif

#ifdef _WIN32_WCE
#pragma comment (linker, EXPORT_SYMBOL(CE_Assert) )
#pragma comment (linker, EXPORT_SYMBOL(CE_CharToWide) )
#pragma comment (linker, EXPORT_SYMBOL(CE_WideToChar) )
#endif

#pragma comment (linker, EXPORT_SYMBOL(gf_gpac_version) )
#pragma comment (linker, EXPORT_SYMBOL(gf_gpac_copyright) )
#pragma comment (linker, EXPORT_SYMBOL(gf_gpac_copyright_cite) )

#pragma comment (linker, EXPORT_SYMBOL(gf_gpac_abi_major) )
#pragma comment (linker, EXPORT_SYMBOL(gf_gpac_abi_minor) )
#pragma comment (linker, EXPORT_SYMBOL(gf_gpac_abi_micro) )

#pragma comment (linker, EXPORT_SYMBOL(gf_sys_init) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_close) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_set_args) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_get_argc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_get_argv) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_get_arg) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_find_global_arg) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_is_arg_used) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_mark_arg_used) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_is_test_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_old_arch_compat) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_is_quiet) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_features) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_clock) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_clock_high_res) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_get_rti) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_get_battery_state) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_get_options) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_is_gpac_arg) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_print_arg) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_print_core_help) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_set_cfg_option) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_localized) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_get_process_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_check_process_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_create_lockfile) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_set_console_code) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_format_help) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_word_match) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_enable_rmtws) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_enable_userws) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_get_rmtws) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_get_userws) )

#pragma comment (linker, EXPORT_SYMBOL(gf_rmt_get_settings) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rmt_set_on_new_client_cbk) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rmt_get_on_new_client_task) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rmt_get_peer_address) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rmt_client_send_to_ws) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rmt_client_set_on_data_cbk) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rmt_client_get_on_data_task) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rmt_client_set_on_del_cbk) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rmt_client_get_on_del_task) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rmt_client_get_rmt) )


#pragma comment (linker, EXPORT_SYMBOL(gf_sys_solve_path) )

#ifdef GPAC_ENABLE_COVERAGE
#pragma comment (linker, EXPORT_SYMBOL(gf_sys_is_cov_mode) )
#endif

#pragma comment (linker, EXPORT_SYMBOL(gf_sleep) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mkdir) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rmdir) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dir_exists) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dir_cleanup) )
#pragma comment (linker, EXPORT_SYMBOL(gf_get_default_cache_directory) )
#pragma comment (linker, EXPORT_SYMBOL(gf_get_default_font_dir) )
#pragma comment (linker, EXPORT_SYMBOL(gf_4cc_to_str) )
#pragma comment (linker, EXPORT_SYMBOL(gf_4cc_to_str_safe) )
#pragma comment (linker, EXPORT_SYMBOL(gf_4cc_parse) )
#pragma comment (linker, EXPORT_SYMBOL(gf_error_to_string) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rand_init) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rand) )
#pragma comment (linker, EXPORT_SYMBOL(gf_get_user_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_enum_directory) )
#pragma comment (linker, EXPORT_SYMBOL(gf_file_load_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dynstrcat) )
#pragma comment (linker, EXPORT_SYMBOL(gf_parse_lfrac) )
#pragma comment (linker, EXPORT_SYMBOL(gf_parse_frac) )
#pragma comment (linker, EXPORT_SYMBOL(gf_gmtime) )
#pragma comment (linker, EXPORT_SYMBOL(gf_strnistr) )
#pragma comment (linker, EXPORT_SYMBOL(gf_getch) )
#pragma comment (linker, EXPORT_SYMBOL(gf_read_line_input) )

#pragma comment (linker, EXPORT_SYMBOL(gf_log_modify_tools_levels) )
#pragma comment (linker, EXPORT_SYMBOL(gf_log_set_tools_levels) )
#pragma comment (linker, EXPORT_SYMBOL(gf_log_set_tool_level) )
#pragma comment (linker, EXPORT_SYMBOL(gf_log_get_tool_level) )
#pragma comment (linker, EXPORT_SYMBOL(gf_log_set_strict_error) )
#pragma comment (linker, EXPORT_SYMBOL(gf_log_set_callback) )
#pragma comment (linker, EXPORT_SYMBOL(gf_log_get_tools_levels) )
#pragma comment (linker, EXPORT_SYMBOL(gf_log_reset_file) )
#pragma comment (linker, EXPORT_SYMBOL(gf_log_tool_level_on) )
#pragma comment (linker, EXPORT_SYMBOL(gf_log_use_color) )
#pragma comment (linker, EXPORT_SYMBOL(gf_log_use_file) )

#ifndef GPAC_DISABLE_LOG
#pragma comment (linker, EXPORT_SYMBOL(gf_log) )
#pragma comment (linker, EXPORT_SYMBOL(gf_log_va_list) )
#pragma comment (linker, EXPORT_SYMBOL(gf_log_lt) )
#else
#pragma comment (linker, EXPORT_SYMBOL(gf_log_check_error) )
#endif

#pragma comment (linker, EXPORT_SYMBOL(gf_fileio_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fileio_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fileio_get_udta) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fileio_url) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fileio_resource_url) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fileio_translate_url) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fileio_set_stats) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fileio_tag_main_thread) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fileio_is_main_thread) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fileio_set_write_state) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fileio_register_delete_proc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fileio_unregister_delete_proc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fileio_from_url) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fileio_from_mem) )

#pragma comment (linker, EXPORT_SYMBOL(gf_set_progress) )
#pragma comment (linker, EXPORT_SYMBOL(gf_set_progress_callback) )
#pragma comment (linker, EXPORT_SYMBOL(gf_file_delete) )
#pragma comment (linker, EXPORT_SYMBOL(gf_file_move) )
#pragma comment (linker, EXPORT_SYMBOL(gf_file_temp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_file_modification_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fwrite) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fopen) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fclose) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fseek) )
#pragma comment (linker, EXPORT_SYMBOL(gf_ftell) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fread) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fgets) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fsize) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fd_fsize) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fgetc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fputc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fputs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fprintf) )
#pragma comment (linker, EXPORT_SYMBOL(gf_vfprintf) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fflush) )
#pragma comment (linker, EXPORT_SYMBOL(gf_feof) )
#pragma comment (linker, EXPORT_SYMBOL(gf_ferror) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fd_open) )


#pragma comment (linker, EXPORT_SYMBOL(gf_file_exists) )
#pragma comment (linker, EXPORT_SYMBOL(gf_file_basename) )
#pragma comment (linker, EXPORT_SYMBOL(gf_file_ext_start) )
#pragma comment (linker, EXPORT_SYMBOL(gf_url_colon_suffix) )
#pragma comment (linker, EXPORT_SYMBOL(gf_realpath) )
#pragma comment (linker, EXPORT_SYMBOL(gf_prompt_has_input) )
#pragma comment (linker, EXPORT_SYMBOL(gf_prompt_get_char) )
#pragma comment (linker, EXPORT_SYMBOL(gf_prompt_set_echo_off) )
#pragma comment (linker, EXPORT_SYMBOL(gf_prompt_get_size) )

#pragma comment (linker, EXPORT_SYMBOL(gf_crc_32) )
#pragma comment (linker, EXPORT_SYMBOL(gf_gz_compress_payload) )
#pragma comment (linker, EXPORT_SYMBOL(gf_gz_compress_payload_ex) )
#pragma comment (linker, EXPORT_SYMBOL(gf_gz_decompress_payload) )
#pragma comment (linker, EXPORT_SYMBOL(gf_gz_decompress_payload_ex) )
#pragma comment (linker, EXPORT_SYMBOL(gf_lz_compress_payload) )
#pragma comment (linker, EXPORT_SYMBOL(gf_lz_decompress_payload) )
#pragma comment (linker, EXPORT_SYMBOL(gf_file_handles_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_timestamp_rescale) )
#pragma comment (linker, EXPORT_SYMBOL(gf_timestamp_rescale_signed) )
#pragma comment (linker, EXPORT_SYMBOL(gf_timestamp_less) )
#pragma comment (linker, EXPORT_SYMBOL(gf_timestamp_less_or_equal) )
#pragma comment (linker, EXPORT_SYMBOL(gf_timestamp_greater) )
#pragma comment (linker, EXPORT_SYMBOL(gf_timestamp_greater_or_equal) )
#pragma comment (linker, EXPORT_SYMBOL(gf_timestamp_equal) )
#pragma comment (linker, EXPORT_SYMBOL(gf_format_duration) )

/* Memory */
#ifdef GPAC_MEMORY_TRACKING
#pragma comment (linker, EXPORT_SYMBOL(gf_mem_malloc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mem_calloc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mem_realloc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mem_free) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mem_strdup) )
#pragma comment (linker, EXPORT_SYMBOL(gf_memory_print) )
#pragma comment (linker, EXPORT_SYMBOL(gf_memory_size) )
#else
#pragma comment (linker, EXPORT_SYMBOL(gf_malloc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_calloc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_realloc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_free) )
#pragma comment (linker, EXPORT_SYMBOL(gf_strdup) )
#endif /*GPAC_MEMORY_TRACKING*/

#pragma comment (linker, EXPORT_SYMBOL(gf_strlcpy) )
#pragma comment (linker, EXPORT_SYMBOL(gf_strlcat) )

/* Sound */
#if !defined(GPAC_DISABLE_COMPOSITOR) &&  !defined(GPAC_DISABLE_RESAMPLE)
#pragma comment (linker, EXPORT_SYMBOL(gf_mixer_set_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mixer_get_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mixer_reconfig) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mixer_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mixer_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mixer_empty) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mixer_lock) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mixer_add_input) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mixer_get_output) )
#endif


/* List */
#pragma comment (linker, EXPORT_SYMBOL(gf_list_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_list_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_list_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_list_add) )
#pragma comment (linker, EXPORT_SYMBOL(gf_list_insert) )
#pragma comment (linker, EXPORT_SYMBOL(gf_list_rem) )
#pragma comment (linker, EXPORT_SYMBOL(gf_list_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_list_enum) )
#pragma comment (linker, EXPORT_SYMBOL(gf_list_find) )
#pragma comment (linker, EXPORT_SYMBOL(gf_list_del_item) )
#pragma comment (linker, EXPORT_SYMBOL(gf_list_reset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_list_last) )
#pragma comment (linker, EXPORT_SYMBOL(gf_list_rem_last) )
#pragma comment (linker, EXPORT_SYMBOL(gf_list_swap) )
#pragma comment (linker, EXPORT_SYMBOL(gf_list_transfer) )
#pragma comment (linker, EXPORT_SYMBOL(gf_list_clone) )
#pragma comment (linker, EXPORT_SYMBOL(gf_list_pop_front) )
#pragma comment (linker, EXPORT_SYMBOL(gf_list_pop_back) )


/* Bitstream */
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_from_file) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_read_bit) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_read_int) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_read_long_int) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_read_u8) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_read_u16) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_read_u24) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_read_u32) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_read_u64) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_read_float) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_read_double) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_read_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_write_int) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_write_long_int) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_write_u8) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_write_u16) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_write_u24) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_write_u32) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_write_u64) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_write_float) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_write_double) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_write_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_set_eos_callback) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_align) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_available) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_get_content) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_skip_bytes) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_seek) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_peek_bits) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_get_position) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_get_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_get_refreshed_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_transfer) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_flush) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_bits_available) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_get_bit_offset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_get_bit_position) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_get_content_no_truncate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_read_vluimsbf5) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_read_u16_le) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_read_u32_le) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_truncate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_write_byte) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_write_u16_le) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_write_u32_le) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_enable_emulation_byte_removal ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_get_emulation_byte_removed ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_read_utf8 ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_write_utf8 ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_reassign_buffer))
#pragma comment (linker, EXPORT_SYMBOL(gf_bs_is_overflow))

/* Thread */
#pragma comment (linker, EXPORT_SYMBOL(gf_th_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_th_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_th_run) )
#pragma comment (linker, EXPORT_SYMBOL(gf_th_stop) )
#pragma comment (linker, EXPORT_SYMBOL(gf_th_status) )
#pragma comment (linker, EXPORT_SYMBOL(gf_th_set_priority) )
#pragma comment (linker, EXPORT_SYMBOL(gf_th_id) )

/* Lock */
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_v) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_p) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_try_lock) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_get_num_locks) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sema_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sema_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sema_notify) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sema_wait) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sema_wait_for) )

/* Socket */
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_new_ex) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_reset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_set_buffer_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_set_block_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_get_handle) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_bind) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_connect) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_send) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_receive) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_listen) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_accept) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_server_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_get_host_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_get_local_ip) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_get_local_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_get_remote_address) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_get_remote_address_port) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_setup_multicast) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_is_multicast_address) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_receive_no_select) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sk_set_usec_wait) )

#pragma comment (linker, EXPORT_SYMBOL(gf_url_is_local) )
#pragma comment (linker, EXPORT_SYMBOL(gf_url_get_absolute_path) )
#pragma comment (linker, EXPORT_SYMBOL(gf_url_concatenate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_url_free) )
#pragma comment (linker, EXPORT_SYMBOL(gf_url_get_resource_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_url_to_fs_path) )
#pragma comment (linker, EXPORT_SYMBOL(gf_url_is_relative) )
#pragma comment (linker, EXPORT_SYMBOL(gf_utc_time_since_1970) )
#pragma comment (linker, EXPORT_SYMBOL(gf_net_get_ntp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_net_get_ntp_ts) )
#pragma comment (linker, EXPORT_SYMBOL(gf_net_get_ntp_diff_ms) )
#pragma comment (linker, EXPORT_SYMBOL(gf_net_set_ntp_shift) )
#pragma comment (linker, EXPORT_SYMBOL(gf_net_get_utc_ts) )
#pragma comment (linker, EXPORT_SYMBOL(gf_net_ntp_to_utc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_net_ntp_add_usec) )

#pragma comment (linker, EXPORT_SYMBOL(gf_net_reload_netcap) )

#pragma comment (linker, EXPORT_SYMBOL(gf_errno_str) )
#pragma comment (linker, EXPORT_SYMBOL(gf_get_next_pow2) )
#pragma comment (linker, EXPORT_SYMBOL(gf_htonl) )
#pragma comment (linker, EXPORT_SYMBOL(gf_htons) )
#pragma comment (linker, EXPORT_SYMBOL(gf_ntohl) )
#pragma comment (linker, EXPORT_SYMBOL(gf_ntohs) )

#pragma comment (linker, EXPORT_SYMBOL(gf_blob_register) )
#pragma comment (linker, EXPORT_SYMBOL(gf_blob_unregister) )
#pragma comment (linker, EXPORT_SYMBOL(gf_blob_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_blob_release) )


#pragma comment (linker, EXPORT_SYMBOL(gf_net_get_utc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_net_parse_date) )
#pragma comment (linker, EXPORT_SYMBOL(gf_net_get_timezone) )
#pragma comment (linker, EXPORT_SYMBOL(gf_net_has_ipv6) )
#pragma comment (linker, EXPORT_SYMBOL(gf_net_is_ipv6) )
#pragma comment (linker, EXPORT_SYMBOL(gf_net_enum_interfaces) )
#pragma comment (linker, EXPORT_SYMBOL(gf_base64_encode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_base64_decode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_base16_encode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_base16_decode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bin128_parse) )

#pragma comment (linker, EXPORT_SYMBOL(gf_token_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_token_get_line) )
#pragma comment (linker, EXPORT_SYMBOL(gf_token_find) )
#pragma comment (linker, EXPORT_SYMBOL(gf_token_get_strip) )
#pragma comment (linker, EXPORT_SYMBOL(gf_token_find_word) )

#pragma comment (linker, EXPORT_SYMBOL(gf_cfg_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cfg_force_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cfg_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cfg_save) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cfg_get_key) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cfg_set_key) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cfg_get_section_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cfg_get_section_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cfg_get_key_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cfg_get_key_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cfg_del_section) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cfg_get_filename) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cfg_discard_changes) )

#pragma comment (linker, EXPORT_SYMBOL(gf_opts_get_key) )
#pragma comment (linker, EXPORT_SYMBOL(gf_opts_set_key) )
#pragma comment (linker, EXPORT_SYMBOL(gf_opts_get_key_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_opts_del_section) )
#pragma comment (linker, EXPORT_SYMBOL(gf_opts_get_section_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_opts_get_section_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_opts_get_key_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_opts_discard_changes) )
#pragma comment (linker, EXPORT_SYMBOL(gf_opts_get_bool) )
#pragma comment (linker, EXPORT_SYMBOL(gf_opts_get_int) )
#pragma comment (linker, EXPORT_SYMBOL(gf_opts_get_filename) )
#pragma comment (linker, EXPORT_SYMBOL(gf_opts_default_shared_directory) )
#pragma comment (linker, EXPORT_SYMBOL(gf_opts_save) )
#pragma comment (linker, EXPORT_SYMBOL(gf_creds_check_password) )
#pragma comment (linker, EXPORT_SYMBOL(gf_creds_check_membership) )


#ifndef GPAC_DISABLE_COMPOSITOR
#pragma comment (linker, EXPORT_SYMBOL(gf_modules_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_modules_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_modules_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_modules_get_file_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_module_get_file_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_module_load_static) )
#pragma comment (linker, EXPORT_SYMBOL(gf_modules_load) )
#pragma comment (linker, EXPORT_SYMBOL(gf_modules_load_by_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_modules_close_interface) )
#endif
#pragma comment (linker, EXPORT_SYMBOL(gf_module_get_key) )
#pragma comment (linker, EXPORT_SYMBOL(gf_module_get_bool) )
#pragma comment (linker, EXPORT_SYMBOL(gf_module_get_int) )

#pragma comment (linker, EXPORT_SYMBOL(gf_utf8_wcstombs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_utf8_mbstowcs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_utf8_wcslen) )
#pragma comment (linker, EXPORT_SYMBOL(gf_utf8_to_wcs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_wcs_to_utf8) )
#pragma comment (linker, EXPORT_SYMBOL(gf_utf8_is_legal) )

#if !defined(GPAC_DISABLE_SVG) && !defined(GPAC_DISABLE_COMPOSITOR)
#pragma comment (linker, EXPORT_SYMBOL(gf_utf8_is_right_to_left) )
#pragma comment (linker, EXPORT_SYMBOL(gf_utf8_reorder_bidi) )
#endif


#pragma comment (linker, EXPORT_SYMBOL(gf_lang_get_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_lang_find) )
#pragma comment (linker, EXPORT_SYMBOL(gf_lang_get_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_lang_get_2cc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_lang_get_3cc) )


#pragma comment (linker, EXPORT_SYMBOL(gf_dm_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_new_simple) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_process) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_process_headers) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_get_cache_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_get_stats) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_get_utc_start) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_fetch_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_last_error) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_get_resource_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_mime_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_get_header) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_get_header_sizes_and_times) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_enum_headers) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_set_max_rate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_get_max_rate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_is_regulated) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_set_data_rate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_get_data_rate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_set_auth_callback) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_delete_cached_file_entry_session) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_url_info_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_get_url_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_url_info_init) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_abort) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_set_range) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_sess_setup_from_url) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_get_global_rate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_wget) )

#pragma comment (linker, EXPORT_SYMBOL(gf_xml_sax_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_sax_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_sax_init) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_sax_parse) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_sax_suspend) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_sax_parse_file) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_sax_get_line) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_sax_peek_node) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_sax_binary_file) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_sax_get_error) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_get_root_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_sax_get_node_start_pos) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_sax_get_node_end_pos) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_dom_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_dom_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_dom_parse) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_dom_create_attribute) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_dom_append_child) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_dom_get_root) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_dom_get_error) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_dom_get_line) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_dom_serialize) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_dom_serialize_root) )

#pragma comment (linker, EXPORT_SYMBOL(gf_xml_dom_node_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_dom_node_reset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_dom_parse_string) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_dom_get_root_nodes_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_dom_get_root_idx) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_dom_detach_root) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_parse_bit_sequence) )

#ifndef GPAC_DISABLE_SVG
#pragma comment (linker, EXPORT_SYMBOL(gf_dom_get_key_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dom_get_key_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dom_event_get_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dom_event_fire_ex) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dom_listener_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dom_listener_get) )
#endif

#ifdef GPAC_FIXED_POINT
#pragma comment (linker, EXPORT_SYMBOL(gf_invfix) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mulfix) )
#pragma comment (linker, EXPORT_SYMBOL(gf_muldiv) )
#pragma comment (linker, EXPORT_SYMBOL(gf_divfix) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cos) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sin) )
#pragma comment (linker, EXPORT_SYMBOL(gf_tan) )
#pragma comment (linker, EXPORT_SYMBOL(gf_atan2) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sqrt) )
#pragma comment (linker, EXPORT_SYMBOL(gf_ceil) )
#pragma comment (linker, EXPORT_SYMBOL(gf_floor) )
#pragma comment (linker, EXPORT_SYMBOL(gf_acos) )
#pragma comment (linker, EXPORT_SYMBOL(gf_asin) )
#endif /*GPAC_FIXED_POINT*/

#ifndef GPAC_DISABLE_COMPOSITOR
#pragma comment (linker, EXPORT_SYMBOL(gf_angle_diff) )
#pragma comment (linker, EXPORT_SYMBOL(gf_v2d_len) )
#pragma comment (linker, EXPORT_SYMBOL(gf_v2d_from_polar) )
#pragma comment (linker, EXPORT_SYMBOL(gf_v2d_distance) )
#pragma comment (linker, EXPORT_SYMBOL(gf_irect_union) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rect_union) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rect_center) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rect_overlaps) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rect_equal) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rect_pixelize) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx2d_add_matrix) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx2d_pre_multiply) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx2d_add_translation) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx2d_add_rotation) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx2d_add_scale) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx2d_add_scale_at) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx2d_add_skew) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx2d_add_skew_x) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx2d_add_skew_y) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx2d_inverse) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx2d_apply_coords) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx2d_apply_point) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx2d_apply_rect) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx2d_decompose) )

#pragma comment (linker, EXPORT_SYMBOL(gf_get_bit_size) )

/*exported for 3D tools*/
#pragma comment (linker, EXPORT_SYMBOL(gf_vec_len) )
#pragma comment (linker, EXPORT_SYMBOL(gf_vec_lensq) )
#pragma comment (linker, EXPORT_SYMBOL(gf_vec_dot) )
#pragma comment (linker, EXPORT_SYMBOL(gf_vec_norm) )
#pragma comment (linker, EXPORT_SYMBOL(gf_vec_scale) )
#pragma comment (linker, EXPORT_SYMBOL(gf_vec_cross) )
#pragma comment (linker, EXPORT_SYMBOL(gf_vec_scale_p) )
#pragma comment (linker, EXPORT_SYMBOL(gf_vec_cross_p) )
#pragma comment (linker, EXPORT_SYMBOL(gf_quat_to_rotation) )
#pragma comment (linker, EXPORT_SYMBOL(gf_quat_from_matrix) )
#pragma comment (linker, EXPORT_SYMBOL(gf_quat_from_rotation) )
#pragma comment (linker, EXPORT_SYMBOL(gf_quat_get_inv) )
#pragma comment (linker, EXPORT_SYMBOL(gf_quat_multiply) )
#pragma comment (linker, EXPORT_SYMBOL(gf_quat_rotate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_quat_from_axis_cos) )
#pragma comment (linker, EXPORT_SYMBOL(gf_quat_slerp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bbox_refresh) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bbox_from_rect) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rect_from_bbox) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bbox_grow_point) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bbox_union) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bbox_equal) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bbox_point_inside) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bbox_get_vertices) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_from_mx2d) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_equal) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_add_translation) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_add_scale) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_add_rotation) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_add_matrix) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_add_matrix_2d) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_inverse) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_apply_vec) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_apply_rect) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_ortho) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_perspective) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_lookat) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_apply_bbox) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_apply_bbox_4x4) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_add_matrix_4x4) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_inverse_4x4) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_apply_vec_4x4) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_decompose) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_rotate_vector) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_rotation_matrix_from_vectors) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_apply_bbox_sphere) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_get_yaw_pitch_roll) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_transpose) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx2d_from_mx) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_apply_plane) )
#pragma comment (linker, EXPORT_SYMBOL(gf_plane_get_distance) )
#pragma comment (linker, EXPORT_SYMBOL(gf_plane_intersect_line) )
#pragma comment (linker, EXPORT_SYMBOL(gf_closest_point_to_line) )
#pragma comment (linker, EXPORT_SYMBOL(gf_plane_get_p_vertex_idx) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bbox_plane_relation) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mx_apply_ray) )
#pragma comment (linker, EXPORT_SYMBOL(gf_ray) )
#pragma comment (linker, EXPORT_SYMBOL(gf_ray_hit_box) )
#pragma comment (linker, EXPORT_SYMBOL(gf_ray_hit_sphere) )
#pragma comment (linker, EXPORT_SYMBOL(gf_ray_hit_triangle) )

/*color.h exports*/
#pragma comment (linker, EXPORT_SYMBOL(gf_stretch_bits) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cmx_init) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cmx_set) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cmx_copy) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cmx_multiply) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cmx_apply) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cmx_apply_fixed) )
#pragma comment (linker, EXPORT_SYMBOL(gf_color_parse) )
#pragma comment (linker, EXPORT_SYMBOL(gf_color_get_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_color_enum) )



/*path2d.h exports*/
#pragma comment (linker, EXPORT_SYMBOL(gf_path_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_reset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_close) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_add_move_to) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_add_move_to_vec) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_add_line_to) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_add_line_to_vec) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_add_cubic_to) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_add_cubic_to_vec) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_add_quadratic_to) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_add_quadratic_to_vec) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_add_rect_center) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_add_rect) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_add_ellipse) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_add_bezier) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_add_arc_to) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_add_svg_arc_to) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_add_arc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_get_control_bounds) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_get_bounds) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_flatten) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_get_flatten) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_iterator_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_iterator_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_iterator_get_length) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_iterator_get_transform) )
#pragma comment (linker, EXPORT_SYMBOL(gf_polygone2d_get_convexity) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_get_outline) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_point_over) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_clone) )
#pragma comment (linker, EXPORT_SYMBOL(gf_path_is_empty) )

#endif //GPAC_DISABLE_COMPOSITOR

/*mpeg4_odf.h exports*/
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_desc_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_desc_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_desc_esd_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_parse_descriptor) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_write_descriptor) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_desc_read) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_desc_copy) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_codec_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_codec_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_codec_add_com) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_codec_encode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_codec_get_au) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_codec_set_au) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_codec_decode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_codec_get_com) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_com_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_com_del) )

#pragma comment (linker, EXPORT_SYMBOL(gf_odf_slc_set_pref) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_get_bifs_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_get_text_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_get_laser_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_encode_ui_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_sl_depacketize) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_desc_write) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_desc_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_desc_write_bs) )

#pragma comment (linker, EXPORT_SYMBOL(gf_odf_avc_cfg_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_avc_cfg_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_avc_cfg_read) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_avc_cfg_write) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_avc_cfg_write_bs) )

#pragma comment (linker, EXPORT_SYMBOL(gf_odf_hevc_cfg_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_hevc_cfg_read) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_hevc_cfg_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_hevc_cfg_read_bs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_hevc_cfg_write) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_hevc_cfg_write_bs) )

#pragma comment (linker, EXPORT_SYMBOL(gf_odf_vvc_cfg_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_vvc_cfg_read) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_vvc_cfg_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_vvc_cfg_read_bs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_vvc_cfg_write) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_vvc_cfg_write_bs) )

#pragma comment (linker, EXPORT_SYMBOL(gf_odf_av1_cfg_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_av1_cfg_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_av1_cfg_write) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_av1_cfg_write_bs) )

#pragma comment (linker, EXPORT_SYMBOL(gf_odf_avs3v_cfg_read) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_avs3v_cfg_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_avs3v_cfg_write) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_avs3v_cfg_write_bs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_avs3v_cfg_del ) )

#pragma comment (linker, EXPORT_SYMBOL(gf_odf_vp_cfg_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_vp_cfg_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_vp_cfg_read) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_vp_cfg_read_bs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_vp_cfg_write) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_vp_cfg_write_bs) )

#pragma comment (linker, EXPORT_SYMBOL(gf_odf_dump_txtcfg) )

#pragma comment (linker, EXPORT_SYMBOL(gf_odf_opus_cfg_parse))
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_opus_cfg_parse_bs))
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_opus_cfg_write))
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_opus_cfg_write_bs))


#pragma comment (linker, EXPORT_SYMBOL(gf_odf_ac3_cfg_parse))
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_ac3_cfg_parse_bs))
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_ac3_cfg_write))
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_ac3_cfg_write_bs))

#pragma comment (linker, EXPORT_SYMBOL(gf_odf_dovi_cfg_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_dovi_cfg_read_bs))
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_dovi_cfg_write_bs))


#pragma comment (linker, EXPORT_SYMBOL(gf_odf_ac4_cfg_parse))
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_ac4_cfg_parse_bs))
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_ac4_cfg_write))
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_ac4_cfg_write_bs))
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_ac4_cfg_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_ac4_cfg_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_ac4_cfg_deep_copy) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_ac4_cfg_clean_list) )



#ifndef GPAC_MINIMAL_ODF
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_desc_add_desc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_desc_list_read) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_desc_list_write) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_desc_list_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_desc_list_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_qos_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_qos_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_qos_add_qualif) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_event_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_event_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_event_set_start_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_event_set_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_event_add_desc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_event_get_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_event_get_start_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_event_get_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_event_get_desc_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_event_get_desc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_event_rem_desc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_codec_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_codec_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_codec_add_event) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_codec_encode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_codec_decode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_codec_get_event) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sl_packetize) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sl_get_header_size) )
#endif /*GPAC_MINIMAL_ODF*/

/*isomedia.h exports*/
#ifndef GPAC_DISABLE_ISOM
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_sample_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_sample_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_last_error) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_probe_file) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_open) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_close) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_delete) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_write_callback) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_can_access_movie))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_moov_first) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_box_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_box_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_box_parse) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_box_find_child) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_clone_box) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_xml_metadata_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_dims_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_stxt_get_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_new_xml_subtitle_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_xml_subtitle_get_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_open_progressive) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_missing_bytes) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_freeze_order) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_inplace_padding) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_fragmented) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_fragmented_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_fragments_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_fragmented_samples_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_track_fragmented) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_reset_tables) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_reset_data_offset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_release_segment) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_open_segment) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_highest_track_in_scalable_segment) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_refresh_fragmented) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_override_dref_url) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_track_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_timescale) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_original_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_creation_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_track_creation_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_track_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_track_by_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_track_enabled) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_track_flags) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_enum_track_group) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_track_encrypted) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_track_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_media_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_media_subtype) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_mpeg4_subtype) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_media_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample_description_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample_description_index) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_self_contained) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_media_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_media_original_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_media_timescale) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_chunks_infos) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_handler_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_media_language) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_check_data_reference) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_data_reference) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_sample_padding) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample_info_ex) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample_flags) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample_for_media_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample_for_movie_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample_dts) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample_sync) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_edit_list_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_edits_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_edit) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_copyright_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_copyright) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_has_sync_points) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_has_time_offset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_cts_to_dts_shift) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sync_point_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_root_od) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_disable_odf_conversion) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_track_in_root_od) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_esd) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_decoder_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_reference_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_reference) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_reference_ID) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_has_track_reference) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_filename) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_brand_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_alternate_brand) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_has_padding_bits) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_visual_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_visual_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_visual_bit_depth) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_pixel_aspect_ratio) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_audio_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_chapter_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_chapter) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_user_data_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_user_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_generic_sample_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_fragment_defaults) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_default_sync_track) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_3gp_config_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_ac3_config_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_ac4_config_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_truehd_config_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_text_set_streaming_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_track_layout_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_track_matrix) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_pl_indication) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_media_encrypted) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_ismacryp_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_ismacryp_media) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_ismacryp_delete_sample) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_ismacryp_sample) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_cenc_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_original_format_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_pssh_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_pssh_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_cenc_media) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample_cenc_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_cenc_get_sample_aux_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_cenc_get_default_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_avc_svc_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_avc_config_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_svc_config_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_3gp_config_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_hevc_config_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_lhvc_config_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_hevc_lhvc_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_vvc_config_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_vvc_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_meta_item_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_meta_item_by_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_meta_get_next_item_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_meta_item_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_meta_item_flags) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_meta_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_has_meta_xml) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_extract_meta_xml) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_extract_meta_item) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_extract_meta_item_mem) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_meta_image_props) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_has_movie) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_has_segment) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_segment_get_fragment_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_segment_get_track_fragment_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_segment_get_track_fragment_decode_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_segment_get_fragment_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_single_av) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_guess_specification) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_keep_utc_times) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_has_keep_utc_times) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_has_sync_shadows) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_has_sample_dependency) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_find_od_id_for_track) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_apple_get_tag) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_apple_enum_tag) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_apple_enum_tag_ex) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_wma_enum_tag) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_enum_udta_keys) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_media_data_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_omadrm_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_omadrm_media) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_track_switch_group_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_track_switch_parameter) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_next_alternate_group_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_meta_primary_item_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_meta_get_item_ref_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_meta_item_has_ref) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_meta_get_item_ref_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_JPEG2000) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_rvc_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample_rap_roll_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_reset_fragment_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_reset_sample_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_reset_seq_num) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_track_original_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_nalu_extract_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_nalu_extract_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_composition_offset_shift) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_needs_layer_reconstruction) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_last_producer_time_box) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_current_tfdt) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_smooth_streaming_moov) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_smooth_next_tfdt) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_adobe_protection_media) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_adobe_protection_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample_group_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_tile_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_oinf_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_udta_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_udta_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_video_handler_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_sample_is_fragment_start) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_constant_sample_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_constant_sample_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_enable_raw_pack) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_track_magic) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample_from_dts) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_sample_padding_bits) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_sample_get_subsample) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_sample_has_subsamples) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_sample_get_subsamples_buffer) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_max_sample_delta) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_mpegh_compatible_profiles) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_av1_config_get ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_avs3v_config_get ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_mvc_config_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_extract_meta_item_get_cenc_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_subtitle_get_mime) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_chunk_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_chunk_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_first_mdat_start) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_unused_box_bytes) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_clean_aperture) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_dovi_config_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_iamf_config_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_opus_config_get_desc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_pcm_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_lpcm_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_enum_track_references) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_text_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_track_referenced) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_external_track) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_switch_source) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_min_negative_cts_offset))

# ifndef GPAC_DISABLE_ISOM_DUMP
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_dump) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_num_supported_boxes) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_supported_box_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_dump_supported_box) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_text_dump) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_dump_ismacryp_protection) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_dump_ismacryp_sample) )
#endif

#ifndef GPAC_DISABLE_ISOM_HINTING
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_payt_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_payt_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_sdp_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_sdp_track_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hinter_track_force_no_offsets) )

# ifndef GPAC_DISABLE_ISOM_DUMP
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_dump_hint_sample) )
#endif

#pragma comment (linker, EXPORT_SYMBOL(gf_isom_hint_pck_read) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_hint_pck_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_hint_pck_new) )

#ifndef GPAC_DISABLE_ISOM_WRITE
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_hint_pck_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_hint_pck_write) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_hint_pck_length) )
#endif

#endif

#ifndef GPAC_DISABLE_ISOM_WRITE
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_timescale) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_new_track) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_remove_track) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_creation_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_track_creation_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_media_creation_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_update_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_track_enabled) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_track_flags) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_track_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_force_track_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_rewrite_track_dependencies) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_add_sample) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_add_sample_shadow) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_append_sample_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_refresh_size_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_add_sample_reference) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_last_sample_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_last_sample_duration_ex) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_track_reference) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_remove_track_references) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_remove_track_reference) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_update_sample) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_update_sample_reference) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_remove_sample) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_final_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_storage_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_enable_compression) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_force_64bit_chunk_offset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_interleave_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_copyright) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_media_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_media_subtype) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_add_track_kind) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_remove_track_kind) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_track_kind) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_track_kind_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_edit) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_edit_with_rate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_modify_edit) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_append_edit) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_remove_edit) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_remove_edits) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_update_edit_list_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_media_language) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_handler_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_add_user_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_add_user_data_boxes) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_remove_user_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_remove_user_data_item) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_add_uuid) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_use_compact_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_disable_brand_rewrite) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_brand_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_modify_alternate_brand) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_reset_alt_brands) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_reset_alt_brands_ex) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_visual_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_visual_color_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_visual_bit_depth) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_dolby_vision_profile) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_dolby_vision_brands) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_pixel_aspect_ratio) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_track_layout_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_track_matrix) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_audio_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_cts_packing) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_shift_cts_offset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_pl_indication) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_root_od_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_root_od_url) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_remove_root_od) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_add_desc_to_root_od) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_add_track_to_root_od) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_remove_track_from_root_od) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_new_mpeg4_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_change_mpeg4_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_add_desc_to_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_new_generic_sample_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_update_bitrate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_update_bitrate_ex) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_clone_sample_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_clone_track) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_clone_pl_indications) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_same_sample_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_add_chapter) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_remove_chapter) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_track_interleaving_group) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_track_priority_in_group) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_hint_max_chunk_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_hint_max_chunk_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_extraction_slc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_make_interleave) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_3gp_config_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_3gp_config_update) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_new_text_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_new_text_sample) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_text_reset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_text_add_text) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_text_add_style) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_text_add_highlight) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_text_set_highlight_color) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_text_add_karaoke) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_text_set_karaoke_segment) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_text_set_scroll_delay) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_text_add_hyperlink) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_text_set_box) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_text_add_blink) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_text_set_wrap) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_text_set_forced) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_text_set_display_flags) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_text_to_sample) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_ismacryp_protection) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_change_ismacryp_protection) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_avc_config_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_avc_config_update) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_avc_set_inband_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_svc_config_update) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_hevc_config_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_hevc_config_update) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_hevc_set_inband_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_lhvc_force_inband_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_lhvc_config_update) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_3gp_config_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_3gp_config_update) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_media_timescale) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_estimate_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_meta_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_add_meta_item) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_add_meta_item2) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_add_meta_item_memory) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_remove_meta_item) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_meta_primary_item) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_meta_xml) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_meta_add_item_ref) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_meta_add_item_group) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_iff_create_image_item_from_track) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_iff_create_image_grid_item) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_iff_create_image_overlay_item) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_iff_create_image_identity_item) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_remove_meta_xml) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_apple_set_tag) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_wma_set_tag) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_qt_key) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_next_alternate_group_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_ipod_compatible) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_is_inplace_rewrite) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_disable_inplace_rewrite) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_reset_switch_parameters) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_reset_track_switch_parameter) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_track_switch_parameter) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_alternate_group_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_new_dims_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_rvc_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_sample_rap_group) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_sample_roll_group) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_sample_cenc_group) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_composition_offset_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_add_sample_group_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_add_sample_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_copy_sample_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_remove_sample_group) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_track_group) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_progress_callback) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_apply_box_patch) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_ac3_config_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_ac3_config_update) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_ac4_config_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_ac4_config_update) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_box_write) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_box_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_tmcd_config_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_tmcd_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_track_magic) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_vvc_config_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_vvc_set_inband_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_subtitle_set_mime) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_track_index) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_new_external_track) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_cenc_set_pssh))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_cenc_protection))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_piff_allocate_storage))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_cenc_allocate_storage))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_track_cenc_add_sample_info))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_ctts_v1))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_forced_text))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_sample_group_in_traf))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_reset_alt_brands_ex))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_mvc_config_update))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_new_xml_metadata_description))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_new_stxt_description))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_new_webvtt_description))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_new_mpha_description))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_truehd_config_new))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_oma_protection))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_adobe_protection))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_generic_protection))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_enable_auto_track_reorder))

#pragma comment (linker, EXPORT_SYMBOL(gf_isom_remove_cenc_senc_box))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_remove_cenc_seig_sample_group))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_update_sample_description_from_template))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_y3d_info))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_movie_duration))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_new_track_from_template))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_track_stsd_templates))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_vexu))



#ifndef GPAC_DISABLE_ISOM_HINTING
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_setup_hint_track) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_new_hint_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_begin_hint_sample) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_end_hint_sample) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_hint_blank_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_hint_direct_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_hint_sample_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_hint_sample_description_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_rtp_packet_begin) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_rtp_packet_set_flags) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_rtp_packet_set_offset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_rtp_set_timescale) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_rtp_set_time_offset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_rtp_set_time_sequence_offset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_sdp_add_track_line) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_sdp_clean_track) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_sdp_add_line) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_sdp_clean) )
#endif /*GPAC_DISABLE_ISOM_HINTING*/

#ifndef GPAC_DISABLE_ISOM_FRAGMENTS
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_setup_track_fragment) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_finalize_for_fragment) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_start_fragment) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_flush_fragments) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_fragment_reference_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_traf_mss_timeext) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_fragment_option) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_single_moof_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_fragment_add_sample) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_fragment_append_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_clone_pssh) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_start_segment) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_close_segment) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_traf_base_media_decode_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_next_moof_number) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_next_moof_number) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_enable_mfra))
#endif

#endif /*GPAC_DISABLE_ISOM_WRITE*/

/*isomedia_dev.h exports*/
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_parse_text_sample) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_delete_text_sample) )

#ifndef GPAC_DISABLE_STREAMING
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_streamer_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_streamer_new_ex) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_streamer_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_streamer_append_sdp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_streamer_append_sdp_extended) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_streamer_send_au) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_streamer_send_au_with_sn) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_streamer_send_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_streamer_format_sdp_header) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_streamer_disable_auto_rtcp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_streamer_send_rtcp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_streamer_get_payload_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_streamer_set_interleave_callbacks) )

#endif

#pragma comment (linker, EXPORT_SYMBOL(gf_media_map_esd) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_map_item_esd) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_get_file_hash) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_reduce_aspect_ratio) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_get_reduced_frame_rate) )


#pragma comment (linker, EXPORT_SYMBOL(gf_isom_av1_config_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_av1_config_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_avs3v_config_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_avs3v_config_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_box_equal) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_box_write_header) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_close_fragments) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_get_bitrate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_hevc_set_tile_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_mvc_config_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_mvc_config_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_high_dynamic_range_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_clean_aperture) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_image_sequence_alpha) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_set_image_sequence_coding_constraints) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_svc_config_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_vp_config_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_vp_config_new) )

#endif /*GPAC_DISABLE_ISOM*/


/*service.h exports*/
#ifndef GPAC_DISABLE_COMPOSITOR

/*mediaobject.h exports*/
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_register) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_unregister) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_play) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_stop) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_restart) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_pause) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_resume) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_set_speed) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_get_speed) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_get_loop) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_get_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_should_deactivate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_url_changed) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_fetch_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_release_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_get_object_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_is_muted) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_is_done) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_adjust_clock) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_get_visual_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_get_audio_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_get_current_speed) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_has_audio) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_set_flag) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_get_min_frame_dur) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_event_target_add_node) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_get_nb_views) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_is_started) )

#ifndef GPAC_DISABLE_SVG
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_load_xlink_resource) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_unload_xlink_resource) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_get_scenegraph) )
#endif

#endif

/*ietf.h exports*/
#ifndef GPAC_DISABLE_STREAMING
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_nc_to_string) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_range_parse) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_range_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_range_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_transport_clone) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_transport_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_command_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_command_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_command_reset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_response_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_response_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_response_reset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_session_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_session_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_set_buffer_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_session_reset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_is_my_session) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_get_server_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_get_response) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_get_session_state) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_reset_aggregation) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_send_command) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_set_interleave_callback) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_session_read) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_register_interleave) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_unregister_interleave) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_session_new_server) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_get_command) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_generate_session_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_send_response) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_get_session_ip) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_get_remote_address) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_get_session_port) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_use_tls) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtsp_session_write_interleaved) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_setup_transport) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_set_ports) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_setup_payload) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_enable_nat_keepalive) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_initialize) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_stop) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_set_info_rtp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_get_current_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_reset_buffers) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_read_rtp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_read_rtcp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_decode_rtp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_decode_rtcp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_send_rtcp_report) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_set_loss_rate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_send_bye) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_send_packet) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_is_unicast) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_is_interleaved) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_get_clockrate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_get_low_interleave_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_get_hight_interleave_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_get_transport) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_get_loss) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_get_tcp_bytes_sent) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_get_ports) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sdp_info_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sdp_info_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sdp_info_reset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sdp_info_parse) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sdp_media_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sdp_media_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sdp_conn_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sdp_conn_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sdp_fmtp_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sdp_fmtp_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_builder_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_builder_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_builder_init) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_builder_process) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_builder_format_sdp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_builder_get_payload_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_builder_set_cryp_info) )

#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_depacketizer_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_depacketizer_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_depacketizer_reset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_depacketizer_process) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_reorderer_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_reorderer_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_reorderer_reset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_reorderer_add) )
#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_reorderer_get) )

#pragma comment (linker, EXPORT_SYMBOL(gf_rtp_reset_ssrc) )

#endif /*GPAC_DISABLE_STREAMING*/



#ifndef GPAC_DISABLE_AVILIB
/*avilib exports*/
#pragma comment (linker, EXPORT_SYMBOL(AVI_open_output_file) )
#pragma comment (linker, EXPORT_SYMBOL(AVI_close) )
#pragma comment (linker, EXPORT_SYMBOL(AVI_set_video) )
#pragma comment (linker, EXPORT_SYMBOL(AVI_write_frame) )
#pragma comment (linker, EXPORT_SYMBOL(AVI_set_audio) )
#pragma comment (linker, EXPORT_SYMBOL(AVI_write_audio) )

#endif /*GPAC_DISABLE_AVILIB*/

/*media.h exports*/
#ifndef GPAC_DISABLE_ISOM_HINTING
#pragma comment (linker, EXPORT_SYMBOL(gf_hinter_track_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hinter_track_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hinter_track_process) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hinter_track_finalize) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hinter_finalize) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hinter_track_get_bandwidth) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hinter_track_get_flags) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hinter_track_get_payload_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hinter_can_embbed_data) )
#endif

#ifndef GPAC_DISABLE_MEDIA_IMPORT
#pragma comment (linker, EXPORT_SYMBOL(gf_media_make_isma) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_make_3gpp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_make_psp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_check_qt_prores) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_import) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_import_chapters) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_import_chapters_file) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_change_pl) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_change_color) )

#pragma comment (linker, EXPORT_SYMBOL(gf_media_split_svc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_merge_svc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_split_hevc_tiles) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_split_lhvc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_filter_hevc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dolby_vision_level) )

#endif /*GPAC_DISABLE_MEDIA_IMPORT*/

#pragma comment (linker, EXPORT_SYMBOL(gf_inspect_dump_nalu) )
#pragma comment (linker, EXPORT_SYMBOL(gf_inspect_dump_obu) )
#pragma comment (linker, EXPORT_SYMBOL(gf_inspect_dump_opus) )
#pragma comment (linker, EXPORT_SYMBOL(gf_inspect_dump_prores) )
#pragma comment (linker, EXPORT_SYMBOL(gf_inspect_format_timecode) )

#ifndef GPAC_DISABLE_ISOM_WRITE
#pragma comment (linker, EXPORT_SYMBOL(gf_media_change_par) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_remove_non_rap) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_update_bitrate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_isom_apply_qt_key) )
#endif

#pragma comment (linker, EXPORT_SYMBOL(gf_media_nal_rewrite_samples) )


#ifndef GPAC_DISABLE_AV_PARSERS
#pragma comment (linker, EXPORT_SYMBOL(gf_media_nalu_next_start_code) )
#pragma comment (linker, EXPORT_SYMBOL(gf_media_nalu_remove_emulation_bytes) )

#pragma comment (linker, EXPORT_SYMBOL(gf_avc_get_sps_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_avc_get_pps_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_avc_get_profile_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_avc_hevc_get_chroma_format_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_avc_parse_nalu) )
#pragma comment (linker, EXPORT_SYMBOL(gf_avc_read_sps) )
#pragma comment (linker, EXPORT_SYMBOL(gf_avc_read_pps) )
#pragma comment (linker, EXPORT_SYMBOL(gf_avc_read_sps_bs ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_avc_read_pps_bs ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_avc_hevc_get_chroma_format_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_avcc_use_extensions))

#pragma comment (linker, EXPORT_SYMBOL(gf_hevc_read_vps) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hevc_read_vps_ex) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hevc_read_vps_bs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hevc_read_sps) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hevc_read_sps_ex) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hevc_read_sps_bs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hevc_read_pps) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hevc_read_pps_bs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hevc_get_profile_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hevc_get_sps_info_with_state) )
#pragma comment (linker, EXPORT_SYMBOL(gf_hevc_parse_nalu) )
#pragma comment (linker, EXPORT_SYMBOL(gf_vvc_get_sps_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_vvc_get_profile_name) )

#pragma comment (linker, EXPORT_SYMBOL(gf_av1_parse_obu) )
#pragma comment (linker, EXPORT_SYMBOL(gf_av1_get_obu_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_av1_reset_state) )
#pragma comment (linker, EXPORT_SYMBOL(gf_av1_init_state) )
#pragma comment (linker, EXPORT_SYMBOL(gf_av1_leb128_read) )
#pragma comment (linker, EXPORT_SYMBOL(gf_av1_parse_obu_header) )

#endif /*GPAC_DISABLE_AV_PARSERS*/

#pragma comment (linker, EXPORT_SYMBOL(gf_mpegh_get_mhas_pl) )


#ifndef GPAC_DISABLE_MEDIA_EXPORT
#pragma comment (linker, EXPORT_SYMBOL(gf_media_export) )
#endif /*GPAC_DISABLE_MEDIA_EXPORT*/

/*crypto exports*/
#ifndef GPAC_DISABLE_CRYPTO
#pragma comment (linker, EXPORT_SYMBOL(gf_crypt_open) )
#pragma comment (linker, EXPORT_SYMBOL(gf_crypt_close) )
#pragma comment (linker, EXPORT_SYMBOL(gf_crypt_init) )
#pragma comment (linker, EXPORT_SYMBOL(gf_crypt_decrypt) )
#pragma comment (linker, EXPORT_SYMBOL(gf_crypt_encrypt) )
#pragma comment (linker, EXPORT_SYMBOL(gf_crypt_set_key) )
#pragma comment (linker, EXPORT_SYMBOL(gf_crypt_set_IV) )
#pragma comment (linker, EXPORT_SYMBOL(gf_crypt_get_IV) )
#endif GPAC_DISABLE_CRYPTO

#pragma comment (linker, EXPORT_SYMBOL(gf_sha1_csum) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sha1_file) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sha256_csum) )
#pragma comment (linker, EXPORT_SYMBOL(gf_md5_csum) )

#ifndef GPAC_DISABLE_AV_PARSERS
#pragma comment (linker, EXPORT_SYMBOL(gf_m4v_parser_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m4v_parser_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m4v_parse_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m4v_parse_frame) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m4v_get_object_start) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m4v_get_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m4v_rewrite_pl) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mp3_num_channels) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mp3_sampling_rate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mp3_window_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mp3_object_type_indication) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mp3_layer) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mp3_frame_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mp3_get_next_header) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mp3_get_next_header_mem) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m4a_get_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m4a_get_channel_cfg) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m4a_write_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m4a_write_config_bs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m4a_parse_config) )


#pragma comment (linker, EXPORT_SYMBOL(gf_ac3_parser))
#pragma comment (linker, EXPORT_SYMBOL(gf_ac3_parser_bs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_eac3_parser_bs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_eac3_parser) )
#pragma comment (linker, EXPORT_SYMBOL(gf_ac3_get_total_channels) )
#pragma comment (linker, EXPORT_SYMBOL(gf_ac3_get_surround_channels) )
#pragma comment (linker, EXPORT_SYMBOL(gf_ac3_get_bitrate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_eac3_get_chan_loc_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_ac3_get_channel_layout) )

#pragma comment (linker, EXPORT_SYMBOL(gf_ac4_parser_bs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_ac4_parser) )

#ifndef GPAC_DISABLE_OGG
#pragma comment (linker, EXPORT_SYMBOL(gf_vorbis_parse_header) )
#pragma comment (linker, EXPORT_SYMBOL(gf_vorbis_check_frame) )
#endif

#endif

#pragma comment (linker, EXPORT_SYMBOL(gf_img_parse) )
#pragma comment (linker, EXPORT_SYMBOL(gf_img_jpeg_dec) )
#pragma comment (linker, EXPORT_SYMBOL(gf_img_png_dec) )
#pragma comment (linker, EXPORT_SYMBOL(gf_img_png_enc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m4v_get_profile_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mp3_version) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mp3_version_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m4a_object_type_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m4a_get_profile_name) )

#ifndef GPAC_DISABLE_AV_PARSERS
#pragma comment (linker, EXPORT_SYMBOL(gf_m4a_get_profile) )
#endif

#pragma comment (linker, EXPORT_SYMBOL(gf_mpegv12_get_config) )

#if !defined(GPAC_DISABLE_CRYPTO) && !defined(GPAC_DISABLE_ISOM_WRITE)
/*crypt_tools.h exports*/
#pragma comment (linker, EXPORT_SYMBOL(gf_crypt_file) )
#pragma comment (linker, EXPORT_SYMBOL(gf_crypt_fragment) )
#pragma comment (linker, EXPORT_SYMBOL(gf_decrypt_file) )
#pragma comment (linker, EXPORT_SYMBOL(gf_decrypt_fragment) )
#pragma comment (linker, EXPORT_SYMBOL(gf_crypt_info_load) )
#pragma comment (linker, EXPORT_SYMBOL(gf_crypt_info_del) )

#endif

/*scene_manager.h exports*/

#ifndef GPAC_DISABLE_SCENE_STATS
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_stats_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_stats_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_stats_reset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_stats_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_stats_for_graph) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_stats_for_scene) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_stats_for_command) )
#endif

#ifndef GPAC_DISABLE_SMGR
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_stream_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_stream_au_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_aggregate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_load_init) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_load_done) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_load_string) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_load_run) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_import_bifs_subtitle) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_get_mux_info) )
#endif

#ifndef GPAC_DISABLE_LOADER_BT
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_load_bt_from_string) )
#endif

#if !defined(GPAC_DISABLE_SCENE_ENCODER) && !defined(GPAC_DISABLE_ISOM_WRITE)
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_encode_to_file) )
#endif

#ifndef GPAC_DISABLE_SCENE_DUMP
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_dumper_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_dumper_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_dump) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_dump_command_list) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_dump_graph) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sm_dumper_set_extra_graph) )
#ifndef GPAC_DISABLE_OD_DUMP
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_dump_com) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_dump_desc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odf_dump_com_list) )
#ifndef GPAC_MINIMAL_ODF
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_dump_event) )
#pragma comment (linker, EXPORT_SYMBOL(gf_oci_dump_au) )
#endif
#endif
#endif

#ifndef GPAC_DISABLE_SENG
/*bifsengine exports*/
#pragma comment (linker, EXPORT_SYMBOL(gf_seng_init) )
#pragma comment (linker, EXPORT_SYMBOL(gf_seng_get_stream_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_seng_get_stream_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_seng_encode_context) )
#pragma comment (linker, EXPORT_SYMBOL(gf_seng_encode_from_file) )
#pragma comment (linker, EXPORT_SYMBOL(gf_seng_encode_from_string) )
#pragma comment (linker, EXPORT_SYMBOL(gf_seng_save_context) )
#pragma comment (linker, EXPORT_SYMBOL(gf_seng_enable_aggregation) )
#pragma comment (linker, EXPORT_SYMBOL(gf_seng_aggregate_context) )
#pragma comment (linker, EXPORT_SYMBOL(gf_seng_get_base64_iod) )
#pragma comment (linker, EXPORT_SYMBOL(gf_seng_get_iod) )
#pragma comment (linker, EXPORT_SYMBOL(gf_seng_terminate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_seng_get_stream_carousel_info) )
#endif

/*bifs.h exports*/
#ifndef GPAC_DISABLE_BIFS
#pragma comment (linker, EXPORT_SYMBOL(gf_bifs_decoder_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bifs_decoder_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bifs_decoder_configure_stream) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bifs_decode_au) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bifs_decode_command_list) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bifs_get_aq_info) )
#ifndef GPAC_DISABLE_BIFS_ENC
#pragma comment (linker, EXPORT_SYMBOL(gf_bifs_encoder_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bifs_encoder_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bifs_encoder_new_stream) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bifs_encode_au) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bifs_encoder_get_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bifs_encoder_get_version) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bifs_encoder_get_rap) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bifs_encoder_set_source_url) )
#pragma comment (linker, EXPORT_SYMBOL(gf_bifs_get_child_table) )


#endif
#endif /*GPAC_DISABLE_BIFS*/

#if !defined(GPAC_DISABLE_VRML) || !defined(GPAC_DISABLE_X3D) || !defined(GPAC_DISABLE_SVG)

/*scenegraph.h exports*/
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_tag) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_set_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_name_and_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_private) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_set_private) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_set_callback_function) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_register) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_unregister) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_replace) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_unregister_children) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_allow_cyclic_traverse) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_traverse) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_traverse_children) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_parent_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_parent) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_parent_of) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_class_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_dirty_set) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_dirty_clear) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_dirty_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_dirty_reset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_field) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_field_by_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_graph) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_init) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_scene_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_new_subscene) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_set_scene_time_callback) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_set_node_callback) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_set_private) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_get_private) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_set_scene_size_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_use_pixel_metrics) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_get_scene_size_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_reset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_get_root_node) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_set_root_node) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_find_node) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_find_node_by_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_add_namespace) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_changed) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_clone) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_has_scripting) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_command_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_command_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_command_apply) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_command_apply_list) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_command_field_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_get_next_available_node_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_get_max_node_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_field_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_list_add_child) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_list_add_child_last) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_list_insert_child) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_list_del_child) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_list_find_child) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_list_get_child) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_list_get_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_list_del_child_idx) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_script_get_field_index) )


#pragma comment (linker, EXPORT_SYMBOL(gf_node_dirty_parent_graph) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_dirty_parents) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_proto_root) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_proto_is_grouping) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_proto_set_grouping) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_remove_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_set_cyclic_traverse_flag) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_store_embedded_data) )


#ifndef GPAC_DISABLE_SVG
#pragma comment (linker, EXPORT_SYMBOL(gf_node_dom_listener_add) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dom_event_type_by_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dom_event_fire) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dom_add_text_node) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dom_set_textContent) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dom_flatten_textContent) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_attribute_by_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dom_listener_build) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dom_listener_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_handle_dom_event) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_fire_dom_event) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_event_target_get) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_event_target_remove_by_node) )
#pragma comment (linker, EXPORT_SYMBOL(gf_event_target_get_node) )

#pragma comment (linker, EXPORT_SYMBOL(gf_svg_parse_attribute) )
#pragma comment (linker, EXPORT_SYMBOL(gf_svg_parse_style) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_attribute_by_tag) )
#pragma comment (linker, EXPORT_SYMBOL(gf_svg_create_attribute_value) )
#pragma comment (linker, EXPORT_SYMBOL(gf_svg_flatten_attributes) )
#pragma comment (linker, EXPORT_SYMBOL(gf_svg_apply_inheritance) )
#pragma comment (linker, EXPORT_SYMBOL(gf_svg_properties_init_pointers) )
#pragma comment (linker, EXPORT_SYMBOL(gf_svg_properties_reset_pointers) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_register_iri) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_unregister_iri) )
#pragma comment (linker, EXPORT_SYMBOL(gf_svg_parse_element_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_svg_is_animation_tag) )
#pragma comment (linker, EXPORT_SYMBOL(gf_svg_apply_animations) )
#pragma comment (linker, EXPORT_SYMBOL(gf_svg_attributes_copy) )
#pragma comment (linker, EXPORT_SYMBOL(gf_xml_get_element_tag) )

#pragma comment (linker, EXPORT_SYMBOL(gf_smil_set_media_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_smil_timing_init_runtime_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_smil_timing_insert_clock) )
#pragma comment (linker, EXPORT_SYMBOL(gf_smil_timing_is_active) )

#endif


#ifdef GPAC_HAS_QJS

#ifndef GPAC_DISABLE_SVG
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_js_dom_pre_destroy) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_js_event_add_listener) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_js_event_remove_listener) )
#endif

#endif /*GPAC_HAS_QJS*/

/* scenegraph_vrml.h exports*/
#pragma comment (linker, EXPORT_SYMBOL(gf_node_replace_child) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_sfrotation_interpolate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_mfurl_del) )
#ifndef GPAC_DISABLE_VRML
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_num_fields_in_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_insert_child) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_event_out) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_event_out_str) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_vrml_get_event_type_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_vrml_field_pointer_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_vrml_field_pointer_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_vrml_is_sf_field) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_vrml_get_sf_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_vrml_mf_insert) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_vrml_mf_append) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_vrml_mf_remove) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_vrml_mf_alloc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_vrml_mf_get_item) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_vrml_mf_reset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_vrml_field_copy) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_vrml_field_equal) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_vrml_field_clone) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_route_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_route_new_to_callback) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_route_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_route_del_by_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_route_find) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_route_find_by_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_route_set_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_route_set_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_route_get_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_activate_routes) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_proto_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_proto_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_proto_get_graph) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_proto_get_extern_url) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_proto_add_node_code) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_proto_get_field_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_proto_field_find_by_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_proto_field_find) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_proto_field_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_proto_field_set_ised) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_proto_field_get_field) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_proto_create_instance) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_proto_load_code) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_find_proto) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_delete_all_protos) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_get_proto) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_proto_get_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_proto_get_class_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_proto_field_is_sftime_offset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_proto_instance_set_ised) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_set_proto_eventin_handler) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_script_field_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_script_field_get_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_script_load) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_script_event_in) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_mpeg4_type_by_class_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_get_next_available_route_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_set_max_defined_route_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_get_next_available_proto_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_set_proto_loader) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_sfcolor_to_rgba) )
#pragma comment (linker, EXPORT_SYMBOL(gf_node_in_table_by_tag) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_vrml_get_field_type_name) )

#ifdef GPAC_HAS_QJS
#pragma comment (linker, EXPORT_SYMBOL(gf_js_vrml_flush_event_out) )
#endif


#ifndef GPAC_DISABLE_X3D
#pragma comment (linker, EXPORT_SYMBOL(gf_node_x3d_type_by_class_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_x3d_get_node_type) )
#endif

#ifdef GPAC_HAS_QJS
#ifndef GPAC_DISABLE_SVG
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_handle_dom_event_for_vrml) )
#endif
#endif

#endif /*GPAC_DISABLE_VRML*/

#endif //!defined(GPAC_DISABLE_VRML) && !defined(GPAC_DISABLE_X3D) && !defined(GPAC_DISABLE_SVG)

#ifdef GPAC_HAS_QJS
#pragma comment (linker, EXPORT_SYMBOL(gf_sg_js_get_node) )
#endif


#ifndef GPAC_DISABLE_COMPOSITOR
//compositor exports
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_disconnect) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_navigate_to) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_play_from_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_get_time_in_ms) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_select_service) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_toggle_addons) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_get_url) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_get_main_pid) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_get_world_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_get_current_service_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_dump_scene) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_get_simulation_frame_rate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_connect_from_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_is_supported_url) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_register) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_unregister) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mo_get_scenegraph) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_switch_quality) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_scene_update) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_set_speed) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_get_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_attach_to_compositor) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_find_odm) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_set_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_setup_object) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_register_extra_graph) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_force_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_process_anchor) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_disconnect) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_set_addon_layout_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_select_object) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odm_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odm_setup_object) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odm_disconnect) )
#pragma comment (linker, EXPORT_SYMBOL(gf_clock_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_get_media_object_ex) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_resume_live) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_set_timeshift_depth) )

#pragma comment (linker, EXPORT_SYMBOL(gf_sc_load) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_unload) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_set_fps) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_set_scene) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_draw_frame) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_invalidate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_get_clock) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_lock) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_user_event) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_map_point) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_set_option) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_get_option) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_get_fps) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_get_screen_buffer) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_release_screen_buffer) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_reset_graphics) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_get_viewpoint) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_set_viewpoint) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_set_size) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_register_extra_graph) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_get_compositor) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_focus_switch_ring) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_is_over) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_navigation_supported) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_on_event) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_has_text_selection) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_get_selected_text) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_paste_text) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_add_object) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_get_offscreen_buffer) )


#ifndef GPAC_DISABLE_SVG
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_svg_convert_length_to_display) )
#endif

/*compositor_dev.h exports*/
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_register_time_node) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_unregister_time_node) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_texture_setup) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_texture_destroy) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_texture_get_handler) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_texture_check_url_change) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_texture_play) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_texture_play_from_to) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_texture_stop) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_texture_restart) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_texture_update_frame) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_texture_release_stream) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_audio_register) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_audio_unregister) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_audio_setup) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_audio_open) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_audio_stop) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_audio_restart) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_reload_config) )

#pragma comment (linker, EXPORT_SYMBOL(gf_sc_audio_check_url) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_texture_open) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_texture_stop_no_unregister) )

#pragma comment (linker, EXPORT_SYMBOL(gf_font_manager_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_font_manager_set_font) )
#pragma comment (linker, EXPORT_SYMBOL(gf_font_manager_create_span) )
#pragma comment (linker, EXPORT_SYMBOL(gf_font_manager_refresh_span_bounds) )

#pragma comment (linker, EXPORT_SYMBOL(gf_sc_connect_from_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_disconnect) )
#pragma comment (linker, EXPORT_SYMBOL(gf_sc_send_event) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_switch_quality) )
#pragma comment (linker, EXPORT_SYMBOL(gf_scene_set_service_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_odm_get_object_info) )

#endif

/*mpegts.h exports*/
#ifndef GPAC_DISABLE_MPEG2TS
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_demux_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_demux_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_process_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_reset_parsers) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_reset_parsers_for_program) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_set_pes_framing) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_get_stream_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_restamp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_get_sdt_info) )


/* carousel.h */
#ifdef GPAC_ENABLE_DSMCC
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_get_channel_application_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_process_dsmcc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_init_dsmcc_overlord) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_get_dmscc_overlord) )
#endif
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_demux_dmscc_init) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_probe_file) )



#ifndef GPAC_DISABLE_MPEG2TS_MUX
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_mux_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_mux_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_mux_set_pcr_max_interval) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_mux_program_add) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_program_stream_add) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_mux_update_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_mux_process) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_get_sys_clock) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_get_ts_clock) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_mux_use_single_au_pes_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_mux_set_initial_pcr) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_mux_program_set_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_mux_enable_sdt) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_mux_program_find) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m2ts_mux_enable_pcr_only_packets) )

#endif /*GPAC_DISABLE_MPEG2TS_MUX*/
/* M3U8 & MPD related functions */
#pragma comment (linker, EXPORT_SYMBOL(gf_mpd_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mpd_init_from_dom) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mpd_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m3u8_to_mpd) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mpd_smooth_to_mpd) )

#pragma comment (linker, EXPORT_SYMBOL(gf_m3u8_solve_representation_xlink) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mpd_solve_segment_list_xlink) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mpd_delete_segment_list) )
#pragma comment (linker, EXPORT_SYMBOL(gf_m3u8_parse_master_playlist) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mpd_write) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mpd_write_file) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mpd_get_base_url_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mpd_resolve_url) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mpd_get_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mpd_resolve_segment_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mpd_init_smooth_from_dom) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mpd_complete_from_dom) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mpd_get_segment_start_time_with_timescale) )
#pragma comment (linker, EXPORT_SYMBOL(gf_mpd_resolve_subnumber) )


#endif /*GPAC_DISABLE_MPEG2TS*/

/*laser.h exports*/
#ifndef GPAC_DISABLE_LASER
#pragma comment (linker, EXPORT_SYMBOL(gf_laser_decoder_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_laser_decoder_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_laser_decoder_set_clock) )
#pragma comment (linker, EXPORT_SYMBOL(gf_laser_decoder_configure_stream) )
#pragma comment (linker, EXPORT_SYMBOL(gf_laser_decoder_remove_stream) )
#pragma comment (linker, EXPORT_SYMBOL(gf_laser_decode_au) )
#pragma comment (linker, EXPORT_SYMBOL(gf_laser_decode_command_list) )
#pragma comment (linker, EXPORT_SYMBOL(gf_laser_encoder_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_laser_encoder_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_laser_encoder_new_stream) )
#pragma comment (linker, EXPORT_SYMBOL(gf_laser_encode_au) )
#pragma comment (linker, EXPORT_SYMBOL(gf_laser_encoder_get_config) )
#pragma comment (linker, EXPORT_SYMBOL(gf_laser_encoder_get_rap) )
#endif /*GPAC_DISABLE_LASER*/

/*download.h exports*/
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_wget) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_wget_with_cache) )

#ifndef GPAC_DISABLE_ISOM_WRITE
/*to be removed once TS fragmenter is moved to libgpac */
#pragma comment (linker, EXPORT_SYMBOL(gf_media_mpd_format_segment_name) )

#pragma comment (linker, EXPORT_SYMBOL(gf_media_get_rfc_6381_codec_name) )
#ifndef GPAC_DISABLE_ISOM_FRAGMENTS
#pragma comment (linker, EXPORT_SYMBOL(gf_media_fragment_file) )
#endif
#endif

#ifndef GPAC_DISABLE_ISOM_WRITE

#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_clean_inputs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_set_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_set_location) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_add_base_url) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_enable_url_template) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_enable_segment_timeline) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_enable_single_segment) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_enable_single_file) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_set_switch_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_set_durations) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_enable_rap_splitting) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_set_segment_marker) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_enable_sidx) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_set_dynamic_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_set_min_buffer) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_set_ast_offset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_enable_memory_fragmenting) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_set_initial_isobmf) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_enable_memory_fragmenting) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_configure_isobmf_default) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_enable_utc_ref) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_enable_real_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_set_content_protection_location_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_set_profile_extension) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_add_input) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_process) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_set_start_date) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_enable_cached_inputs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_enable_loop_inputs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_set_split_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_set_cues) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_print_session_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_keep_source_utc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_set_last_segment_merge) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_next_update_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dasher_set_hls_clock ) )

#endif

/* dvb_mpe.h */
#ifdef GPAC_ENABLE_MPE
#pragma comment (linker, EXPORT_SYMBOL(gf_dvb_mpe_section_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dvb_mpe_init) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dvb_mpe_section_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dvb_mpe_shutdown) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dvb_mpe_print_info) )
#endif

#ifndef GPAC_DISABLE_DASHIN
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_open) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_close) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_get_url) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_is_m3u8) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_get_group_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_get_group_udta) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_set_group_udta) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_is_group_selected) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_is_group_selectable) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_debug_groups) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_get_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_switch_quality) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_get_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_get_time_shift_buffer_depth) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_get_segment_init_url) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_get_segment_init_keys) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_select) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_seek) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_groups_set_language) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_in_last_period) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_get_period_switch_status) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_request_period_switch) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_is_running) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_is_in_setup) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_discard_segment) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_get_next_segment_location) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_set_group_done) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_in_period_setup) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_seek) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_get_start_range) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_segment_switch_forced) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_get_presentation_time_offset) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_get_video_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_check_bandwidth) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_loop_detected) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_is_dynamic_mpd) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_get_min_buffer_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_set_utc_shift) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_enable_utc_drift_compensation) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_set_max_resolution) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_set_min_timeout_between_404) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_set_segment_expiration_threshold) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_set_user_buffer) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_set_speed) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_set_switching_probe_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_set_agressive_adaptation) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_enable_single_range_llhls) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_get_period_start) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_get_period_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_get_language) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_get_audio_channels) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_enum_descriptor) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_get_num_qualities) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_get_quality_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_get_automatic_switching) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_set_automatic_switching) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_select_quality) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_set_timeshift) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_get_timeshift_buffer_pos) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_set_codec_stat) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_set_buffer_levels) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_set_max_buffer_playout) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_disable_speed_adaptation) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_override_ntp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_has_dependent_group) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_get_num_groups_depending_on) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_get_dependent_group_index) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_set_tile_adaptation_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_get_tile_adaptation_mode) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_disable_low_quality_tiles) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_get_srd_max_size_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_get_srd_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_set_quality_degradation_hint) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_set_visible_rect) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_get_utc_drift_estimate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_set_algo) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_set_mcast_ast_shift) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_set_suggested_presentation_delay) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_ignore_xlink) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_group_get_num_components) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_all_groups_done) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dash_set_period_xlink_query_string) )

#endif

#if !defined(GPAC_DISABLE_ISOM_WRITE) && !defined(GPAC_DISABLE_VTT)
#pragma comment (linker, EXPORT_SYMBOL(gf_webvtt_parse_cues_from_data) )
#pragma comment (linker, EXPORT_SYMBOL(gf_webvtt_parse_iso_cues) )
#pragma comment (linker, EXPORT_SYMBOL(gf_webvtt_cue_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_webvtt_dump_iso_track) )
#endif

#pragma comment (linker, EXPORT_SYMBOL(utf8_to_ucs4) )


#pragma comment (linker, EXPORT_SYMBOL(gf_route_atsc_dmx_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_atsc_dmx_new_ex) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_dmx_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_dmx_new_ex) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_dmx_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_atsc3_tune_in) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_dmx_process) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_dmx_get_object_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_dmx_remove_object_by_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_dmx_remove_first_object) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_dmx_find_atsc3_service) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_dmx_purge_objects) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_dmx_get_first_packet_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_dmx_get_last_packet_time) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_dmx_get_nb_packets) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_dmx_get_recv_bytes) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_dmx_reset_stats) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_dmx_set_service_udta) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_dmx_get_service_udta) )
#pragma comment (linker, EXPORT_SYMBOL(gf_route_dmx_debug_tsi) )

#pragma comment (linker, EXPORT_SYMBOL(gf_dm_add_cache_entry) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_force_headers) )
#pragma comment (linker, EXPORT_SYMBOL(gf_dm_set_localcache_provider) )

/*filter session exports*/
#pragma comment (linker, EXPORT_SYMBOL(gf_itags_find_by_id3tag) )
#pragma comment (linker, EXPORT_SYMBOL(gf_itags_find_by_itag) )
#pragma comment (linker, EXPORT_SYMBOL(gf_itags_find_by_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_itags_get_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_itags_get_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_itags_get_alt_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_itags_get_itag) )
#pragma comment (linker, EXPORT_SYMBOL(gf_itags_get_id3tag) )
#pragma comment (linker, EXPORT_SYMBOL(gf_itags_enum_tags) )
#pragma comment (linker, EXPORT_SYMBOL(gf_id3_get_genre) )
#pragma comment (linker, EXPORT_SYMBOL(gf_id3_get_genre_tag) )
#pragma comment (linker, EXPORT_SYMBOL(gf_id3_tag_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_id3_tag_free) )
#pragma comment (linker, EXPORT_SYMBOL(gf_id3_to_bitstream) )
#pragma comment (linker, EXPORT_SYMBOL(gf_id3_list_to_bitstream) )
#pragma comment (linker, EXPORT_SYMBOL(gf_id3_from_bitstream) )

#pragma comment (linker, EXPORT_SYMBOL(gf_audio_fmt_bit_depth) )
#pragma comment (linker, EXPORT_SYMBOL(gf_audio_fmt_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_audio_fmt_get_cicp_layout) )
#pragma comment (linker, EXPORT_SYMBOL(gf_audio_fmt_get_layout_from_cicp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_audio_fmt_get_layout_name_from_cicp) )
#pragma comment (linker, EXPORT_SYMBOL(gf_audio_fmt_get_layout_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_audio_fmt_get_layout_from_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_audio_fmt_get_cicp_from_layout) )
#pragma comment (linker, EXPORT_SYMBOL(gf_audio_fmt_all_names) )
#pragma comment (linker, EXPORT_SYMBOL(gf_audio_fmt_all_shortnames) )
#pragma comment (linker, EXPORT_SYMBOL(gf_audio_fmt_enum) )
#pragma comment (linker, EXPORT_SYMBOL(gf_audio_fmt_parse) )
#pragma comment (linker, EXPORT_SYMBOL(gf_audio_fmt_get_dolby_chanmap) )
#pragma comment (linker, EXPORT_SYMBOL(gf_audio_fmt_get_dolby_chanmap_from_layout) )
#pragma comment (linker, EXPORT_SYMBOL(gf_audio_fmt_to_isobmf) )
#pragma comment (linker, EXPORT_SYMBOL(gf_audio_fmt_sname) )


#pragma comment (linker, EXPORT_SYMBOL(gf_stream_type_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_stream_type_short_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_stream_types_enum) )
#pragma comment (linker, EXPORT_SYMBOL(gf_stream_type_by_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_stream_type_afx_name) )

#pragma comment (linker, EXPORT_SYMBOL(gf_pixel_fmt_all_names) )
#pragma comment (linker, EXPORT_SYMBOL(gf_pixel_fmt_all_shortnames) )
#pragma comment (linker, EXPORT_SYMBOL(gf_pixel_get_size_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_pixel_fmt_enum) )
#pragma comment (linker, EXPORT_SYMBOL(gf_pixel_get_bytes_per_pixel) )
#pragma comment (linker, EXPORT_SYMBOL(gf_pixel_fmt_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_pixel_fmt_sname) )
#pragma comment (linker, EXPORT_SYMBOL(gf_pixel_fmt_parse) )
#pragma comment (linker, EXPORT_SYMBOL(gf_pixel_fmt_from_qt_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_pixel_fmt_to_qt_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_pixel_is_wide_depth) )
#pragma comment (linker, EXPORT_SYMBOL(gf_pixel_fmt_probe) )
#pragma comment (linker, EXPORT_SYMBOL(gf_pixel_get_downsampling) )

#pragma comment (linker, EXPORT_SYMBOL(gf_codecid_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_codecid_enum) )
#pragma comment (linker, EXPORT_SYMBOL(gf_codecid_mime) )
#pragma comment (linker, EXPORT_SYMBOL(gf_codecid_alt) )
#pragma comment (linker, EXPORT_SYMBOL(gf_codecid_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_codecid_4cc_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_codecid_file_ext) )
#pragma comment (linker, EXPORT_SYMBOL(gf_codecid_parse) )
#pragma comment (linker, EXPORT_SYMBOL(gf_codec_id_from_isobmf) )
#pragma comment (linker, EXPORT_SYMBOL(gf_codecid_from_oti) )
#pragma comment (linker, EXPORT_SYMBOL(gf_audio_fmt_cicp_enum) )

#pragma comment (linker, EXPORT_SYMBOL(gf_props_get_type_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_props_get_type_desc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_props_parse_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_props_dump) )
#pragma comment (linker, EXPORT_SYMBOL(gf_props_dump_val) )
#pragma comment (linker, EXPORT_SYMBOL(gf_props_dump_alloc) )
#pragma comment (linker, EXPORT_SYMBOL(gf_props_get_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_props_get_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_props_4cc_get_type) )
#pragma comment (linker, EXPORT_SYMBOL(gf_props_4cc_get_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_props_sanity_check) )

#pragma comment (linker, EXPORT_SYMBOL(gf_props_type_is_enum) )
#pragma comment (linker, EXPORT_SYMBOL(gf_props_parse_enum) )
#pragma comment (linker, EXPORT_SYMBOL(gf_props_parse_value) )
#pragma comment (linker, EXPORT_SYMBOL(gf_props_enum_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_props_enum_all_names) )
#pragma comment (linker, EXPORT_SYMBOL(gf_props_reset_single) )
#pragma comment (linker, EXPORT_SYMBOL(gf_props_equal) )
#pragma comment (linker, EXPORT_SYMBOL(gf_props_equal_strict) )

#pragma comment (linker, EXPORT_SYMBOL(gf_fs_new) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_new_defaults) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_del) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_load_filter) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_process_link_directive) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_parse_filter_graph) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_parse_filter_graph_str) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_run) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_stop) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_print_stats) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_print_connections) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_print_non_connected) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_print_non_connected_ex) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_print_unused_args) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_set_separators) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_filters_registers_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_get_filter_register) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_send_deferred_play) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_lock_filters) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_get_filters_count) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_get_filter) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_get_filter_stats) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_register_test_filters) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_load_source) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_load_destination) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_post_user_task ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_post_user_task_main ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_post_user_task_delay ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_abort ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_is_last_task ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_in_final_flush) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_set_source ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_set_source_restricted ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_abort ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_lock ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_lock_all) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_log_tag) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_print_all_connections ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_check_filter_register_cap ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_set_max_resolution_chain_length ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_get_max_resolution_chain_length ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_add_filter_register ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_remove_filter_register ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_get_last_connect_error ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_get_last_process_error ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_filter_exists ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_enable_reporting) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_get_defined_metrics) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_set_ui_callback) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_enum_unmapped_options) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_send_update) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_load_script) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_new_filter) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_get_http_rate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_get_http_max_rate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_set_http_max_rate) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_fire_event) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_is_supported_mime) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_is_supported_source) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_set_filter_creation_callback) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_get_rt_udta) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_check_filter) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_set_external_gl_provider) )
#pragma comment (linker, EXPORT_SYMBOL(gf_fs_print_debug_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_send_update ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_arg ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_arg_str ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_ui_event ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_is_alias ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_stats ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_in_parent_chain ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_push_caps) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_set_process_ckb) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_set_configure_ckb) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_set_process_event_ckb) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_set_reconfigure_output_ckb) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_set_probe_data_cbk) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_set_rt_udta) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_rt_udta) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_update_status) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_prevent_blocking) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_block_eos) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_set_max_extra_input_pids) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_block_enabled) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_connections_pending) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_reconnect_output) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_add_event_listener ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_remove_event_listener ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_description) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_version) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_author) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_help) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_args) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_caps) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_release_property) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_udta ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_max_extra_input_pids ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_id ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_enumerate_args) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_info_str) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_ipid_count ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_ipid ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_opid_count ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_opid ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_ask_rt_reschedule ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_set_setup_failure_callback ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_notification_failure ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_setup_failure ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_post_task ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_remove_src ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_remove ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_connect_source ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_connect_destination ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_load_filter ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_is_supported_source ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_url_is_filter) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_output_buffer_max ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_make_sticky ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_hint_single_clock ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_clock_hint ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_override_caps ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_netcap_id ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_name ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_set_name ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_status ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_bytes_done ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_reset_source ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_register_opengl_provider) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_request_opengl) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_count_source_by_protocol) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_disable_probe) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_disable_inputs) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_num_events_queued) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_all_sinks_done) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_has_pid_connection_pending) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_reporting_enabled) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_event_name ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_send_event ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_post_process_task ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_require_source_id ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_register ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_print_all_connections ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_force_main_thread ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_is_sink ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_is_source ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_tag_subsession ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_has_connect_errors ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_is_temporary ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_meta_set_instances ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_meta_get_instances ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_probe_link ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_probe_links ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_possible_destinations ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_get_class_hint ) )

#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_discard ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_ref ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_ref_props ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_unref ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_data ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_property ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_property_str ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_property_dyn ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_has_properties ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_property ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_property_str ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_enum_properties ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_framing ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_framing ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_dts ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_dts ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_cts ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_cts ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_timescale ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_sap ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_sap ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_switch_frame ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_switch_frame ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_roll_info ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_roll_info ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_interlaced ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_interlaced ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_corrupted ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_corrupted ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_duration ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_duration ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_seek_flag ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_seek_flag ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_dependency_flags ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_dependency_flags ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_carousel_version ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_carousel_version ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_byte_offset ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_byte_offset ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_crypt_flags ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_crypt_flags ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_seq_num ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_seq_num ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_clock_type ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_clock_type ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_mark ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_mark ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_get_frame_interface ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_expand ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_truncate ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_merge_properties_filter ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_merge_properties ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_new_alloc ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_new_alloc_destructor ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_new_shared_internal ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_new_shared ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_new_ref ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_new_ref_destructor ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_new_frame_interface) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_forward ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_send ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_new_clone ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_new_copy ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_is_blocking_ref) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_ref_ex) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_set_readonly) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_dangling_copy) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pck_check_realloc) )

#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_check_caps ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_copy_properties ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_copy_properties_from_packet ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_merge_properties_from_packet ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_drop_packet ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_name ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_name ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_filter_name ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_orig_src_args ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_buffer_occupancy ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_udta ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_udta ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_udta_flags ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_udta_flags ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_packet_count ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_packet ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_first_packet_cts ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_first_packet_is_empty ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_is_eos ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_eos ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_enum_properties ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_enum_info ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_would_block ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_is_sparse ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_query_buffer_duration ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_query_buffer_duration_and_max ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_has_seen_eos ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_eos_received ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_send_event ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_exec_event ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_is_filter_in_parents ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_statistics ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_remove ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_try_pull ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_clock_info ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_timescale ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_clear_eos ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_clock_mode ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_args ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_max_buffer ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_copy_buffer_req ) )

#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_max_buffer ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_loose_connect ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_caps_query ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_caps_query_str ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_resolve_file_template ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_discard ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_destination ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_source ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_property ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_property_str ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_info_str) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_property ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_property_str ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_property_dyn ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_info_str) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_info_dyn) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_framing_mode ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_new ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_allow_direct_dispatch ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_alias_udta ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_init_play_event ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_negotiate_property ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_negotiate_property_str) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_negotiate_property_dyn) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_owner) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_source_filter) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_enum_destinations) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_discard_block) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_reset_properties) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_require_source_id) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_recompute_dts) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_min_pck_duration) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_is_playing) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_ignore_blocking) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_next_ts) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_has_decoder) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_rt_stats) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_rfc_6381_codec_string) )

#pragma comment (linker, EXPORT_SYMBOL(gf_filter_bind_dash_algo_callbacks) )

#pragma comment (linker, EXPORT_SYMBOL(gf_filter_bind_ffdmx_callbacks) )

#pragma comment (linker, EXPORT_SYMBOL(gf_filter_bind_httpout_callbacks) )
#pragma comment (linker, EXPORT_SYMBOL(gf_httpout_send_request) )


#pragma comment (linker, EXPORT_SYMBOL(gf_cicp_parse_color_primaries) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cicp_parse_color_transfer) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cicp_parse_color_matrix) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cicp_color_primaries_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cicp_color_transfer_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cicp_color_matrix_name) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cicp_color_primaries_all_names) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cicp_color_transfer_all_names) )
#pragma comment (linker, EXPORT_SYMBOL(gf_cicp_color_matrix_all_names) )


#pragma comment (linker, EXPORT_SYMBOL(gf_cenc_key_info_get_iv_size))
#pragma comment (linker, EXPORT_SYMBOL(gf_cenc_validate_key_info))

/***
	Exported symbols from gpac/internal

There is no gaurantee that these symbols won't be dropped in the future

*/
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_box_parse_ex))
#pragma comment (linker, EXPORT_SYMBOL(gf_isom_parse_root_box))
