8#ifndef META_OCEAN_MEDIA_ANDROID_VIDEO_DECODER_H
9#define META_OCEAN_MEDIA_ANDROID_VIDEO_DECODER_H
11#if defined(__ANDROID_API__) && __ANDROID_API__ >= 24
13#ifndef OCEAN_MEDIA_ANDROID_VIDEODECODER_AVAILABLE
14 #define OCEAN_MEDIA_ANDROID_VIDEODECODER_AVAILABLE
116 bool initialize(
const std::string& mime,
const unsigned int width,
const unsigned int height);
142 bool pushSample(
const void* data,
const size_t size,
const uint64_t presentationTime);
198 static bool convertAvccToAnnexB(
const void* avccData,
const size_t avccSize, std::vector<uint8_t>& annexBData,
const bool isCodecConfig =
false,
const std::string& mime =
"video/avc");
215 static bool isAvcc(
const void* data,
const size_t size,
const bool isCodecConfig =
false);
247 *
this = std::move(videoDecoder);
268 if (
this != &videoDecoder)
272 decoder_ = std::move(videoDecoder.decoder_);
274 isStarted_ = videoDecoder.isStarted_;
275 videoDecoder.isStarted_ =
false;
This class implements Ocean's image class.
Definition Frame.h:1879
This class implements a recursive lock object.
Definition Lock.h:31
This class implements a scoped lock object for recursive lock objects.
Definition Lock.h:147
bool isValid() const
Returns whether this scoped object holds a valid release function (which will be invoked once the obj...
Definition ScopedObject.h:351
The namespace covering the entire Ocean framework.
Definition Accessor.h:15