15 #ifndef SHAKA_EMBEDDED_MEDIA_FRAMES_H_ 16 #define SHAKA_EMBEDDED_MEDIA_FRAMES_H_ 22 #include "../eme/configuration.h" 23 #include "../eme/implementation.h" 24 #include "../macros.h" 25 #include "../variant.h" 163 if (holds_alternative<PixelFormat>(format))
164 return os << get<PixelFormat>(format);
166 return os << get<SampleFormat>(format);
188 BaseFrame(std::shared_ptr<const StreamInfo> stream_info,
double pts,
189 double dts,
double duration,
bool is_key_frame);
220 virtual size_t EstimateSize()
const;
224 std::unique_ptr<Impl> impl_;
235 EncodedFrame(std::shared_ptr<const StreamInfo> stream,
double pts,
double dts,
236 double duration,
bool is_key_frame,
const uint8_t* data,
237 size_t data_size,
double timestamp_offset,
238 std::shared_ptr<eme::FrameEncryptionInfo> encryption_info);
268 uint8_t*
dest)
const;
271 size_t EstimateSize()
const override;
275 std::unique_ptr<Impl> impl_;
285 DecodedFrame(std::shared_ptr<const StreamInfo> stream_info,
double pts,
286 double dts,
double duration,
288 const std::vector<const uint8_t*>& data,
289 const std::vector<size_t>& linesize);
312 const std::vector<const uint8_t*>
data;
328 size_t EstimateSize()
const override;
332 std::unique_ptr<Impl> impl_;
338 #endif // SHAKA_EMBEDDED_MEDIA_FRAMES_H_
#define SHAKA_NON_COPYABLE_OR_MOVABLE_TYPE(Type)