gpg::VideoManager

#include <video_manager.h>

取得及設定各種影片相關資料。

摘要

公開類型

CaptureCapabilitiesCallback typedef
std::function< void(const GetCaptureCapabilitiesResponse &)>
定義接收 GetCaptureCapabilitiesResponse 的回呼類型。
CaptureStateCallback typedef
std::function< void(const GetCaptureStateResponse &)>
定義接收 GetCaptureStateResponse 的回呼類型。
IsCaptureAvailableCallback typedef
std::function< void(const IsCaptureAvailableResponse &)>
定義接收 IsCaptureAvailableResponse 的回呼類型。

公用函式

GetCaptureCapabilities(CaptureCapabilitiesCallback callback)
void
以非同步方式擷取本服務的影片功能,包括支援的麥克風或前置鏡頭、服務是否可以寫入外部儲存空間,以及可用的拍攝模式和畫質等級。
GetCaptureCapabilitiesBlocking()
同步擷取本服務的視訊功能,包括是否支援麥克風或前置鏡頭、服務是否可以寫入外部儲存空間,以及可用的拍攝模式和畫質等級。
GetCaptureCapabilitiesBlocking(Timeout timeout)
同步擷取本服務的視訊功能,包括是否支援麥克風或前置鏡頭、服務是否可以寫入外部儲存空間,以及可用的拍攝模式和畫質等級。
GetCaptureState(CaptureStateCallback callback)
void
以非同步方式擷取擷取服務目前的狀態。
GetCaptureStateBlocking()
同步擷取擷取服務的目前狀態。
GetCaptureStateBlocking(Timeout timeout)
同步擷取擷取服務的目前狀態。
IsCaptureAvailable(VideoCaptureMode capture_mode, IsCaptureAvailableCallback callback)
void
如果擷取服務已在使用中,系統會以非同步方式擷取。
IsCaptureAvailableBlocking(VideoCaptureMode capture_mode)
如果擷取服務已在使用中,即同步擷取。
IsCaptureAvailableBlocking(Timeout timeout, VideoCaptureMode capture_mode)
如果擷取服務已在使用中,即同步擷取。
IsCaptureSupported()
bool
同步簡易檢查,以判斷裝置是否支援拍攝功能。
RegisterCaptureOverlayStateChangedListener(ICaptureOverlayStateListener *listener)
void
註冊事件監聽器,監聽 ShowCaptureOverlay 啟動的疊加層狀態變更。
RegisterCaptureOverlayStateChangedListener(CaptureOverlayStateListenerHelper helper)
void
註冊事件監聽器,監聽 ShowCaptureOverlay 啟動的疊加層狀態變更。
ShowCaptureOverlay()
void
啟動影像擷取重疊。
UnregisterCaptureOverlayStateChangedListener()
void
取消註冊此用戶端的疊加層狀態更新事件監聽器 (如果有的話)。

結構

gpg::VideoManager::GetCaptureCapabilitiesResponse

保留影片功能資料和回應狀態。

gpg::VideoManager::GetCaptureStateResponse

保留視訊擷取狀態及回應狀態。

gpg::VideoManager::IsCaptureAvailableResponse

保留是否可使用擷取模式 (指定 IsCaptureAvailable ),以及回應狀態。

公開類型

CaptureCapabilitiesCallback

std::function< void(const GetCaptureCapabilitiesResponse &)> CaptureCapabilitiesCallback

定義接收 GetCaptureCapabilitiesResponse 的回呼類型。

此回呼類型會提供給下方的 GetCaptureCapabilities(*) 函式。

CaptureStateCallback

std::function< void(const GetCaptureStateResponse &)> CaptureStateCallback

定義接收 GetCaptureStateResponse 的回呼類型。

此回呼類型會提供給下方的 GetCaptureState(*) 函式。

IsCaptureAvailableCallback

std::function< void(const IsCaptureAvailableResponse &)> IsCaptureAvailableCallback

定義接收 IsCaptureAvailableResponse 的回呼類型。

此回呼類型會提供給下方的 IsCaptureAvailable(*) 函式。

公用函式

GetCaptureCapabilities

void GetCaptureCapabilities(
  CaptureCapabilitiesCallback callback
)

以非同步方式擷取本服務的影片功能,包括支援的麥克風或前置鏡頭、服務是否可以寫入外部儲存空間,以及可用的拍攝模式和畫質等級。

GetCaptureCapabilitiesBlocking

GetCaptureCapabilitiesResponse GetCaptureCapabilitiesBlocking()

