Skip to content

OcaMediaRecorderPlayer#

This document describes the controller implementation of OcaMediaRecorderPlayer. This class is documented in the AES70 standard as:

Media volume recorder/player that shall provide streaming data access into and out of OcaDataset objects whose Datasets are media files.


Overview#

Class Declaration#

namespace aes70::controller
{
  class OcaMediaRecorderPlayer : public OcaDatasetWorker
  {
  public:
    OcaMediaRecorderPlayer(std::shared_ptr<connection> connection,
            uin32_t object_number);
    OcaMediaRecorderPlayer(const OcaMediaRecorderPlayer &o);

    // Control Methods
    // Calls Open and calls on_result or on_failure
    void Open(OcaONo DatasetONo, OcaMediaAccessMode AccessMode, OcaLockState LockState, auto on_result, failure_callback on_failure);
    // Calls Open and does not wait for the response
    void Open(OcaONo DatasetONo, OcaMediaAccessMode AccessMode, OcaLockState LockState);
    // Calls Close and calls on_result or on_failure
    void Close(auto on_result, failure_callback on_failure);
    // Calls Record and calls on_result or on_failure
    void Record(auto on_result, failure_callback on_failure);
    // Calls Play and calls on_result or on_failure
    void Play(auto on_result, failure_callback on_failure);
    // Calls Stop and calls on_result or on_failure
    void Stop(auto on_result, failure_callback on_failure);
    // Calls Reset and calls on_result or on_failure
    void Reset(auto on_result, failure_callback on_failure);
    // Calls GetState and calls on_result or on_failure
    void GetState(auto on_result, failure_callback on_failure);
    // Calls GetTrackCount and calls on_result or on_failure
    void GetTrackCount(auto on_result, failure_callback on_failure);
    // Calls SetTrackCount and calls on_result or on_failure
    void SetTrackCount(OcaUint16 TrackCount, auto on_result, failure_callback on_failure);
    // Calls SetTrackCount and does not wait for the response
    void SetTrackCount(OcaUint16 TrackCount);
    // Calls GetTrackFunctions and calls on_result or on_failure
    void GetTrackFunctions(auto on_result, failure_callback on_failure);
    // Calls SetTrackFunctions and calls on_result or on_failure
    void SetTrackFunctions(OcaList<OcaMediaTrackFunction> Functions, auto on_result, failure_callback on_failure);
    // Calls SetTrackFunctions and does not wait for the response
    void SetTrackFunctions(OcaList<OcaMediaTrackFunction> Functions);
    // Calls GetPlayOption and calls on_result or on_failure
    void GetPlayOption(auto on_result, failure_callback on_failure);
    // Calls SetPlayOption and calls on_result or on_failure
    void SetPlayOption(OcaMediaPlayOption Option, auto on_result, failure_callback on_failure);
    // Calls SetPlayOption and does not wait for the response
    void SetPlayOption(OcaMediaPlayOption Option);
    // Calls GetPosition and calls on_result or on_failure
    void GetPosition(auto on_result, failure_callback on_failure);
    // Calls SetPosition and calls on_result or on_failure
    void SetPosition(OcaMediaVolumePosition Position, auto on_result, failure_callback on_failure);
    // Calls SetPosition and does not wait for the response
    void SetPosition(OcaMediaVolumePosition Position);
    // Calls GetWindowRange and calls on_result or on_failure
    void GetWindowRange(auto on_result, failure_callback on_failure);
    // Calls SetWindowRange and calls on_result or on_failure
    void SetWindowRange(OcaMediaVolumePosition FirstPosition, OcaMediaVolumePosition LastPosition, auto on_result, failure_callback on_failure);
    // Calls SetWindowRange and does not wait for the response
    void SetWindowRange(OcaMediaVolumePosition FirstPosition, OcaMediaVolumePosition LastPosition);

    // Observing Properties
    subscription observeState(auto callback, failure_callback on_failure);
    subscription observeTrackCount(auto callback, failure_callback on_failure);
    subscription observeTrackFunctions(auto callback, failure_callback on_failure);
    subscription observePlayOption(auto callback, failure_callback on_failure);
    subscription observeWindowStart(auto callback, failure_callback on_failure);
    subscription observeWindowEnd(auto callback, failure_callback on_failure);

    // Property Changed Subscriptions
    subscription OnStateChanged(auto callback, failure_callback on_failure);
    subscription OnTrackCountChanged(auto callback, failure_callback on_failure);
    subscription OnTrackFunctionsChanged(auto callback, failure_callback on_failure);
    subscription OnPlayOptionChanged(auto callback, failure_callback on_failure);
    subscription OnWindowStartChanged(auto callback, failure_callback on_failure);
    subscription OnWindowEndChanged(auto callback, failure_callback on_failure);
  };
}

Methods#

Open#

void Open(OcaONo DatasetONo, OcaMediaAccessMode AccessMode, OcaLockState LockState, auto on_result, failure_callback on_failure)

Calls the method Open in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaONo DatasetONo
  • OcaMediaAccessMode AccessMode
  • OcaLockState LockState
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

Close#

void Close(auto on_result, failure_callback on_failure)

Calls the method Close in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

Record#

void Record(auto on_result, failure_callback on_failure)

Calls the method Record in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

Play#

void Play(auto on_result, failure_callback on_failure)

Calls the method Play in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

Stop#

void Stop(auto on_result, failure_callback on_failure)

Calls the method Stop in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

Reset#

void Reset(auto on_result, failure_callback on_failure)

Calls the method Reset in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

GetState#

void GetState(auto on_result, failure_callback on_failure)

