Loading media/codec2/components/dav1d/C2SoftDav1dDec.cpp +18 −20 Original line number Diff line number Diff line Loading @@ -648,6 +648,24 @@ void C2SoftDav1dDec::process(const std::unique_ptr<C2Work>& work, if (res == 0) { ALOGV("dav1d found a sequenceHeader (%dx%d) for in_frameIndex=%ld.", seq.max_width, seq.max_height, (long)in_frameIndex); if (seq.max_width != mWidth || seq.max_height != mHeight) { drainInternal(DRAIN_COMPONENT_NO_EOS, pool, work); mWidth = seq.max_width; mHeight = seq.max_height; C2StreamPictureSizeInfo::output size(0u, mWidth, mHeight); std::vector<std::unique_ptr<C2SettingResult>> failures; c2_status_t err = mIntf->config({&size}, C2_MAY_BLOCK, &failures); if (err == C2_OK) { work->worklets.front()->output.configUpdate.push_back(C2Param::Copy(size)); } else { ALOGE("Config update size failed"); mSignalledError = true; work->result = C2_CORRUPTED; work->workletsProcessed = 1u; return; } } } // insert OBU TD if it is not present. Loading Loading @@ -921,26 +939,6 @@ bool C2SoftDav1dDec::outputBuffer(const std::shared_ptr<C2BlockPool>& pool, return false; } const int width = img.p.w; const int height = img.p.h; if (width != mWidth || height != mHeight) { mWidth = width; mHeight = height; C2StreamPictureSizeInfo::output size(0u, mWidth, mHeight); std::vector<std::unique_ptr<C2SettingResult>> failures; c2_status_t err = mIntf->config({&size}, C2_MAY_BLOCK, &failures); if (err == C2_OK) { work->worklets.front()->output.configUpdate.push_back(C2Param::Copy(size)); } else { ALOGE("Config update size failed"); mSignalledError = true; work->result = C2_CORRUPTED; work->workletsProcessed = 1u; return false; } } getVuiParams(&img); // out_frameIndex that the decoded picture returns from dav1d. Loading Loading
media/codec2/components/dav1d/C2SoftDav1dDec.cpp +18 −20 Original line number Diff line number Diff line Loading @@ -648,6 +648,24 @@ void C2SoftDav1dDec::process(const std::unique_ptr<C2Work>& work, if (res == 0) { ALOGV("dav1d found a sequenceHeader (%dx%d) for in_frameIndex=%ld.", seq.max_width, seq.max_height, (long)in_frameIndex); if (seq.max_width != mWidth || seq.max_height != mHeight) { drainInternal(DRAIN_COMPONENT_NO_EOS, pool, work); mWidth = seq.max_width; mHeight = seq.max_height; C2StreamPictureSizeInfo::output size(0u, mWidth, mHeight); std::vector<std::unique_ptr<C2SettingResult>> failures; c2_status_t err = mIntf->config({&size}, C2_MAY_BLOCK, &failures); if (err == C2_OK) { work->worklets.front()->output.configUpdate.push_back(C2Param::Copy(size)); } else { ALOGE("Config update size failed"); mSignalledError = true; work->result = C2_CORRUPTED; work->workletsProcessed = 1u; return; } } } // insert OBU TD if it is not present. Loading Loading @@ -921,26 +939,6 @@ bool C2SoftDav1dDec::outputBuffer(const std::shared_ptr<C2BlockPool>& pool, return false; } const int width = img.p.w; const int height = img.p.h; if (width != mWidth || height != mHeight) { mWidth = width; mHeight = height; C2StreamPictureSizeInfo::output size(0u, mWidth, mHeight); std::vector<std::unique_ptr<C2SettingResult>> failures; c2_status_t err = mIntf->config({&size}, C2_MAY_BLOCK, &failures); if (err == C2_OK) { work->worklets.front()->output.configUpdate.push_back(C2Param::Copy(size)); } else { ALOGE("Config update size failed"); mSignalledError = true; work->result = C2_CORRUPTED; work->workletsProcessed = 1u; return false; } } getVuiParams(&img); // out_frameIndex that the decoded picture returns from dav1d. Loading