同步擷取本服務的視訊功能,包括是否支援麥克風或前置鏡頭、服務是否可以寫入外部儲存空間,以及可用的拍攝模式和畫質等級。

逾時時間預設為 10 年。

GetCaptureCapabilitiesBlocking

GetCaptureCapabilitiesResponse GetCaptureCapabilitiesBlocking(
  Timeout timeout
)

同步擷取本服務的視訊功能,包括是否支援麥克風或前置鏡頭、服務是否可以寫入外部儲存空間,以及可用的拍攝模式和畫質等級。

timeout 指定為任意數毫秒。

GetCaptureState

void GetCaptureState(
  CaptureStateCallback callback
)

以非同步方式擷取擷取服務目前的狀態。

如此會告知是否可見拍攝疊加層、是否主動使用重疊影像等。詳情請參閱 VideoCaptureState

GetCaptureStateBlocking

GetCaptureStateResponse GetCaptureStateBlocking()

同步擷取擷取服務的目前狀態。

如此會告知是否可見拍攝疊加層、是否主動使用重疊影像等。詳情請參閱 VideoCaptureState。逾時時間預設為 10 年。

GetCaptureStateBlocking

GetCaptureStateResponse GetCaptureStateBlocking(
  Timeout timeout
)

同步擷取擷取服務的目前狀態。

如此會告知是否可見拍攝疊加層、是否主動使用重疊影像等。詳情請參閱 VideoCaptureState。將 timeout 指定為任意數毫秒。

IsCaptureAvailable

void IsCaptureAvailable(
  VideoCaptureMode capture_mode,
  IsCaptureAvailableCallback callback
)

如果擷取服務已在使用中,系統會以非同步方式擷取。

使用此呼叫來檢查開始擷取 API 呼叫是否會傳回 ResponseStatus::ERROR_VIDEO_ALREADY_CAPTURING。如果傳回 true,就能放心開始拍攝。

請勿使用 IsCaptureSupportedGetCaptureCapabilities 呼叫來檢查系統是否支援擷取功能。

IsCaptureAvailableBlocking

IsCaptureAvailableResponse IsCaptureAvailableBlocking(
  VideoCaptureMode capture_mode
)

如果擷取服務已在使用中,即同步擷取。

使用此呼叫來檢查開始擷取 API 呼叫是否會傳回 ResponseStatus::ERROR_VIDEO_ALREADY_CAPTURING。如果傳回 true,就能放心開始拍攝。逾時時間預設為 10 年。

請勿使用 IsCaptureSupportedGetCaptureCapabilities 呼叫來檢查系統是否支援擷取功能。

IsCaptureAvailableBlocking

IsCaptureAvailableResponse IsCaptureAvailableBlocking(
  Timeout timeout,
  VideoCaptureMode capture_mode
)

如果擷取服務已在使用中,即同步擷取。

使用此呼叫來檢查開始擷取 API 呼叫是否會傳回 ResponseStatus::ERROR_VIDEO_ALREADY_CAPTURING。如果傳回 true,就能放心開始拍攝。將 timeout 指定為任意數毫秒。

請勿使用 IsCaptureSupportedGetCaptureCapabilities 呼叫來檢查系統是否支援擷取功能。

IsCaptureSupported

bool IsCaptureSupported()

同步簡易檢查,以判斷裝置是否支援拍攝功能。

RegisterCaptureOverlayStateChangedListener

void RegisterCaptureOverlayStateChangedListener(
  ICaptureOverlayStateListener *listener
)

註冊事件監聽器,監聽 ShowCaptureOverlay 啟動的疊加層狀態變更。

請注意,一次只能啟用一個疊加層狀態事件監聽器。如果先前已註冊另一個疊加層狀態事件監聽器,當呼叫此方法時,將以新的事件監聽器取代原始事件監聽器。

RegisterCaptureOverlayStateChangedListener

void RegisterCaptureOverlayStateChangedListener(
  CaptureOverlayStateListenerHelper helper
)

註冊事件監聽器,監聽 ShowCaptureOverlay 啟動的疊加層狀態變更。

取用 CaptureOverlayStateListenerHelper 來建立事件監聽器。

請注意,一次只能啟用一個疊加層狀態事件監聽器。如果先前已註冊另一個疊加層狀態事件監聽器,當呼叫此方法時,將以新的事件監聽器取代原始事件監聽器。

ShowCaptureOverlay

void ShowCaptureOverlay()

啟動影像擷取重疊。

UnregisterCaptureOverlayStateChangedListener

void UnregisterCaptureOverlayStateChangedListener()

取消註冊此用戶端的疊加層狀態更新事件監聽器 (如果有的話)。