From 4efeb31d5b4921d7e851c256009486ad86bc70e2 Mon Sep 17 00:00:00 2001
From: zengh <123456>
Date: Tue, 21 Jun 2022 09:14:57 +0800
Subject: [PATCH] 地址替换

---
 nativePlugins/AR-RtcModule/ios/ARtcKit.framework/Headers/IArMediaPlayer.h |  378 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 378 insertions(+), 0 deletions(-)

diff --git a/nativePlugins/AR-RtcModule/ios/ARtcKit.framework/Headers/IArMediaPlayer.h b/nativePlugins/AR-RtcModule/ios/ARtcKit.framework/Headers/IArMediaPlayer.h
new file mode 100644
index 0000000..afc93f7
--- /dev/null
+++ b/nativePlugins/AR-RtcModule/ios/ARtcKit.framework/Headers/IArMediaPlayer.h
@@ -0,0 +1,378 @@
+//
+//  anyrtc Rtc Engine SDK
+//
+//  Copyright (c) 2019 anyrtc.io. All rights reserved.
+//
+
+#ifndef __I_AR_MEDIA_PLAYER_H__
+#define __I_AR_MEDIA_PLAYER_H__
+
+#include "ArMediaBase.h"
+
+#ifndef AR
+#define AR ar::rtc
+#endif
+
+// external key
+/**
+ * set analyze duration for real time stream
+ * @example "setPlayerOption(KEY_PLAYER_REAL_TIME_STREAM_ANALYZE_DURATION,1000000)"
+ */
+#define KEY_PLAYER_REAL_TIME_STREAM_ANALYZE_DURATION    "analyzeduration"
+
+/**
+ * set the player disable to play audio
+ * @example  "setPlayerOption(KEY_PLAYER_DISABLE_AUDIO,0)"
+ */
+#define KEY_PLAYER_DISABLE_AUDIO                  "audio_disable"
+
+/**
+ * set the player disable to play video
+ * @example  "setPlayerOption(KEY_PLAYER_DISABLE_VIDEO,0)"
+ */
+#define KEY_PLAYER_DISABLE_VIDEO                  "video_disable"
+
+namespace ar {
+namespace rtc {
+
+/** Definition of MediaPlayerContext.
+ */
+struct MediaPlayerContext {
+  /** User Context, i.e., activity context in Android.
+   */
+  void* context;
+
+  MediaPlayerContext()
+      : context(nullptr) {}
+};
+
+class IMediaPlayerObserver;
+
+/**
+ * @brief Player interface
+ *
+ */
+class IMediaPlayer {
+ public:
+
+  virtual int initialize(const MediaPlayerContext& context) = 0;
+
+  /**
+   * @brief Open media file
+   *
+   * @param src Media path, local path or network path
+   * @param startPos Set the starting position for playback, in seconds
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int open(const char* src, int64_t startPos) = 0;
+
+  /**
+   * @brief Play
+   *
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int play() = 0;
+
+  /**
+   * @brief pause
+   *
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int pause() = 0;
+
+  /**
+   * @brief stop
+   *
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int stop() = 0;
+
+  /**
+   * @brief Play to a specified position
+   *
+   * @param pos The position to play, in seconds
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int seek(int64_t pos) = 0;
+
+  /**
+   * @brief Turn mute on or off
+   *
+   * @param mute Whether to mute on
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int mute(bool mute) = 0;
+
+  /**
+   * @brief Get mute state
+   *
+   * @param[out] mute Whether is mute on
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int getMute(bool& mute) = 0;
+
+  /**
+   * @brief Adjust playback volume
+   *
+   * @param volume The volume value to be adjusted
+   * The volume can be adjusted from 0 to 400:
+   * 0: mute;
+   * 100: original volume;
+   * 400: Up to 4 times the original volume (with built-in overflow protection).
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int adjustPlayoutVolume(int volume) = 0;
+
+  /**
+   * @brief Get the current playback volume
+   *
+   * @param[out] volume
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int getPlayoutVolume(int& volume) = 0;
+
+  /**
+   * @brief Get the current playback progress
+   *
+   * @param[out] pos Progress in seconds
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int getPlayPosition(int64_t& pos) = 0;
+
+  /**
+   * @brief Get the current playback progress
+   *
+   * @param[out] pos Progress in millisecond
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int getPlayPositionInMillisecond(int64_t& positionInMs) = 0;
+
+  /**
+   * @brief Get media duration
+   *
+   * @param[out] duration Duration in seconds
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int getDuration(int64_t& duration) = 0;
+
+  /**
+   * @brief Get player state
+   *
+   * @return PLAYER_STATE
+   */
+  virtual ar::media::MEDIA_PLAYER_STATE getState() = 0;
+
+  /**
+   * @brief Get the streams info count in the media
+   *
+   * @param[out] count
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int getStreamCount(int& count) = 0;
+
+  /**
+   * @brief Get the streams info by index
+   *
+   * @param[in] index, index
+   * @param[out] info, stream info for return
+   */
+  virtual int getStreamInfo(int index, ar::media::MediaStreamInfo* info) = 0;
+
+  /**
+   * @brief Set video rendering view
+   *
+   * @param view view object, windows platform is HWND
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int setView(ar::media::base::view_t view) = 0;
+
+  /**
+   * @brief Set video display mode
+   *
+   * @param renderMode Video display mode
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int setRenderMode(ar::media::base::RENDER_MODE_TYPE renderMode) = 0;
+
+  /**
+   * @brief Register the player observer
+   *
+   * @param observer observer object
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int registerPlayerObserver(IMediaPlayerObserver* observer) = 0;
+
+  /**
+   * @brief Unregister the player observer
+   *
+   * @param observer observer object
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int unregisterPlayerObserver(IMediaPlayerObserver* observer) = 0;
+
+  /**
+   * @brief Register the player video observer
+   *
+   * @param observer observer object
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int registerVideoFrameObserver(ar::media::base::IVideoFrameObserver* observer) = 0;
+
+  /**
+   * @brief UnRegister the player video observer
+   *
+   * @param observer observer object
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int unregisterVideoFrameObserver(ar::media::base::IVideoFrameObserver* observer) = 0;
+
+  /**
+   * @brief register the player audio observer
+   *
+   * @param observer observer object
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int registerAudioFrameObserver(ar::media::base::IAudioFrameObserver* observer) = 0;
+
+  /**
+   * @brief Unregister the player audio observer
+   *
+   * @param observer observer object
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int unregisterAudioFrameObserver(ar::media::base::IAudioFrameObserver* observer) = 0;
+
+  /**
+   * @brief change log file position
+   *
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int setLogFile(const char* filePath) = 0;
+
+  /**
+   * Sets the output log level of the SDK.
+   *
+   * You can use one or a combination of the filters. The log level follows the
+   * sequence of `OFF`, `CRITICAL`, `ERROR`, `WARNING`, `INFO`, and `DEBUG`. Choose a level
+   * and you will see logs preceding that level. For example, if you set the log level to
+   * `WARNING`, you see the logs within levels `CRITICAL`, `ERROR`, and `WARNING`.
+   *
+   * @param filter Sets the log filter level:
+   * - LOG_FILTER_DEBUG (0x80f): Output all API logs. Set your log filter as DEBUG
+   * if you want to get the most complete log file.
+   * - LOG_FILTER_INFO (0x0f): Output logs of the CRITICAL, ERROR, WARNING, and INFO
+   * level. We recommend setting your log filter as this level.
+   * - LOG_FILTER_WARNING (0x0e): Output logs of the CRITICAL, ERROR, and WARNING level.
+   * - LOG_FILTER_ERROR (0x0c): Output logs of the CRITICAL and ERROR level.
+   * - LOG_FILTER_CRITICAL (0x08): Output logs of the CRITICAL level.
+   * - LOG_FILTER_OFF (0): Do not output any log.
+   *
+   * @return
+   * - 0: Success.
+   * - < 0: Failure.
+   */
+  virtual int setLogFilter(unsigned int filter) = 0;
+
+   /**
+   * @brief modify player option before play,
+   * @param [in] key
+   *        the option key name
+   * @param [in] value
+   *        the option value
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int setPlayerOption(const char *key ,int value) = 0;
+
+  /**
+   * @brief change playback speed
+   *
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int changePlaybackSpeed(const ar::media::MEDIA_PLAYER_PLAY_SPEED speed) = 0;
+
+  /**
+   * @brief change audio track
+   *
+   * @return int <= 0 On behalf of an error, the value corresponds to one of PLAYER_ERROR
+   */
+  virtual int selectAudioTrack(int index) = 0;
+
+  /**
+   * @brief release IMediaPlayer object.
+   *
+   */
+  virtual void release(bool sync = true) = 0;
+
+  virtual ~IMediaPlayer() {}
+};
+
+class IMediaPlayerObserver {
+ public:
+  /**
+   * @brief Triggered when the player state changes
+   *
+   * @param state New player state
+   * @param ec Player error message
+   */
+  virtual void onPlayerStateChanged(ar::media::MEDIA_PLAYER_STATE state,
+                                    ar::media::MEDIA_PLAYER_ERROR ec) = 0;
+
+  /**
+   * @brief Triggered when the player progress changes, once every 1 second
+   *
+   * @param position Current playback progress, in seconds
+   */
+  virtual void onPositionChanged(const int64_t position) = 0;
+
+  /**
+   * @brief Triggered when the player have some event
+   *
+   * @param event
+   */
+  virtual void onPlayerEvent(ar::media::MEDIA_PLAYER_EVENT event) = 0;
+
+  /**
+   * @brief Triggered when metadata is obtained
+   *
+   * @param type Metadata type
+   * @param data data
+   * @param length  data length
+   */
+  virtual void onMetadata(ar::media::MEDIA_PLAYER_METADATA_TYPE type, const uint8_t* data,
+                                  uint32_t length) = 0;
+
+  virtual ~IMediaPlayerObserver() {}
+};
+
+}  // namespace rtc
+}  // namespace ar
+
+
+#if defined(_WIN32)
+#ifndef WIN32_LEAN_AND_MEAN
+#define WIN32_LEAN_AND_MEAN
+#endif
+#include <windows.h>
+#define AR_PLAYER_API extern "C" __declspec(dllexport)
+#define AR_PLAYER_CALL
+#elif defined(__APPLE__)
+#include <TargetConditionals.h>
+#define AR_PLAYER_API __attribute__((visibility("default"))) extern "C"
+#define AR_PLAYER_CALL
+#elif defined(__ANDROID__) || defined(__linux__)
+#define AR_PLAYER_API extern "C" __attribute__((visibility("default")))
+#define AR_PLAYER_CALL
+#else
+#define AR_PLAYER_API extern "C"
+#define AR_PLAYER_CALL
+#endif
+
+/**
+ * Creates an anyrtc media player object and returns the pointer.
+ * @return
+ * - The pointer to \ref ar::rtc::IMediaPlayer "IMediaPlayer", if the method call succeeds.
+ * - The empty pointer NULL, if the method call fails.
+ */
+AR_PLAYER_API ar::rtc::IMediaPlayer* AR_PLAYER_CALL createArMediaPlayer();
+
+#endif  // __I_AR_MEDIA_PLAYER_H__

--
Gitblit v1.9.3