Fix header to compile properly when including it 97/264497/2 accepted/tizen/unified/20210928.125141 submit/tizen/20210928.044508
authorGilbok Lee <gilbok.lee@samsung.com>
Thu, 23 Sep 2021 08:17:45 +0000 (17:17 +0900)
committerGilbok Lee <gilbok.lee@samsung.com>
Fri, 24 Sep 2021 06:14:55 +0000 (15:14 +0900)
- use typedef enumeration
- use stdint.h instead of cstdint

Change-Id: Ia1b5393a667cea8f9747fe21e8b18bf8285ed0ad

13 files changed:
include/esplusplayer_capi/buffer.h
include/esplusplayer_capi/display.h
include/esplusplayer_capi/drm.h
include/esplusplayer_capi/error.h
include/esplusplayer_capi/espacket.h
include/esplusplayer_capi/esplusplayer_capi.h
include/esplusplayer_capi/event.h
include/esplusplayer_capi/matroska_color.h
include/esplusplayer_capi/state.h
include/esplusplayer_capi/stream.h
include/esplusplayer_capi/submitdatatype.h
include/esplusplayer_capi/submitstatus.h
packaging/esplusplayer.spec

index f499b25..acaf120 100644 (file)
 #ifndef __PLUSPLAYER_ESPLUSPLAYER_CAPI_BUFFER_H__
 #define __PLUSPLAYER_ESPLUSPLAYER_CAPI_BUFFER_H__
 
