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.
This commit is contained in:
Tim-Philipp Müller 2018-03-13 13:02:54 +00:00
parent 456f60164c
commit fc9bdae8e2
12 changed files with 150 additions and 112 deletions

View file

@ -39,6 +39,7 @@ noinst_HEADERS = \
libgstplayer_HEADERS = \
player.h \
player-prelude.h \
gstplayer.h \
gstplayer-types.h \
gstplayer-signal-dispatcher.h \

View file

@ -39,10 +39,10 @@ typedef struct _GstPlayerGMainContextSignalDispatcherClass
#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

View file

@ -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 @@ G_BEGIN_DECLS
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 @@ const gchar* gst_player_stream_info_get_codec (const GstPlayerStreamInfo *info)
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 @@ void gst_player_video_info_get_pixel_aspect_ratio (const GstPlayerVideo
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 @@ const gchar* gst_player_audio_info_get_language (const GstPlayerAudioInfo* i
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 @@ const gchar * gst_player_subtitle_info_get_language (const GstPlayerSubtitleInfo
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

View file

@ -46,7 +46,7 @@ struct _GstPlayerSignalDispatcherInterface {
GDestroyNotify destroy);
};
GST_EXPORT
GST_PLAYER_API
GType gst_player_signal_dispatcher_get_type (void);
G_END_DECLS

View file

@ -22,6 +22,7 @@
#define __GST_PLAYER_TYPES_H__
#include <gst/gst.h>
#include <gst/player/player-prelude.h>
G_BEGIN_DECLS

View file

@ -39,28 +39,28 @@ typedef struct _GstPlayerVideoOverlayVideoRendererClass
#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

View file

@ -40,7 +40,7 @@ struct _GstPlayerVideoRendererInterface {
GstElement * (*create_video_sink) (GstPlayerVideoRenderer * self, GstPlayer * player);
};
GST_EXPORT
GST_PLAYER_API
GType gst_player_video_renderer_get_type (void);
G_END_DECLS

View file

@ -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 @@ struct _GstPlayerVisualization {
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

View file

@ -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 @@ typedef enum
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 @@ typedef enum {
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 @@ typedef enum
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 @@ const gchar *gst_player_color_balance_type_get_name (GstPlayerColorBalanceType
#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 @@ typedef enum
GST_PLAYER_THUMBNAIL_PNG
} GstPlayerSnapshotFormat;
GST_EXPORT
GST_PLAYER_API
GstSample * gst_player_get_video_snapshot (GstPlayer * player,
GstPlayerSnapshotFormat format, const GstStructure * config);

View file

@ -10,6 +10,7 @@ gstplayer_sources = [
gstplayer_headers = [
'player.h',
'player-prelude.h',
'gstplayer.h',
'gstplayer-types.h',
'gstplayer-signal-dispatcher.h',

View file

@ -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__ */

View file

@ -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>