Calls the method GetState in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaMediaRecorderPlayerState State
  • failure_callback on_failure: A callback which is called on error.

GetTrackCount#

void GetTrackCount(auto on_result, failure_callback on_failure)

Calls the method GetTrackCount in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaUint16 TrackCount
  • failure_callback on_failure: A callback which is called on error.

SetTrackCount#

void SetTrackCount(OcaUint16 TrackCount, auto on_result, failure_callback on_failure)

Calls the method SetTrackCount in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaUint16 TrackCount
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

GetTrackFunctions#

void GetTrackFunctions(auto on_result, failure_callback on_failure)

Calls the method GetTrackFunctions in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaList<OcaMediaTrackFunction> Functions
  • failure_callback on_failure: A callback which is called on error.

SetTrackFunctions#

void SetTrackFunctions(OcaList<OcaMediaTrackFunction> Functions, auto on_result, failure_callback on_failure)

Calls the method SetTrackFunctions in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaList<OcaMediaTrackFunction> Functions
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

GetPlayOption#

void GetPlayOption(auto on_result, failure_callback on_failure)

Calls the method GetPlayOption in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaMediaPlayOption Option
  • failure_callback on_failure: A callback which is called on error.

SetPlayOption#

void SetPlayOption(OcaMediaPlayOption Option, auto on_result, failure_callback on_failure)

Calls the method SetPlayOption in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaMediaPlayOption Option
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

GetPosition#

void GetPosition(auto on_result, failure_callback on_failure)

Calls the method GetPosition in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaMediaVolumePosition Position
  • failure_callback on_failure: A callback which is called on error.

SetPosition#

void SetPosition(OcaMediaVolumePosition Position, auto on_result, failure_callback on_failure)

Calls the method SetPosition in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaMediaVolumePosition Position
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

GetWindowRange#

void GetWindowRange(auto on_result, failure_callback on_failure)

Calls the method GetWindowRange in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaMediaVolumePosition FirstPosition
    • OcaMediaVolumePosition LastPosition
  • failure_callback on_failure: A callback which is called on error.

SetWindowRange#

void SetWindowRange(OcaMediaVolumePosition FirstPosition, OcaMediaVolumePosition LastPosition, auto on_result, failure_callback on_failure)

Calls the method SetWindowRange in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaMediaVolumePosition FirstPosition
  • OcaMediaVolumePosition LastPosition
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

observeState#

subscription observeState(auto callback, failure_callback on_failure)

Fetches the remote property State and subscribes for modifications. The callback is called with the initial values of State and whenever it changes.

Parameters:#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaMediaRecorderPlayerState State
  • failure_callback on_failure: A callback which is called on error.

observeTrackCount#

subscription observeTrackCount(auto callback, failure_callback on_failure)

Fetches the remote property TrackCount and subscribes for modifications. The callback is called with the initial values of TrackCount and whenever it changes.

Parameters:#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaUint16 TrackCount
  • failure_callback on_failure: A callback which is called on error.

observeTrackFunctions#

subscription observeTrackFunctions(auto callback, failure_callback on_failure)

Fetches the remote property TrackFunctions and subscribes for modifications. The callback is called with the initial values of TrackFunctions and whenever it changes.

Parameters:#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaList<OcaMediaTrackFunction> TrackFunctions
  • failure_callback on_failure: A callback which is called on error.

observePlayOption#

subscription observePlayOption(auto callback, failure_callback on_failure)

Fetches the remote property PlayOption and subscribes for modifications. The callback is called with the initial values of PlayOption and whenever it changes.

Parameters:#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaMediaPlayOption PlayOption
  • failure_callback on_failure: A callback which is called on error.

observeWindowStart#

subscription observeWindowStart(auto callback, failure_callback on_failure)

Fetches the remote property WindowStart and subscribes for modifications. The callback is called with the initial values of WindowStart and whenever it changes.

Parameters:#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaMediaVolumePosition WindowStart
  • failure_callback on_failure: A callback which is called on error.

observeWindowEnd#

subscription observeWindowEnd(auto callback, failure_callback on_failure)

Fetches the remote property WindowEnd and subscribes for modifications. The callback is called with the initial values of WindowEnd and whenever it changes.

Parameters:#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaMediaVolumePosition WindowEnd
  • failure_callback on_failure: A callback which is called on error.

OnStateChanged#

subscription OnStateChanged(auto callback, failure_callback on_failure)

Parameters#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaMediaRecorderPlayerState State
  • failure_callback on_failure: A callback which is called on error.

OnTrackCountChanged#

subscription OnTrackCountChanged(auto callback, failure_callback on_failure)

Parameters#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaUint16 TrackCount
  • failure_callback on_failure: A callback which is called on error.

OnTrackFunctionsChanged#

subscription OnTrackFunctionsChanged(auto callback, failure_callback on_failure)

Parameters#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaList<OcaMediaTrackFunction> TrackFunctions
  • failure_callback on_failure: A callback which is called on error.

OnPlayOptionChanged#

subscription OnPlayOptionChanged(auto callback, failure_callback on_failure)

Parameters#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaMediaPlayOption PlayOption
  • failure_callback on_failure: A callback which is called on error.

OnWindowStartChanged#

subscription OnWindowStartChanged(auto callback, failure_callback on_failure)

Parameters#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaMediaVolumePosition WindowStart
  • failure_callback on_failure: A callback which is called on error.

OnWindowEndChanged#

subscription OnWindowEndChanged(auto callback, failure_callback on_failure)

Parameters#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaMediaVolumePosition WindowEnd
  • failure_callback on_failure: A callback which is called on error.