Merge branch 'main' into ci/gilbok-lee/update_public
[platform/core/multimedia/esplusplayer.git] / src / esplusplayer / include_internal / esplayer / esplayer.h
index 67e7c88..2deec7d 100644 (file)
@@ -5,6 +5,8 @@
 #ifndef __ESPLUSPLAYER_SRC_ESPLAYER_ESPLAYER__H__
 #define __ESPLUSPLAYER_SRC_ESPLAYER_ESPLAYER__H__
 
+#include <IEME.h>
+
 #include <boost/core/noncopyable.hpp>
 #include <future>
 #include <list>
@@ -23,7 +25,7 @@
 #ifdef USE_MIXER
 #include "mixer/mixerticket.h"
 #include "mixer/mixerticket_eventlistener.h"
-#endif // USE_MIXER
+#endif  // USE_MIXER
 #include "esplayer/espacket_logger.h"
 #include "esplayer/message.hpp"
 #include "esplayer/state_manager.hpp"
@@ -71,7 +73,7 @@ class EsPlayer : public EsPlusPlayer {
   bool SetDisplay(const DisplayType& type, void* obj) override;
 #ifdef USE_MIXER
   bool SetDisplay(const DisplayType& type, MixerTicket* handle) override;
-#endif // USE_MIXER
+#endif  // USE_MIXER
   bool SetDisplay(const DisplayType& type, void* ecore_wl2_window, const int x,
                   const int y, const int w, const int h) override;
   bool SetDisplaySubsurface(const DisplayType& type, void* ecore_wl2_subsurface,
@@ -158,6 +160,10 @@ class EsPlayer : public EsPlusPlayer {
   bool GetVideoStreamRotationInfo(VideoRotation* rotation) override;
   bool SetSimpleMixOutBufferLevel(
       const PlayerSimpleMixOutBufferLevel level) override;
+#ifdef TIZEN_FEATURE_PUBLIC
+  bool EnableVideoHole(bool value) override;
+  bool SetSoundStreamInfo(const sound_stream_info_h stream_info) override;
+#endif  // TIZEN_FEATURE_PUBLIC
 
  private:
   using SubmitPacketOperator =
@@ -221,7 +227,7 @@ class EsPlayer : public EsPlusPlayer {
 #endif
 #ifdef USE_MIXER
   bool PrepareVideoMixingMode_(std::vector<Track>* tracks);
-#endif // USE_MIXER
+#endif  // USE_MIXER
   void InitValuesFromIni_();
 
  private:  // private types
@@ -253,7 +259,7 @@ class EsPlayer : public EsPlusPlayer {
 #ifdef USE_MIXER
     void OnMediaPacketVideoRawDecoded(
         const DecodedVideoRawModePacket& packet) override;
-#endif // USE_MIXER
+#endif  // USE_MIXER
 
    private:
     void ReadyToPrepare_(const TrackType& type);
@@ -283,11 +289,7 @@ class EsPlayer : public EsPlusPlayer {
    private:
     EsPlayer* handler_{nullptr};
   };
-#endif // USE_MIXER
-
-#ifdef TIZEN_FEATURE_PUBLIC
-  bool EnableVideoHole(bool value) override;
-#endif
+#endif  // USE_MIXER
 
  private:
   std::vector<Track> track_;
@@ -301,6 +303,8 @@ class EsPlayer : public EsPlusPlayer {
   EsStateManager state_manager_;
 
   SubmitDataType submit_data_type_ = SubmitDataType::kCleanData;
+  std::string key_system_;
+  bool key_system_acquired_ = false;
   drm::Property drm_property_;
   std::uint32_t low_latency_mode_ = 0;
   std::uint32_t video_frame_peek_mode_ = 0;
@@ -329,7 +333,7 @@ class EsPlayer : public EsPlusPlayer {
       new TrackRendererEventListener(this)};
 #ifdef USE_MIXER
   std::unique_ptr<MixerListener> mixer_event_listener_{new MixerListener(this)};
-#endif // USE_MIXER
+#endif  // USE_MIXER
   std::unique_ptr<TrackRendererAdapter> trackrenderer_;
   std::future<void> preparetask_;
   PlayerAppInfo app_info_;
@@ -350,7 +354,7 @@ class EsPlayer : public EsPlusPlayer {
   std::mutex audio_focus_m_;
   bool enable_audio_pipeline_handle_ = true;
   bool enable_rsc_alloc_handle_ = true;
-#endif // USE_MIXER
+#endif  // USE_MIXER
   DecodedVideoFrameBufferType vidoe_frame_buffer_type_ =
       DecodedVideoFrameBufferType::kNone;
   // for debugging