nx_cloud_storage_sdk  1.0
Cloud Storage SDK
stream_reader.h
1 #pragma once
2 
3 #include <nx/sdk/cloud_storage/i_stream_reader.h>
4 #include <nx/sdk/helpers/ref_countable.h>
5 #include <nx/sdk/result.h>
6 
8 
9 class StreamReader: nx::sdk::RefCountable<nx::sdk::cloud_storage::IStreamReader>
10 {
11 public:
13  const std::string& deviceId,
14  int streamIndex,
15  int64_t startTimeMs,
16  int64_t durationMs);
17 
18  virtual nx::sdk::ErrorCode getNextData(
20 
21  virtual int64_t startTimeUs() const override;
22  virtual int64_t endTimeUs() const override;
23 
24  virtual nx::sdk::ErrorCode seek(
25  int64_t timestampUs, bool findKeyFrame, int64_t* selectedPositionUs) override;
26 
27 protected:
28  virtual void getOpaqueMetadata(
29  nx::sdk::Result<const nx::sdk::IString*>* outResult) const override;
30  virtual const nx::sdk::IList<nx::sdk::cloud_storage::ICodecInfo>* getCodecInfoList() const override;
31 };
32 
33 } // namespace nx::vms_server_plugins::cloud_storage::sample
Definition: i_media_data_packet.h:16
Definition: result.h:48
virtual nx::sdk::ErrorCode getNextData(nx::sdk::cloud_storage::IMediaDataPacket **packet) override
Definition: stream_reader.cpp:36
Definition: device_agent.cpp:11
virtual nx::sdk::ErrorCode seek(int64_t timestampUs, bool findKeyFrame, int64_t *selectedPositionUs) override
Definition: stream_reader.cpp:42
Definition: ref_countable.h:83