-#include <cstdint>
-
 #ifdef __cplusplus
 extern "C" {
 #endif
 
+#include <stdint.h>
+
 /**
  * @brief  Enumerations for the buffer status
  */
-enum esplusplayer_buffer_status {
+typedef enum {
   ESPLUSPLAYER_BUFFER_STATUS_UNDERRUN,
   ESPLUSPLAYER_BUFFER_STATUS_OVERRUN
-};
+} esplusplayer_buffer_status;
 
 /**
  * @brief  Enumerations for video decoded buffer type
@@ -47,12 +47,12 @@ enum esplusplayer_buffer_status {
  * decoded video frame will be croped and scaled, then sent to
  * user by media_packet_video_decoded_cb, only support hw decoder now
 */
-enum esplusplayer_decoded_video_frame_buffer_type {
+typedef enum {
   ESPLUSPLAYER_DECODED_VIDEO_FRAME_BUFFER_TYPE_NONE,
   ESPLUSPLAYER_DECODED_VIDEO_FRAME_BUFFER_TYPE_COPY,
   ESPLUSPLAYER_DECODED_VIDEO_FRAME_BUFFER_TYPE_REFERENCE,
   ESPLUSPLAYER_DECODED_VIDEO_FRAME_BUFFER_TYPE_SCALE
-};
+} esplusplayer_decoded_video_frame_buffer_type;
 
 /**
  * @brief  Enumerations for buffer size option
@@ -63,7 +63,7 @@ enum esplusplayer_decoded_video_frame_buffer_type {
  * MIN_BYTE_THRESHOLD : Emit under-run when queued bytes drops below this
  * percent of  max-byte-size(size%)
  */
-enum esplusplayer_buffer_option {
+typedef enum {
   ESPLUSPLAYER_BUFFER_AUDIO_MAX_TIME_SIZE,
   ESPLUSPLAYER_BUFFER_VIDEO_MAX_TIME_SIZE,
   ESPLUSPLAYER_BUFFER_AUDIO_MIN_TIME_THRESHOLD,
@@ -72,7 +72,7 @@ enum esplusplayer_buffer_option {
   ESPLUSPLAYER_BUFFER_VIDEO_MAX_BYTE_SIZE,
   ESPLUSPLAYER_BUFFER_AUDIO_MIN_BYTE_THRESHOLD,
   ESPLUSPLAYER_BUFFER_VIDEO_MIN_BYTE_THRESHOLD
-};
+} esplusplayer_buffer_option;
 
 /**
  * @brief  video decoded buffer struct
index f3adb95..28693d0 100644 (file)
@@ -37,34 +37,34 @@ extern "C" {
 /**
  * @brief  Enumerations for the display mode
  */
-enum esplusplayer_display_mode {
+typedef enum {
   ESPLUSPLAYER_DISPLAY_MODE_LETTER_BOX,
   ESPLUSPLAYER_DISPLAY_MODE_ORIGIN_SIZE,
   ESPLUSPLAYER_DISPLAY_MODE_FULL_SCREEN,
   ESPLUSPLAYER_DISPLAY_MODE_CROPPED_FULL,
   ESPLUSPLAYER_DISPLAY_MODE_ORIGIN_OR_LETTER,
   ESPLUSPLAYER_DISPLAY_MODE_DST_ROI
-};
+} esplusplayer_display_mode;
 
 /**
  * @brief  Enumerations for the display type
  */
-enum esplusplayer_display_type {
+typedef enum {
   ESPLUSPLAYER_DISPLAY_TYPE_NONE,
   ESPLUSPLAYER_DISPLAY_TYPE_OVERLAY,
   ESPLUSPLAYER_DISPLAY_TYPE_EVAS,
   ESPLUSPLAYER_DISPLAY_TYPE_MIXER
-};
+} esplusplayer_display_type;
 
 /**
  * @brief  Enumerations for the display rotation type
  */
-enum esplusplayer_display_rotation_type {
+typedef enum {
   ESPLUSPLAYER_DISPLAY_ROTATION_TYPE_NONE,
   ESPLUSPLAYER_DISPLAY_ROTATION_TYPE_90,
   ESPLUSPLAYER_DISPLAY_ROTATION_TYPE_180,
   ESPLUSPLAYER_DISPLAY_ROTATION_TYPE_270
-};
+} esplusplayer_display_rotation_type;
 
 #ifdef __cplusplus
 }  // extern "C"
index dd2babc..a40c213 100755 (executable)
@@ -38,28 +38,28 @@ extern "C" {
 /**
  * @brief  Enumerations for the drm type
  */
-enum esplusplayer_drm_type {
+typedef enum {
   ESPLUSPLAYER_DRM_TYPE_NONE,
   ESPLUSPLAYER_DRM_TYPE_PLAYREADY,
   ESPLUSPLAYER_DRM_TYPE_MARLIN,
   ESPLUSPLAYER_DRM_TYPE_VERIMATRIX,
   ESPLUSPLAYER_DRM_TYPE_WV_MODULAR
-};
+} esplusplayer_drm_type;
 
 /**
  * @brief  Enumerations for the algorithm encrypted
  */
-enum esplusplayer_drmb_es_cipher_algorithm {
+typedef enum {
   ESPLUSPLAYER_DRMB_ES_CIPHER_ALGORITHM_UNKNOWN = -1,
   ESPLUSPLAYER_DRMB_ES_CIPHER_ALGORITHM_RC4 = 0,
   ESPLUSPLAYER_DRMB_ES_CIPHER_ALGORITHM_AES128_CTR = 1,
   ESPLUSPLAYER_DRMB_ES_CIPHER_ALGORITHM_AES128_CBC = 2
-};
+} esplusplayer_drmb_es_cipher_algorithm;
 
 /**
  * @brief  Enumerations for the algorithm encrypted
  */
-enum esplusplayer_drmb_es_media_format {
+typedef enum {
   ESPLUSPLAYER_DRMB_ES_MEDIA_FORMAT_NONE = 0,
   ESPLUSPLAYER_DRMB_ES_MEDIA_FORMAT_FMP4 = 1,
   ESPLUSPLAYER_DRMB_ES_MEDIA_FORMAT_TS = 2,
@@ -68,17 +68,17 @@ enum esplusplayer_drmb_es_media_format {
   ESPLUSPLAYER_DRMB_ES_MEDIA_FORMAT_FMP4_VIDEO = 5,
   ESPLUSPLAYER_DRMB_ES_MEDIA_FORMAT_CLEAN_AUDIO = 6,
   ESPLUSPLAYER_DRMB_ES_MEDIA_FORMAT_PES = 7
-};
+} esplusplayer_drmb_es_media_format;
 
 /**
  * @brief  Enumerations for the phase for cipher
  */
-enum esplusplayer_drmb_es_cipher_phase {
+typedef enum {
   ESPLUSPLAYER_DRMB_ES_CIPHER_PHASE_NONE = 0,
   ESPLUSPLAYER_DRMB_ES_CIPHER_PHASE_INIT = 1,
   ESPLUSPLAYER_DRMB_ES_CIPHER_PHASE_UPDATE = 2,
   ESPLUSPLAYER_DRMB_ES_CIPHER_PHASE_FINAL = 3
-};
+} esplusplayer_drmb_es_cipher_phase;
 
 /**
  * @brief  Subsample information structure for encrypted es
index 17f24bd..c1f7874 100755 (executable)
@@ -42,7 +42,7 @@ extern "C" {
 /**
  * @brief  Enumerations for the error type
  */
-enum esplusplayer_error_type {
+typedef enum {
   ESPLUSPLAYER_ERROR_TYPE_NONE = TIZEN_ERROR_NONE, /**< Successful */
   ESPLUSPLAYER_ERROR_TYPE_OUT_OF_MEMORY = TIZEN_ERROR_OUT_OF_MEMORY, /**< Out of memory */
   ESPLUSPLAYER_ERROR_TYPE_INVALID_PARAMETER = TIZEN_ERROR_INVALID_PARAMETER, /**< Invalid parameter */
@@ -60,7 +60,7 @@ enum esplusplayer_error_type {
   ESPLUSPLAYER_ERROR_TYPE_DRM_DECRYPTION_FAILED = ESPLUSPLAYER_CUSTOM_ERROR_CLASS | 0x05, /**< drm decryption failed */
   ESPLUSPLAYER_ERROR_TYPE_NOT_SUPPORTED_FORMAT = ESPLUSPLAYER_CUSTOM_ERROR_CLASS | 0x08,/**< format not supported */
   ESPLUSPLAYER_ERROR_TYPE_UNKNOWN
-};
+} esplusplayer_error_type;
 
 #ifdef __cplusplus
 }  // extern "C"
index 14edd8f..417da2d 100755 (executable)
@@ -26,8 +26,6 @@
 #ifndef __PLUSPLAYER_ESPLUSPLAYER_CAPI_ESPACKET_H__
 #define __PLUSPLAYER_ESPLUSPLAYER_CAPI_ESPACKET_H__
 
-#include <cstdint>
-
 #include "esplusplayer_capi/matroska_color.h"
 #include "esplusplayer_capi/stream.h"
 
@@ -35,6 +33,8 @@
 extern "C" {
 #endif
 
+#include <stdint.h>
+
 /**
  * @brief   Es packet structure
  */
index b145ead..8556380 100644 (file)
@@ -76,7 +76,7 @@ typedef void* esplusplayer_handle;
  * @brief   Enumerations for low latency mode
  * @version 3.2
  */
-enum esplusplayer_low_latency_mode {
+typedef enum {
   ESPLUSPLAYER_LOW_LATENCY_MODE_NONE = 0x0000,
   /**
    * @description   to support audio fast decoding/rendering
@@ -130,12 +130,12 @@ enum esplusplayer_low_latency_mode {
    *                It can use enhanced game_mode.
    */
   ESPLUSPLAYER_LOW_LATENCY_MODE_ENABLE_GAME_MODE = 0x2000
-};
+} esplusplayer_low_latency_mode;
 
 /**
  * @brief   Enumerations for esplusplayer audio codec type
  */
-enum esplusplayer_audio_codec_type {
+typedef enum {
   /**
    * @description   hardware codec can only be selected, default type
    */
@@ -144,12 +144,12 @@ enum esplusplayer_audio_codec_type {
    * @description   sorfware codec can only be selected
    */
   ESPLUSPLAYER_AUDIO_CODEC_TYPE_SW
-};
+} esplusplayer_audio_codec_type;
 
 /**
  * @brief   Enumerations for esplusplayer video codec type
  */
-enum esplusplayer_video_codec_type {
+typedef enum {
   /**
    * @description   hardware codec can only be selected, default type
    */
@@ -166,12 +166,12 @@ enum esplusplayer_video_codec_type {
   */
   ESPLUSPLAYER_VIDEO_CODEC_TYPE_HW_N_DECODING
 
-};
+} esplusplayer_video_codec_type;
 /**
  * @brief   Enumerations for esplusplayer audio easing type
  * @version 3.0
  */
-enum esplusplayer_audio_easing_type {
+typedef enum {
   /**
    * @description audio easing function type is linear
    */
@@ -188,24 +188,24 @@ enum esplusplayer_audio_easing_type {
    * @description audio easing function type is none
    */
   ESPLUSPLAYER_AUDIO_EASING_NONE
-};
+} esplusplayer_audio_easing_type;
 
 /**
  * @brief   Enumerations for esplusplayer resource type
  * @version 3.0
  */
-enum esplusplayer_rsc_type {
+typedef enum {
   /**
    * @description video renderer type
    */
   ESPLUSPLAYER_RSC_TYPE_VIDEO_RENDERER
-};
+} esplusplayer_rsc_type;
 
 /**
  * @brief   Enumerations for advanced video quality type
  * @version 3.1
  */
-enum esplusplayer_advanced_picture_quality_type {
+typedef enum {
   /**
    * @description advanced picture quality for video call
    */
@@ -214,7 +214,7 @@ enum esplusplayer_advanced_picture_quality_type {
    * @description advanced picture quality for usb camera
    */
   ESPLUSPLAYER_ADVANCED_PICTURE_QUALITY_USB_CAMERA
-};
+} esplusplayer_advanced_picture_quality_type;
 
 typedef struct {
   /**
@@ -244,7 +244,7 @@ typedef struct {
 /**
  * @brief  resource allocate policy
  */
-enum esplusplayer_rsc_alloc_policy {
+typedef enum {
   /**
    * @description exclusive policy, RM will return the requested resources,
    * default policy
@@ -255,7 +255,7 @@ enum esplusplayer_rsc_alloc_policy {
    * available resources are not left, RM will return fail.
    */
   ESPLUSPLAYER_RSC_ALLOC_EXCLUSIVE_CONDITIONAL
-};
+} esplusplayer_rsc_alloc_policy;
 
 /**
  * @brief     Create a esplusplayer handle.
index 3278991..779ff7b 100755 (executable)
@@ -1,63 +1,63 @@
-/**\r
- * @file\r
- * @brief          The event for playback.\r
- * @interfacetype  Platform\r
- * @privlevel      None-privilege\r
- * @privilege      None\r
- * @product        TV, AV, B2B\r
- * @version        2.0\r
- * @SDK_Support    N\r
- * @remark         This is a group of C style event related enum and structure.\r
- * @see            N/A\r
- *\r
- * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved\r
- * PROPRIETARY/CONFIDENTIAL\r
- * This software is the confidential and proprietary\r
- * information of SAMSUNG ELECTRONICS ("Confidential Information"). You shall\r
- * not disclose such Confidential Information and shall use it only in\r
- * accordance with the terms of the license agreement you entered into with\r
- * SAMSUNG ELECTRONICS. SAMSUNG make no representations or warranties about the\r
- * suitability of the software, either express or implied, including but not\r
- * limited to the implied warranties of merchantability, fitness for a\r
- * particular purpose, or non-infringement. SAMSUNG shall not be liable for any\r
- * damages suffered by licensee as a result of using, modifying or distributing\r
- * this software or its derivatives.\r
- */\r
-\r
-#ifndef __PLUSPLAYER_ESPLUSPLAYER_CAPI_EVENT_H__\r
-#define __PLUSPLAYER_ESPLUSPLAYER_CAPI_EVENT_H__\r
-\r
-#include <cstdint>\r
-\r
-#ifdef __cplusplus\r
-extern "C" {\r
-#endif\r
-\r
-/**\r
- * @brief Event message\r
- */\r
-typedef struct {\r
-  /**\r
-   * @description event message data\r
-   *              eg) ESPLUSPLAYER_EVENT_RESOLUTION_CHANGED : "1920x1080"\r
-   */\r
-  char* data;\r
-  /**\r
-   * @description the length of event message data\r
-   */\r
-  uint64_t len;\r
-} esplusplayer_event_msg;\r
-\r
-/**\r
- * @brief Enumerations for event message types\r
- */\r
-enum esplusplayer_event_type {\r
-  ESPLUSPLAYER_EVENT_NONE,\r
-  ESPLUSPLAYER_EVENT_RESOLUTION_CHANGED,\r
-};\r
-\r
-#ifdef __cplusplus\r
-}  // extern "C"\r
-#endif\r
-\r
-#endif  // __PLUSPLAYER_ESPLUSPLAYER_CAPI_EVENT_H__\r
+/**
+ * @file
+ * @brief          The event for playback.
+ * @interfacetype  Platform
+ * @privlevel      None-privilege
+ * @privilege      None
+ * @product        TV, AV, B2B
+ * @version        2.0
+ * @SDK_Support    N
+ * @remark         This is a group of C style event related enum and structure.
+ * @see            N/A
+ *
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
+ * PROPRIETARY/CONFIDENTIAL
+ * This software is the confidential and proprietary
+ * information of SAMSUNG ELECTRONICS ("Confidential Information"). You shall
+ * not disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into with
+ * SAMSUNG ELECTRONICS. SAMSUNG make no representations or warranties about the
+ * suitability of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a
+ * particular purpose, or non-infringement. SAMSUNG shall not be liable for any
+ * damages suffered by licensee as a result of using, modifying or distributing
+ * this software or its derivatives.
+ */
+
+#ifndef __PLUSPLAYER_ESPLUSPLAYER_CAPI_EVENT_H__
+#define __PLUSPLAYER_ESPLUSPLAYER_CAPI_EVENT_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <stdint.h>
+
+/**
+ * @brief Event message
+ */
+typedef struct {
+  /**
+   * @description event message data
+   *              eg) ESPLUSPLAYER_EVENT_RESOLUTION_CHANGED : "1920x1080"
+   */
+  char* data;
+  /**
+   * @description the length of event message data
+   */
+  uint64_t len;
+} esplusplayer_event_msg;
+
+/**
+ * @brief Enumerations for event message types
+ */
+typedef enum {
+  ESPLUSPLAYER_EVENT_NONE,
+  ESPLUSPLAYER_EVENT_RESOLUTION_CHANGED,
+} esplusplayer_event_type;
+
+#ifdef __cplusplus
+}  // extern "C"
+#endif
+
+#endif  // __PLUSPLAYER_ESPLUSPLAYER_CAPI_EVENT_H__
index 4b9b828..42d1187 100755 (executable)
-/**\r
- * @file\r
- * @brief          The matroska color info\r
- * @interfacetype  Platform\r
- * @privlevel      None-privilege\r
- * @privilege      None\r
- * @product        TV, AV, B2B\r
- * @version        2.0\r
- * @SDK_Support    N\r
- * @see            plusplayer::EsPlusPlayer class\r
- *\r
- * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved\r
- * PROPRIETARY/CONFIDENTIAL\r
- * This software is the confidential and proprietary\r
- * information of SAMSUNG ELECTRONICS ("Confidential Information"). You shall\r
- * not disclose such Confidential Information and shall use it only in\r
- * accordance with the terms of the license agreement you entered into with\r
- * SAMSUNG ELECTRONICS. SAMSUNG make no representations or warranties about the\r
- * suitability of the software, either express or implied, including but not\r
- * limited to the implied warranties of merchantability, fitness for a\r
- * particular purpose, or non-infringement. SAMSUNG shall not be liable for any\r
- * damages suffered by licensee as a result of using, modifying or distributing\r
- * this software or its derivatives.\r
- */\r
-\r
-#ifndef __PLUSPLAYER_ESPLUSPLAYER_CAPI_MATROSKA_COLOR_H__\r
-#define __PLUSPLAYER_ESPLUSPLAYER_CAPI_MATROSKA_COLOR_H__\r
-\r
-#include <cstdint>\r
-\r
-#ifdef __cplusplus\r
-extern "C" {\r
-#endif\r
-\r
-/**\r
- * @brief   Structure of matroska matering metadata\r
- */\r
-typedef struct {\r
-  /**\r
-   * @description    Red X chromaticity coordinate as defined by CIE 1931.\r
-   */\r
-  double primary_r_chromaticity_x;\r
-  /**\r
-   * @description    Red Y chromaticity coordinate as defined by CIE 1931.\r
-   */\r
-  double primary_r_chromaticity_y;\r
-  /**\r
-   * @description    Green X chromaticity coordinate as defined by CIE 1931.\r
-   */\r
-  double primary_g_chromaticity_x;\r
-  /**\r
-   * @description    Green Y chromaticity coordinate as defined by CIE 1931.\r
-   */\r
-  double primary_g_chromaticity_y;\r
-  /**\r
-   * @description    Blue X chromaticity coordinate as defined by CIE 1931.\r
-   */\r
-  double primary_b_chromaticity_x;\r
-  /**\r
-   * @description    Blue Y chromaticity coordinate as defined by CIE 1931.\r
-   */\r
-  double primary_b_chromaticity_y;\r
-  /**\r
-   * @description    White X chromaticity coordinate as defined by CIE 1931.\r
-   */\r
-  double white_point_chromaticity_x;\r
-  /**\r
-   * @description    White Y chromaticity coordinate as defined by CIE 1931.\r
-   */\r
-  double white_point_chromaticity_y;\r
-  /**\r
-   * @description    Maximum luminance. Represented in candelas per square meter\r
-   * (cd/m²).\r
-   */\r
-  double luminance_max;\r
-  /**\r
-   * @description    Mininum luminance. Represented in candelas per square meter\r
-   * (cd/m²).\r
-   */\r
-  double luminance_min;\r
-} esplusplayer_matroska_mastering_metadata;\r
-\r
-/**\r
- * @brief   Structure of matroska color information\r
- */\r
-typedef struct {\r
-  /**\r
-   * @description   The Matrix Coefficients of the video used to derive luma and\r
-   * chroma values from red, green, and blue color primaries. For clarity, the\r
-   * value and meanings for MatrixCoefficients are adopted from Table 4 of\r
-   * ISO/IEC 23001-8:2013/DCOR1.\r
-   */\r
-  uint32_t matrix_coefficients;\r
-  /**\r
-   * @description   Number of decoded bits per channel. A value of 0 indicates\r
-   * that the BitsPerChannel is unspecified.\r
-   */\r
-  uint32_t bits_per_channel;\r
-  /**\r
-   * @description   The amount of pixels to remove in the Cr and Cb channels for\r
-   * every pixel not removed horizontally.\r
-   */\r
-  uint32_t chroma_subsampling_horizontal;\r
-  /**\r
-   * @description   The amount of pixels to remove in the Cr and Cb channels for\r
-   * every pixel not removed vertically.\r
-   */\r
-  uint32_t chroma_subsampling_vertical;\r
-  /**\r
-   * @description    The amount of pixels to remove in the Cb channel for every\r
-   * pixel not removed horizontally. This is additive with\r
-   * chroma_subsampling_horizontal.\r
-   */\r
-  uint32_t cb_subsampling_horizontal;\r
-  /**\r
-   * @description    The amount of pixels to remove in the Cb channel for every\r
-   * pixel not removed vertically. This is additive with\r
-   * chroma_subsampling_vertical.\r
-   */\r
-  uint32_t cb_subsampling_vertical;\r
-  /**\r
-   * @description    How chroma is subsampled horizontally.\r
-   */\r
-  uint32_t chroma_siting_horizontal;\r
-  /**\r
-   * @description    How chroma is subsampled vertically.\r
-   */\r
-  uint32_t chroma_siting_vertical;\r
-  /**\r
-   * @description    Clipping of the color ranges.\r
-   */\r
-  uint32_t range;\r
-  /**\r
-   * @description    The transfer characteristics of the video. For clarity, the\r
-   * value and meanings for transfer_characteristics 1-15 are adopted from Table\r
-   * 3 of ISO/IEC 23001-8:2013/DCOR1. transfer_characteristics 16-18 are\r
-   * proposed values.\r
-   */\r
-  uint32_t transfer_characteristics;\r
-  /**\r
-   * @description    The colour primaries of the video. For clarity, the value\r
-   * and meanings for primaries are adopted from Table 2 of ISO/IEC\r
-   * 23001-8:2013/DCOR1.\r
-   */\r
-  uint32_t primaries;\r
-  /**\r
-   * @description    Maximum brightness of a single pixel (Maximum Content Light\r
-   * Level) in candelas per square meter (cd/m²).\r
-   */\r
-  uint32_t max_cll;\r
-  /**\r
-   * @description    Maximum brightness of a single full frame (Maximum\r
-   * Frame-Average Light Level) in candelas per square meter (cd/m²).\r
-   */\r
-  uint32_t max_fall;\r
-  /**\r
-   * @description    SMPTE 2086 mastering data.\r
-   */\r
-  esplusplayer_matroska_mastering_metadata metadata;\r
-  /**\r
-   * @description    flag to check if this file is hdr10+ (cd/m²).\r
-   */\r
-  uint32_t isHDR10p;\r
-} esplusplayer_matroska_color;\r
-\r
-#ifdef __cplusplus\r
-}  // extern "C"\r
-#endif\r
-\r
-#endif  // __PLUSPLAYER_ESPLUSPLAYER_CAPI_MATROSKA_COLOR_H__\r
+/**
+ * @file
+ * @brief          The matroska color info
+ * @interfacetype  Platform
+ * @privlevel      None-privilege
+ * @privilege      None
+ * @product        TV, AV, B2B
+ * @version        2.0
+ * @SDK_Support    N
+ * @see            plusplayer::EsPlusPlayer class
+ *
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
+ * PROPRIETARY/CONFIDENTIAL
+ * This software is the confidential and proprietary
+ * information of SAMSUNG ELECTRONICS ("Confidential Information"). You shall
+ * not disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into with
+ * SAMSUNG ELECTRONICS. SAMSUNG make no representations or warranties about the
+ * suitability of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a
+ * particular purpose, or non-infringement. SAMSUNG shall not be liable for any
+ * damages suffered by licensee as a result of using, modifying or distributing
+ * this software or its derivatives.
+ */
+
+#ifndef __PLUSPLAYER_ESPLUSPLAYER_CAPI_MATROSKA_COLOR_H__
+#define __PLUSPLAYER_ESPLUSPLAYER_CAPI_MATROSKA_COLOR_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <stdint.h>
+
+/**
+ * @brief   Structure of matroska matering metadata
+ */
+typedef struct {
+  /**
+   * @description    Red X chromaticity coordinate as defined by CIE 1931.
+   */
+  double primary_r_chromaticity_x;
+  /**
+   * @description    Red Y chromaticity coordinate as defined by CIE 1931.
+   */
+  double primary_r_chromaticity_y;
+  /**
+   * @description    Green X chromaticity coordinate as defined by CIE 1931.
+   */
+  double primary_g_chromaticity_x;
+  /**
+   * @description    Green Y chromaticity coordinate as defined by CIE 1931.
+   */
+  double primary_g_chromaticity_y;
+  /**
+   * @description    Blue X chromaticity coordinate as defined by CIE 1931.
+   */
+  double primary_b_chromaticity_x;
+  /**
+   * @description    Blue Y chromaticity coordinate as defined by CIE 1931.
+   */
+  double primary_b_chromaticity_y;
+  /**
+   * @description    White X chromaticity coordinate as defined by CIE 1931.
+   */
+  double white_point_chromaticity_x;
+  /**
+   * @description    White Y chromaticity coordinate as defined by CIE 1931.
+   */
+  double white_point_chromaticity_y;
+  /**
+   * @description    Maximum luminance. Represented in candelas per square meter
+   * (cd/m²).
+   */
+  double luminance_max;
+  /**
+   * @description    Mininum luminance. Represented in candelas per square meter
+   * (cd/m²).
+   */
+  double luminance_min;
+} esplusplayer_matroska_mastering_metadata;
+
+/**
+ * @brief   Structure of matroska color information
+ */
+typedef struct {
+  /**
+   * @description   The Matrix Coefficients of the video used to derive luma and
+   * chroma values from red, green, and blue color primaries. For clarity, the
+   * value and meanings for MatrixCoefficients are adopted from Table 4 of
+   * ISO/IEC 23001-8:2013/DCOR1.
+   */
+  uint32_t matrix_coefficients;
+  /**
+   * @description   Number of decoded bits per channel. A value of 0 indicates
+   * that the BitsPerChannel is unspecified.
+   */
+  uint32_t bits_per_channel;
+  /**
+   * @description   The amount of pixels to remove in the Cr and Cb channels for
+   * every pixel not removed horizontally.
+   */
+  uint32_t chroma_subsampling_horizontal;
+  /**
+   * @description   The amount of pixels to remove in the Cr and Cb channels for
+   * every pixel not removed vertically.
+   */
+  uint32_t chroma_subsampling_vertical;
+  /**
+   * @description    The amount of pixels to remove in the Cb channel for every
+   * pixel not removed horizontally. This is additive with
+   * chroma_subsampling_horizontal.
+   */
+  uint32_t cb_subsampling_horizontal;
+  /**
+   * @description    The amount of pixels to remove in the Cb channel for every
+   * pixel not removed vertically. This is additive with
+   * chroma_subsampling_vertical.
+   */
+  uint32_t cb_subsampling_vertical;
+  /**
+   * @description    How chroma is subsampled horizontally.
+   */
+  uint32_t chroma_siting_horizontal;
+  /**
+   * @description    How chroma is subsampled vertically.
+   */
+  uint32_t chroma_siting_vertical;
+  /**
+   * @description    Clipping of the color ranges.
+   */
+  uint32_t range;
+  /**
+   * @description    The transfer characteristics of the video. For clarity, the
+   * value and meanings for transfer_characteristics 1-15 are adopted from Table
+   * 3 of ISO/IEC 23001-8:2013/DCOR1. transfer_characteristics 16-18 are
+   * proposed values.
+   */
+  uint32_t transfer_characteristics;
+  /**
+   * @description    The colour primaries of the video. For clarity, the value
+   * and meanings for primaries are adopted from Table 2 of ISO/IEC
+   * 23001-8:2013/DCOR1.
+   */
+  uint32_t primaries;
+  /**
+   * @description    Maximum brightness of a single pixel (Maximum Content Light
+   * Level) in candelas per square meter (cd/m²).
+   */
+  uint32_t max_cll;
+  /**
+   * @description    Maximum brightness of a single full frame (Maximum
+   * Frame-Average Light Level) in candelas per square meter (cd/m²).
+   */
+  uint32_t max_fall;
+  /**
+   * @description    SMPTE 2086 mastering data.
+   */
+  esplusplayer_matroska_mastering_metadata metadata;
+  /**
+   * @description    flag to check if this file is hdr10+ (cd/m²).
+   */
+  uint32_t isHDR10p;
+} esplusplayer_matroska_color;
+
+#ifdef __cplusplus
+}  // extern "C"
+#endif
+
+#endif  // __PLUSPLAYER_ESPLUSPLAYER_CAPI_MATROSKA_COLOR_H__
index 95048d7..2c2d1c5 100755 (executable)
@@ -34,7 +34,7 @@ extern "C" {
 /**
  * @brief  Enumerations for es player state.
  */
-enum esplusplayer_state {
+typedef enum {
   ESPLUSPLAYER_STATE_NONE,  /**<Player is created, but not opened*/
   ESPLUSPLAYER_STATE_IDLE,  /**<Player is opened, but not prepared or player is
                                stopped*/
@@ -42,7 +42,7 @@ enum esplusplayer_state {
   ESPLUSPLAYER_STATE_PLAYING, /**<Player is playing media*/
   ESPLUSPLAYER_STATE_PAUSED,    /**<Player is playing media*/
   ESPLUSPLAYER_STATE_MAX
-};
+} esplusplayer_state;
 
 #ifdef __cplusplus
 }  // extern "C"
index 9659811..902632b 100644 (file)
@@ -36,16 +36,16 @@ extern "C" {
 /**
  * @brief  Enumerations for the stream type
  */
-enum esplusplayer_stream_type {
+typedef enum {
   ESPLUSPLAYER_STREAM_TYPE_AUDIO,
   ESPLUSPLAYER_STREAM_TYPE_VIDEO,
   ESPLUSPLAYER_STREAM_TYPE_MAX
-};
+} esplusplayer_stream_type;
 
 /**
  * @brief   Enumerations for audio mime type
  */
-enum esplusplayer_audio_mime_type {
+typedef enum {
   ESPLUSPLAYER_AUDIO_MIME_TYPE_UNKNOWN,
   ESPLUSPLAYER_AUDIO_MIME_TYPE_AAC,
   ESPLUSPLAYER_AUDIO_MIME_TYPE_MP2,
@@ -67,12 +67,12 @@ enum esplusplayer_audio_mime_type {
   ESPLUSPLAYER_AUDIO_MIME_TYPE_PCM_U32LE,
   ESPLUSPLAYER_AUDIO_MIME_TYPE_PCM_U32BE,
   ESPLUSPLAYER_AUDIO_MIME_TYPE_G711_MULAW
-};
+} esplusplayer_audio_mime_type;
 
 /**
  * @brief   Enumerations for video mime type
  */
-enum esplusplayer_video_mime_type {
+typedef enum {
   ESPLUSPLAYER_VIDEO_MIME_TYPE_UNKNOWN,
   ESPLUSPLAYER_VIDEO_MIME_TYPE_H263,
   ESPLUSPLAYER_VIDEO_MIME_TYPE_H264,
@@ -85,7 +85,7 @@ enum esplusplayer_video_mime_type {
   ESPLUSPLAYER_VIDEO_MIME_TYPE_WMV3,
   ESPLUSPLAYER_VIDEO_MIME_TYPE_AV1,
   ESPLUSPLAYER_VIDEO_MIME_TYPE_MJPEG
-};
+} esplusplayer_video_mime_type;
 
 /**
  * @brief   Audio stream information structure
index 953bf94..0cf9d42 100755 (executable)
@@ -34,11 +34,11 @@ extern "C" {
 /**
  * @brief  Enumerations for the type of buffers submitted
  */
-enum esplusplayer_submit_data_type {
+typedef enum {
   ESPLUSPLAYER_SUBMIT_DATA_TYPE_CLEAN_DATA,
   ESPLUSPLAYER_SUBMIT_DATA_TYPE_ENCRYPTED_DATA,
 //  ESPLUSPLAYER_SUBMIT_DATA_TYPE_TRUSTZONE_DATA,
-};
+} esplusplayer_submit_data_type;
 
 #ifdef __cplusplus
 }  // extern "C"
index 7636f5b..cc28c4c 100755 (executable)
@@ -34,13 +34,13 @@ extern "C" {
 /**
  * @brief  Enumerations for the buffer status
  */
-enum esplusplayer_submit_status {
+typedef enum {
   ESPLUSPLAYER_SUBMIT_STATUS_NOT_PREPARED,
   ESPLUSPLAYER_SUBMIT_STATUS_INVALID_PACKET,
   ESPLUSPLAYER_SUBMIT_STATUS_OUT_OF_MEMORY,
   ESPLUSPLAYER_SUBMIT_STATUS_FULL,
   ESPLUSPLAYER_SUBMIT_STATUS_SUCCESS
-};
+} esplusplayer_submit_status;
 
 #ifdef __cplusplus
 }  // extern "C"
index 98256d1..1d1e85e 100644 (file)
@@ -2,7 +2,7 @@
 %bcond_without ESPLUSPLAYER_UT
 Name:       esplusplayer
 Summary:    new multimedia streaming player
-Version:    0.0.2
+Version:    0.0.3
 Release:    0
 Group:      Multimedia/Libraries
 License:    Apache-2.0