| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- #ifndef RECORDER_RTSPRECORDER_H
- #define RECORDER_RTSPRECORDER_H
- #include "Recorder.h"
- #include "Settings.h"
- #include <filesystem/path.h>
- namespace Http {
- class HttpClient;
- } // namespace Http
- namespace CameraRecorder {
- namespace Recorder {
- class RTSPRecorder : public virtual Recorder
- {
- public:
- RTSPRecorder(Http::HttpClient* pHttpClient, const Settings& settings);
- ~RTSPRecorder();
- virtual std::string Snapshot(ctpl::thread_pool* pThreadPool, const std::string& ffmpeg) override;
- virtual std::string MultiSnapshot(ctpl::thread_pool* pThreadPool, const std::string& ffmpeg, int numberOfImages) override;
- virtual std::string Video(ctpl::thread_pool* pThreadPool, const std::string& ffmpeg) override;
- private:
- static std::string GetFolderName(const Settings& settings);
- static std::string GetFileName(const Settings& settings, const std::string& extension, const std::string& dateTimeString, int imageIndex);
- static void Snapshots(const std::string& ffmpeg, const Settings& settings, std::string dateTimeString, int numberOfImages);
- static void Snapshot(const std::string& ffmpeg, const Settings& settings, const filesystem::path& fileName);
- private:
- Http::HttpClient* m_pHttpClient;
- Settings m_settings;
- };
- } // namespace Recorder
- } // namespace CameraRecorder
- #endif // RECORDER_RTSPRECORDER_H
|