rtmpDiscovery.hpp 1.74 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
// Copyright (c) 2012-2017 VideoStitch SAS
// Copyright (c) 2018 stitchEm

#pragma once

#include "libvideostitch/plugin.hpp"

#include <vector>
#include <string>

namespace VideoStitch {
namespace Plugin {

class RTMPDiscovery : public VSDiscoveryPlugin {
 public:
  static RTMPDiscovery* create();
  virtual ~RTMPDiscovery();

  virtual std::string name() const override;
  virtual std::string readableName() const override;
  virtual std::vector<Plugin::DiscoveryDevice> outputDevices() override;
  virtual std::vector<Plugin::DiscoveryDevice> inputDevices() override;
  virtual std::vector<std::string> supportedVideoCodecs() override;
  virtual std::vector<PixelFormat> supportedPixelFormat(const Plugin::DiscoveryDevice&) override {
    return std::vector<PixelFormat>();
  }
  virtual std::vector<int> supportedNbChannels(const Plugin::DiscoveryDevice&) override { return std::vector<int>(); }
  virtual std::vector<Audio::SamplingRate> supportedSamplingRates(const Plugin::DiscoveryDevice&) override {
    return std::vector<Audio::SamplingRate>();
  }
  virtual std::vector<Audio::SamplingDepth> supportedSampleFormats(const Plugin::DiscoveryDevice&) override {
    return std::vector<Audio::SamplingDepth>();
  }

  virtual std::vector<std::string> cards() const override { return std::vector<std::string>(); }
  virtual std::vector<DisplayMode> supportedDisplayModes(const Plugin::DiscoveryDevice&) override {
    return std::vector<DisplayMode>();
  }
  virtual DisplayMode currentDisplayMode(const Plugin::DiscoveryDevice&) override { return DisplayMode(); }
  virtual void registerAutoDetectionCallback(AutoDetection&) override {}

 private:
  RTMPDiscovery();

  std::vector<std::string> m_supportedCodecs;
};

}  // namespace Plugin
}  // namespace VideoStitch