ffconv/include/ffcpp/Stream.h
2021-02-04 15:27:55 +03:00

40 lines
645 B
C++

#ifndef FFCONV_STREAM_H
#define FFCONV_STREAM_H
#include "Codec.h"
extern "C" {
#include <libavformat/avformat.h>
}
#include <memory>
namespace ffcpp {
typedef std::shared_ptr<class Stream> StreamPtr;
class Stream {
private:
AVStream* _stream;
CodecPtr _codec;
public:
Stream();
Stream(AVStream* stream);
Stream(AVStream* stream, CodecPtr codec);
operator AVStream*() const;
CodecPtr codec();
AVRational timeBase() const;
void setTimeBase(AVRational timeBase);
float fps() const;
public:
Stream(Stream&& stream) noexcept;
Stream& operator=(Stream&& stream) noexcept;
};
}
#endif //FFCONV_STREAM_H