* @section CAPI_MEDIA_PLAYER_MODULE_FEATURE Related Features
* This API is related with the following features:
* - http://tizen.org/feature/opengles.version.2_0
- * This feature is required for 360 video playback.
+ * - http://tizen.org/feature/multimedia.player.spherical_video
+ * These features are required for 360 video playback.
* @if WEARABLE
* - http://tizen.org/feature/network.internet
* This feature is required for network streaming.
/**
* @brief Gets information whether the current content of the player is spherical.
* @since_tizen 5.0
+ * @remarks This function is related to the following features:\n
+ * %http://tizen.org/feature/multimedia.player.spherical_video\n
+ * %http://tizen.org/feature/opengles.version.2_0\n
* @param[in] player The handle to the media player
* @param[out] is_spherical The value indicating whether the content is spherical
* @return @c 0 on success,
* @brief Sets the 360 video mode.
* @details In case the media content is spherical, display mode can be selected by this function.
* @since_tizen 5.0
+ * @remarks This function is related to the following features:\n
+ * %http://tizen.org/feature/multimedia.player.spherical_video\n
+ * %http://tizen.org/feature/opengles.version.2_0\n
* @param[in] player The handle to the media player
* @param[in] enabled The 360 video display status: @c true = display with 360 video mode,
@c false = display with full panorama mode. The default value is @c true.
/**
* @brief Gets the 360 video display mode.
* @since_tizen 5.0
+ * @remarks This function is related to the following features:\n
+ * %http://tizen.org/feature/multimedia.player.spherical_video\n
+ * %http://tizen.org/feature/opengles.version.2_0\n
* @param[in] player The handle to the media player
* @param[out] enabled Pointer to store current 360 video display mode:
* (@c true = display with 360 video mode,
* these values, zeros are assumed to be equal to the centre of the
* panorama image.
* @since_tizen 5.0
+ * @remarks This function is related to the following features:\n
+ * %http://tizen.org/feature/multimedia.player.spherical_video\n
+ * %http://tizen.org/feature/opengles.version.2_0\n
* @param[in] player The handle to the media player
* @param[in] yaw The angle value around vertical axis. Valid values are in
* range [-PI, PI].
* @details This function is to get horizontal (yaw) and vertical (pitch) angles
* of current direction of view in radians.
* @since_tizen 5.0
+ * @remarks This function is related to the following features:\n
+ * %http://tizen.org/feature/multimedia.player.spherical_video\n
+ * %http://tizen.org/feature/opengles.version.2_0\n
* @param[in] player The handle to the media player
* @param[out] yaw Pointer to store current value of direction of view
* angle around vertical axis
* The valid range is from 1.0 to 10.0, where 1.0 is the actual image and
* values above are zoom-in factor. Default value is 1.0 - no zoom.
* @since_tizen 5.0
+ * @remarks This function is related to the following features:\n
+ * %http://tizen.org/feature/multimedia.player.spherical_video\n
+ * %http://tizen.org/feature/opengles.version.2_0\n
* @param[in] player The handle to the media player
* @param[in] level The zoom level
* @return @c 0 on success,
* The valid range is from 1.0 to 10.0. Where 1.0 is actual image and
* values above are zoom-in factor. Default value is 1.0 - no zoom.
* @since_tizen 5.0
+ * @remarks This function is related to the following features:\n
+ * %http://tizen.org/feature/multimedia.player.spherical_video\n
+ * %http://tizen.org/feature/opengles.version.2_0\n
* @param[in] player The handle to the media player
* @param[out] level Pointer to store current value of zoom level
* @return @c 0 on success,
* @since_tizen 5.0
* @remarks values above the default ones extend the field of view to significantly
* distorted areas and will not be useful in most cases.
+ * @remarks This function is related to the following features:\n
+ * %http://tizen.org/feature/multimedia.player.spherical_video\n
+ * %http://tizen.org/feature/opengles.version.2_0\n
* @param[in] player The handle to the media player
* @param[in] horizontal_degrees The horizontal field of view to display in degrees.
* Valid range is 1-360 degrees. Default value is 120 degrees.
* @brief Gets the field of view information of 360 video.
* @details This function is to get the field of view information.
* @since_tizen 5.0
+ * @remarks This function is related to the following features:\n
+ * %http://tizen.org/feature/multimedia.player.spherical_video\n
+ * %http://tizen.org/feature/opengles.version.2_0\n
* @param[in] player The handle to the media player
* @param[out] horizontal_degrees Pointer to store current value of horizontal
* field of view to display in degrees.
#define INVALID_DEFAULT_VALUE -1
#define MAX_S_PATH_LEN 32
-#define PLAYER_FEATURE_SOUND_STREAM "http://tizen.org/feature/multimedia.player.stream_info"
-#define PLAYER_FEATURE_OPENGL "http://tizen.org/feature/opengles.version.2_0"
+#define PLAYER_FEATURE_SOUND_STREAM "http://tizen.org/feature/multimedia.player.stream_info"
+#define PLAYER_FEATURE_OPENGL "http://tizen.org/feature/opengles.version.2_0"
+#define PLAYER_FEATURE_SPHERICAL_VIDEO "http://tizen.org/feature/multimedia.player.spherical_video"
typedef enum {
TIZEN_PROFILE_UNKNOWN = 0,
int player_360_is_content_spherical(player_h player, bool *is_spherical)
{
PLAYER_FEATURE_CHECK(PLAYER_FEATURE_OPENGL);
+ PLAYER_FEATURE_CHECK(PLAYER_FEATURE_SPHERICAL_VIDEO);
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(is_spherical);
int player_360_set_enabled(player_h player, bool enabled)
{
PLAYER_FEATURE_CHECK(PLAYER_FEATURE_OPENGL);
+ PLAYER_FEATURE_CHECK(PLAYER_FEATURE_SPHERICAL_VIDEO);
+
PLAYER_INSTANCE_CHECK(player);
int ret = PLAYER_ERROR_NONE;
muse_player_api_e api = MUSE_PLAYER_API_360_SET_ENABLED;
int player_360_is_enabled(player_h player, bool *enabled)
{
PLAYER_FEATURE_CHECK(PLAYER_FEATURE_OPENGL);
+ PLAYER_FEATURE_CHECK(PLAYER_FEATURE_SPHERICAL_VIDEO);
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(enabled);
int ret = PLAYER_ERROR_NONE;
int player_360_set_direction_of_view(player_h player, float yaw, float pitch)
{
PLAYER_FEATURE_CHECK(PLAYER_FEATURE_OPENGL);
+ PLAYER_FEATURE_CHECK(PLAYER_FEATURE_SPHERICAL_VIDEO);
+
PLAYER_INSTANCE_CHECK(player);
int ret = PLAYER_ERROR_NONE;
muse_player_api_e api = MUSE_PLAYER_API_360_SET_DIRECTION_OF_VIEW;
int player_360_get_direction_of_view(player_h player, float *yaw, float *pitch)
{
PLAYER_FEATURE_CHECK(PLAYER_FEATURE_OPENGL);
+ PLAYER_FEATURE_CHECK(PLAYER_FEATURE_SPHERICAL_VIDEO);
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(yaw && pitch);
int ret = PLAYER_ERROR_NONE;
int player_360_set_zoom(player_h player, float level)
{
PLAYER_FEATURE_CHECK(PLAYER_FEATURE_OPENGL);
+ PLAYER_FEATURE_CHECK(PLAYER_FEATURE_SPHERICAL_VIDEO);
+
PLAYER_INSTANCE_CHECK(player);
int ret = PLAYER_ERROR_NONE;
muse_player_api_e api = MUSE_PLAYER_API_360_SET_ZOOM;
int player_360_get_zoom(player_h player, float *level)
{
PLAYER_FEATURE_CHECK(PLAYER_FEATURE_OPENGL);
+ PLAYER_FEATURE_CHECK(PLAYER_FEATURE_SPHERICAL_VIDEO);
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(level);
int ret = PLAYER_ERROR_NONE;
int player_360_set_field_of_view(player_h player, int horizontal_degrees, int vertical_degrees)
{
PLAYER_FEATURE_CHECK(PLAYER_FEATURE_OPENGL);
+ PLAYER_FEATURE_CHECK(PLAYER_FEATURE_SPHERICAL_VIDEO);
+
PLAYER_INSTANCE_CHECK(player);
int ret = PLAYER_ERROR_NONE;
muse_player_api_e api = MUSE_PLAYER_API_360_SET_FIELD_OF_VIEW;
int player_360_get_field_of_view(player_h player, int *horizontal_degrees, int *vertical_degrees)
{
PLAYER_FEATURE_CHECK(PLAYER_FEATURE_OPENGL);
+ PLAYER_FEATURE_CHECK(PLAYER_FEATURE_SPHERICAL_VIDEO);
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(horizontal_degrees && vertical_degrees);
int ret = PLAYER_ERROR_NONE;