player: GST_EXPORT -> GST_PLAYER_API
We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
diff --git a/gst-libs/gst/player/Makefile.am b/gst-libs/gst/player/Makefile.am
index f893375..2f3a59a 100644
--- a/gst-libs/gst/player/Makefile.am
+++ b/gst-libs/gst/player/Makefile.am
@@ -39,6 +39,7 @@
libgstplayer_HEADERS = \
player.h \
+ player-prelude.h \
gstplayer.h \
gstplayer-types.h \
gstplayer-signal-dispatcher.h \
diff --git a/gst-libs/gst/player/gstplayer-g-main-context-signal-dispatcher.h b/gst-libs/gst/player/gstplayer-g-main-context-signal-dispatcher.h
index a2a057d..d27d697 100644
--- a/gst-libs/gst/player/gstplayer-g-main-context-signal-dispatcher.h
+++ b/gst-libs/gst/player/gstplayer-g-main-context-signal-dispatcher.h
@@ -39,10 +39,10 @@
#define GST_PLAYER_G_MAIN_CONTEXT_SIGNAL_DISPATCHER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_PLAYER_G_MAIN_CONTEXT_SIGNAL_DISPATCHER, GstPlayerGMainContextSignalDispatcherClass))
#define GST_PLAYER_G_MAIN_CONTEXT_SIGNAL_DISPATCHER_CAST(obj) ((GstPlayerGMainContextSignalDispatcher*)(obj))
-GST_EXPORT
+GST_PLAYER_API
GType gst_player_g_main_context_signal_dispatcher_get_type (void);
-GST_EXPORT
+GST_PLAYER_API
GstPlayerSignalDispatcher * gst_player_g_main_context_signal_dispatcher_new (GMainContext * application_context);
G_END_DECLS
diff --git a/gst-libs/gst/player/gstplayer-media-info.h b/gst-libs/gst/player/gstplayer-media-info.h
index 5c65f27..8d2eb4f 100644
--- a/gst-libs/gst/player/gstplayer-media-info.h
+++ b/gst-libs/gst/player/gstplayer-media-info.h
@@ -22,6 +22,7 @@
#define __GST_PLAYER_MEDIA_INFO_H__
#include <gst/gst.h>
+#include <gst/player/player-prelude.h>
G_BEGIN_DECLS
@@ -46,22 +47,22 @@
typedef struct _GstPlayerStreamInfo GstPlayerStreamInfo;
typedef struct _GstPlayerStreamInfoClass GstPlayerStreamInfoClass;
-GST_EXPORT
+GST_PLAYER_API
GType gst_player_stream_info_get_type (void);
-GST_EXPORT
+GST_PLAYER_API
gint gst_player_stream_info_get_index (const GstPlayerStreamInfo *info);
-GST_EXPORT
+GST_PLAYER_API
const gchar* gst_player_stream_info_get_stream_type (const GstPlayerStreamInfo *info);
-GST_EXPORT
+GST_PLAYER_API
GstTagList* gst_player_stream_info_get_tags (const GstPlayerStreamInfo *info);
-GST_EXPORT
+GST_PLAYER_API
GstCaps* gst_player_stream_info_get_caps (const GstPlayerStreamInfo *info);
-GST_EXPORT
+GST_PLAYER_API
const gchar* gst_player_stream_info_get_codec (const GstPlayerStreamInfo *info);
#define GST_TYPE_PLAYER_VIDEO_INFO \
@@ -83,27 +84,27 @@
typedef struct _GstPlayerVideoInfo GstPlayerVideoInfo;
typedef struct _GstPlayerVideoInfoClass GstPlayerVideoInfoClass;
-GST_EXPORT
+GST_PLAYER_API
GType gst_player_video_info_get_type (void);
-GST_EXPORT
+GST_PLAYER_API
gint gst_player_video_info_get_bitrate (const GstPlayerVideoInfo * info);
-GST_EXPORT
+GST_PLAYER_API
gint gst_player_video_info_get_max_bitrate (const GstPlayerVideoInfo * info);
-GST_EXPORT
+GST_PLAYER_API
gint gst_player_video_info_get_width (const GstPlayerVideoInfo * info);
-GST_EXPORT
+GST_PLAYER_API
gint gst_player_video_info_get_height (const GstPlayerVideoInfo * info);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_video_info_get_framerate (const GstPlayerVideoInfo * info,
gint * fps_n,
gint * fps_d);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_video_info_get_pixel_aspect_ratio (const GstPlayerVideoInfo * info,
guint * par_n,
guint * par_d);
@@ -127,22 +128,22 @@
typedef struct _GstPlayerAudioInfo GstPlayerAudioInfo;
typedef struct _GstPlayerAudioInfoClass GstPlayerAudioInfoClass;
-GST_EXPORT
+GST_PLAYER_API
GType gst_player_audio_info_get_type (void);
-GST_EXPORT
+GST_PLAYER_API
gint gst_player_audio_info_get_channels (const GstPlayerAudioInfo* info);
-GST_EXPORT
+GST_PLAYER_API
gint gst_player_audio_info_get_sample_rate (const GstPlayerAudioInfo* info);
-GST_EXPORT
+GST_PLAYER_API
gint gst_player_audio_info_get_bitrate (const GstPlayerAudioInfo* info);
-GST_EXPORT
+GST_PLAYER_API
gint gst_player_audio_info_get_max_bitrate (const GstPlayerAudioInfo* info);
-GST_EXPORT
+GST_PLAYER_API
const gchar* gst_player_audio_info_get_language (const GstPlayerAudioInfo* info);
#define GST_TYPE_PLAYER_SUBTITLE_INFO \
@@ -164,10 +165,10 @@
typedef struct _GstPlayerSubtitleInfo GstPlayerSubtitleInfo;
typedef struct _GstPlayerSubtitleInfoClass GstPlayerSubtitleInfoClass;
-GST_EXPORT
+GST_PLAYER_API
GType gst_player_subtitle_info_get_type (void);
-GST_EXPORT
+GST_PLAYER_API
const gchar * gst_player_subtitle_info_get_language (const GstPlayerSubtitleInfo* info);
#define GST_TYPE_PLAYER_MEDIA_INFO \
@@ -189,55 +190,55 @@
typedef struct _GstPlayerMediaInfo GstPlayerMediaInfo;
typedef struct _GstPlayerMediaInfoClass GstPlayerMediaInfoClass;
-GST_EXPORT
+GST_PLAYER_API
GType gst_player_media_info_get_type (void);
-GST_EXPORT
+GST_PLAYER_API
const gchar * gst_player_media_info_get_uri (const GstPlayerMediaInfo *info);
-GST_EXPORT
+GST_PLAYER_API
gboolean gst_player_media_info_is_seekable (const GstPlayerMediaInfo *info);
-GST_EXPORT
+GST_PLAYER_API
gboolean gst_player_media_info_is_live (const GstPlayerMediaInfo *info);
-GST_EXPORT
+GST_PLAYER_API
GstClockTime gst_player_media_info_get_duration (const GstPlayerMediaInfo *info);
-GST_EXPORT
+GST_PLAYER_API
GList* gst_player_media_info_get_stream_list (const GstPlayerMediaInfo *info);
-GST_EXPORT
+GST_PLAYER_API
guint gst_player_media_info_get_number_of_streams (const GstPlayerMediaInfo *info);
-GST_EXPORT
+GST_PLAYER_API
GList* gst_player_media_info_get_video_streams (const GstPlayerMediaInfo *info);
-GST_EXPORT
+GST_PLAYER_API
guint gst_player_media_info_get_number_of_video_streams (const GstPlayerMediaInfo *info);
-GST_EXPORT
+GST_PLAYER_API
GList* gst_player_media_info_get_audio_streams (const GstPlayerMediaInfo *info);
-GST_EXPORT
+GST_PLAYER_API
guint gst_player_media_info_get_number_of_audio_streams (const GstPlayerMediaInfo *info);
-GST_EXPORT
+GST_PLAYER_API
GList* gst_player_media_info_get_subtitle_streams (const GstPlayerMediaInfo *info);
-GST_EXPORT
+GST_PLAYER_API
guint gst_player_media_info_get_number_of_subtitle_streams (const GstPlayerMediaInfo *info);
-GST_EXPORT
+GST_PLAYER_API
GstTagList* gst_player_media_info_get_tags (const GstPlayerMediaInfo *info);
-GST_EXPORT
+GST_PLAYER_API
const gchar* gst_player_media_info_get_title (const GstPlayerMediaInfo *info);
-GST_EXPORT
+GST_PLAYER_API
const gchar* gst_player_media_info_get_container_format (const GstPlayerMediaInfo *info);
-GST_EXPORT
+GST_PLAYER_API
GstSample* gst_player_media_info_get_image_sample (const GstPlayerMediaInfo *info);
#ifndef GST_REMOVE_DEPRECATED
diff --git a/gst-libs/gst/player/gstplayer-signal-dispatcher.h b/gst-libs/gst/player/gstplayer-signal-dispatcher.h
index cf21af3..554f1e3 100644
--- a/gst-libs/gst/player/gstplayer-signal-dispatcher.h
+++ b/gst-libs/gst/player/gstplayer-signal-dispatcher.h
@@ -46,7 +46,7 @@
GDestroyNotify destroy);
};
-GST_EXPORT
+GST_PLAYER_API
GType gst_player_signal_dispatcher_get_type (void);
G_END_DECLS
diff --git a/gst-libs/gst/player/gstplayer-types.h b/gst-libs/gst/player/gstplayer-types.h
index f6627e6..bed2dc3 100644
--- a/gst-libs/gst/player/gstplayer-types.h
+++ b/gst-libs/gst/player/gstplayer-types.h
@@ -22,6 +22,7 @@
#define __GST_PLAYER_TYPES_H__
#include <gst/gst.h>
+#include <gst/player/player-prelude.h>
G_BEGIN_DECLS
diff --git a/gst-libs/gst/player/gstplayer-video-overlay-video-renderer.h b/gst-libs/gst/player/gstplayer-video-overlay-video-renderer.h
index 8af1e6a..7068705 100644
--- a/gst-libs/gst/player/gstplayer-video-overlay-video-renderer.h
+++ b/gst-libs/gst/player/gstplayer-video-overlay-video-renderer.h
@@ -39,28 +39,28 @@
#define GST_PLAYER_VIDEO_OVERLAY_VIDEO_RENDERER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_PLAYER_VIDEO_OVERLAY_VIDEO_RENDERER, GstPlayerVideoOverlayVideoRendererClass))
#define GST_PLAYER_VIDEO_OVERLAY_VIDEO_RENDERER_CAST(obj) ((GstPlayerVideoOverlayVideoRenderer*)(obj))
-GST_EXPORT
+GST_PLAYER_API
GType gst_player_video_overlay_video_renderer_get_type (void);
-GST_EXPORT
+GST_PLAYER_API
GstPlayerVideoRenderer * gst_player_video_overlay_video_renderer_new (gpointer window_handle);
-GST_EXPORT
+GST_PLAYER_API
GstPlayerVideoRenderer * gst_player_video_overlay_video_renderer_new_with_sink (gpointer window_handle, GstElement * video_sink);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_video_overlay_video_renderer_set_window_handle (GstPlayerVideoOverlayVideoRenderer * self, gpointer window_handle);
-GST_EXPORT
+GST_PLAYER_API
gpointer gst_player_video_overlay_video_renderer_get_window_handle (GstPlayerVideoOverlayVideoRenderer * self);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_video_overlay_video_renderer_expose (GstPlayerVideoOverlayVideoRenderer * self);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_video_overlay_video_renderer_set_render_rectangle (GstPlayerVideoOverlayVideoRenderer * self, gint x, gint y, gint width, gint height);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_video_overlay_video_renderer_get_render_rectangle (GstPlayerVideoOverlayVideoRenderer * self, gint *x, gint *y, gint *width, gint *height);
G_END_DECLS
diff --git a/gst-libs/gst/player/gstplayer-video-renderer.h b/gst-libs/gst/player/gstplayer-video-renderer.h
index 995ace2..611670c 100644
--- a/gst-libs/gst/player/gstplayer-video-renderer.h
+++ b/gst-libs/gst/player/gstplayer-video-renderer.h
@@ -40,7 +40,7 @@
GstElement * (*create_video_sink) (GstPlayerVideoRenderer * self, GstPlayer * player);
};
-GST_EXPORT
+GST_PLAYER_API
GType gst_player_video_renderer_get_type (void);
G_END_DECLS
diff --git a/gst-libs/gst/player/gstplayer-visualization.h b/gst-libs/gst/player/gstplayer-visualization.h
index 4adabde..c09a4f0 100644
--- a/gst-libs/gst/player/gstplayer-visualization.h
+++ b/gst-libs/gst/player/gstplayer-visualization.h
@@ -23,6 +23,7 @@
#define __GST_PLAYER_VISUALIZATION_H__
#include <gst/gst.h>
+#include <gst/player/player-prelude.h>
G_BEGIN_DECLS
@@ -39,19 +40,19 @@
gchar *description;
};
-GST_EXPORT
+GST_PLAYER_API
GType gst_player_visualization_get_type (void);
-GST_EXPORT
+GST_PLAYER_API
GstPlayerVisualization * gst_player_visualization_copy (const GstPlayerVisualization *vis);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_visualization_free (GstPlayerVisualization *vis);
-GST_EXPORT
+GST_PLAYER_API
GstPlayerVisualization ** gst_player_visualizations_get (void);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_visualizations_free (GstPlayerVisualization **viss);
G_END_DECLS
diff --git a/gst-libs/gst/player/gstplayer.h b/gst-libs/gst/player/gstplayer.h
index e13499a..bea83ea 100644
--- a/gst-libs/gst/player/gstplayer.h
+++ b/gst-libs/gst/player/gstplayer.h
@@ -23,6 +23,7 @@
#include <gst/gst.h>
#include <gst/video/video.h>
+#include <gst/player/player-prelude.h>
#include <gst/player/gstplayer-types.h>
#include <gst/player/gstplayer-signal-dispatcher.h>
#include <gst/player/gstplayer-video-renderer.h>
@@ -30,7 +31,7 @@
G_BEGIN_DECLS
-GST_EXPORT
+GST_PLAYER_API
GType gst_player_state_get_type (void);
#define GST_TYPE_PLAYER_STATE (gst_player_state_get_type ())
@@ -50,13 +51,13 @@
GST_PLAYER_STATE_PLAYING
} GstPlayerState;
-GST_EXPORT
+GST_PLAYER_API
const gchar *gst_player_state_get_name (GstPlayerState state);
-GST_EXPORT
+GST_PLAYER_API
GQuark gst_player_error_quark (void);
-GST_EXPORT
+GST_PLAYER_API
GType gst_player_error_get_type (void);
#define GST_PLAYER_ERROR (gst_player_error_quark ())
#define GST_TYPE_PLAYER_ERROR (gst_player_error_get_type ())
@@ -69,10 +70,10 @@
GST_PLAYER_ERROR_FAILED = 0
} GstPlayerError;
-GST_EXPORT
+GST_PLAYER_API
const gchar *gst_player_error_get_name (GstPlayerError error);
-GST_EXPORT
+GST_PLAYER_API
GType gst_player_color_balance_type_get_type (void);
#define GST_TYPE_PLAYER_COLOR_BALANCE_TYPE (gst_player_color_balance_type_get_type ())
@@ -92,7 +93,7 @@
GST_PLAYER_COLOR_BALANCE_HUE,
} GstPlayerColorBalanceType;
-GST_EXPORT
+GST_PLAYER_API
const gchar *gst_player_color_balance_type_get_name (GstPlayerColorBalanceType type);
#define GST_TYPE_PLAYER (gst_player_get_type ())
@@ -104,177 +105,177 @@
#define GST_PLAYER_CAST(obj) ((GstPlayer*)(obj))
-GST_EXPORT
+GST_PLAYER_API
GType gst_player_get_type (void);
-GST_EXPORT
+GST_PLAYER_API
GstPlayer * gst_player_new (GstPlayerVideoRenderer * video_renderer, GstPlayerSignalDispatcher * signal_dispatcher);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_play (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_pause (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_stop (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_seek (GstPlayer * player,
GstClockTime position);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_set_rate (GstPlayer * player,
gdouble rate);
-GST_EXPORT
+GST_PLAYER_API
gdouble gst_player_get_rate (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
gchar * gst_player_get_uri (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_set_uri (GstPlayer * player,
const gchar * uri);
-GST_EXPORT
+GST_PLAYER_API
gchar * gst_player_get_subtitle_uri (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_set_subtitle_uri (GstPlayer * player,
const gchar *uri);
-GST_EXPORT
+GST_PLAYER_API
GstClockTime gst_player_get_position (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
GstClockTime gst_player_get_duration (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
gdouble gst_player_get_volume (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_set_volume (GstPlayer * player,
gdouble val);
-GST_EXPORT
+GST_PLAYER_API
gboolean gst_player_get_mute (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_set_mute (GstPlayer * player,
gboolean val);
-GST_EXPORT
+GST_PLAYER_API
GstElement * gst_player_get_pipeline (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_set_video_track_enabled (GstPlayer * player,
gboolean enabled);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_set_audio_track_enabled (GstPlayer * player,
gboolean enabled);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_set_subtitle_track_enabled (GstPlayer * player,
gboolean enabled);
-GST_EXPORT
+GST_PLAYER_API
gboolean gst_player_set_audio_track (GstPlayer *player,
gint stream_index);
-GST_EXPORT
+GST_PLAYER_API
gboolean gst_player_set_video_track (GstPlayer *player,
gint stream_index);
-GST_EXPORT
+GST_PLAYER_API
gboolean gst_player_set_subtitle_track (GstPlayer *player,
gint stream_index);
-GST_EXPORT
+GST_PLAYER_API
GstPlayerMediaInfo * gst_player_get_media_info (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
GstPlayerAudioInfo * gst_player_get_current_audio_track (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
GstPlayerVideoInfo * gst_player_get_current_video_track (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
GstPlayerSubtitleInfo * gst_player_get_current_subtitle_track (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
gboolean gst_player_set_visualization (GstPlayer * player,
const gchar *name);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_set_visualization_enabled (GstPlayer * player,
gboolean enabled);
-GST_EXPORT
+GST_PLAYER_API
gchar * gst_player_get_current_visualization (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
gboolean gst_player_has_color_balance (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_set_color_balance (GstPlayer * player,
GstPlayerColorBalanceType type,
gdouble value);
-GST_EXPORT
+GST_PLAYER_API
gdouble gst_player_get_color_balance (GstPlayer * player,
GstPlayerColorBalanceType type);
-GST_EXPORT
+GST_PLAYER_API
GstVideoMultiviewFramePacking gst_player_get_multiview_mode (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_set_multiview_mode (GstPlayer * player,
GstVideoMultiviewFramePacking mode);
-GST_EXPORT
+GST_PLAYER_API
GstVideoMultiviewFlags gst_player_get_multiview_flags (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_set_multiview_flags (GstPlayer * player,
GstVideoMultiviewFlags flags);
-GST_EXPORT
+GST_PLAYER_API
gint64 gst_player_get_audio_video_offset (GstPlayer * player);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_set_audio_video_offset (GstPlayer * player,
gint64 offset);
-GST_EXPORT
+GST_PLAYER_API
gboolean gst_player_set_config (GstPlayer * player,
GstStructure * config);
-GST_EXPORT
+GST_PLAYER_API
GstStructure * gst_player_get_config (GstPlayer * player);
/* helpers for configuring the config structure */
-GST_EXPORT
+GST_PLAYER_API
void gst_player_config_set_user_agent (GstStructure * config,
const gchar * agent);
-GST_EXPORT
+GST_PLAYER_API
gchar * gst_player_config_get_user_agent (const GstStructure * config);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_config_set_position_update_interval (GstStructure * config,
guint interval);
-GST_EXPORT
+GST_PLAYER_API
guint gst_player_config_get_position_update_interval (const GstStructure * config);
-GST_EXPORT
+GST_PLAYER_API
void gst_player_config_set_seek_accurate (GstStructure * config, gboolean accurate);
-GST_EXPORT
+GST_PLAYER_API
gboolean gst_player_config_get_seek_accurate (const GstStructure * config);
typedef enum
@@ -286,7 +287,7 @@
GST_PLAYER_THUMBNAIL_PNG
} GstPlayerSnapshotFormat;
-GST_EXPORT
+GST_PLAYER_API
GstSample * gst_player_get_video_snapshot (GstPlayer * player,
GstPlayerSnapshotFormat format, const GstStructure * config);
diff --git a/gst-libs/gst/player/meson.build b/gst-libs/gst/player/meson.build
index a44d7d8..b33001c 100644
--- a/gst-libs/gst/player/meson.build
+++ b/gst-libs/gst/player/meson.build
@@ -10,6 +10,7 @@
gstplayer_headers = [
'player.h',
+ 'player-prelude.h',
'gstplayer.h',
'gstplayer-types.h',
'gstplayer-signal-dispatcher.h',
diff --git a/gst-libs/gst/player/player-prelude.h b/gst-libs/gst/player/player-prelude.h
new file mode 100644
index 0000000..a24010a
--- /dev/null
+++ b/gst-libs/gst/player/player-prelude.h
@@ -0,0 +1,31 @@
+/* GStreamer Player Library
+ * Copyright (C) 2018 GStreamer developers
+ *
+ * player-prelude.h: prelude include header for gst-player library
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library 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
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#ifndef __GST_PLAYER_PRELUDE_H__
+#define __GST_PLAYER_PRELUDE_H__
+
+#include <gst/gst.h>
+
+#ifndef GST_PLAYER_API
+#define GST_PLAYER_API GST_EXPORT
+#endif
+
+#endif /* __GST_PLAYER_PRELUDE_H__ */
diff --git a/gst-libs/gst/player/player.h b/gst-libs/gst/player/player.h
index 0fc91d6..40907c1 100644
--- a/gst-libs/gst/player/player.h
+++ b/gst-libs/gst/player/player.h
@@ -21,6 +21,7 @@
#ifndef __PLAYER_H__
#define __PLAYER_H__
+#include <gst/player/player-prelude.h>
#include <gst/player/gstplayer.h>
#include <gst/player/gstplayer-media-info.h>
#include <gst/player/gstplayer-g-main-context-signal-dispatcher.h>