#include "Stream.h" #include namespace ffcpp { Stream::Stream(): _stream(nullptr) { } Stream::Stream(AVStream *stream): _stream(stream), _codec(_stream->codec, CodecType::Decoder) { } Stream::Stream(AVStream *stream, AVCodec* encoder): _stream(stream), _codec(stream->codec, encoder) { } Stream::operator AVStream*() const { return _stream; } Codec& Stream::codec() { return _codec; } AVRational Stream::timeBase() const { return _stream->time_base; } void Stream::setTimeBase(AVRational timeBase) { _stream->time_base = timeBase; } Stream::Stream(Stream&& stream) { *this = std::move(stream); } Stream& Stream::operator=(Stream&& stream) { _codec = std::move(stream._codec); _stream = stream._stream; stream._stream = nullptr; return *this; } }