void VideoOutput::getSupportedCodecs(Array<String>& list) { Array<InternalCodecID> codec; getSupportedCodecs(codec); list.resize(codec.size()); for (int i = 0; i < codec.size(); ++i) { list[i] = toString(codec[i]); } }
bool VideoDecoderD3DPrivate::open() { if (!prepare()) return false; if (codec_ctx->codec_id == QTAV_CODEC_ID(HEVC)) { // runtime hevc check if (!isHEVCSupported()) { qWarning("HEVC DXVA2/D3D11VA is not supported by current FFmpeg runtime."); return false; } } if (!createDevice()) return false; format_fcc = 0; QVector<GUID> codecs = getSupportedCodecs(); const d3d_format_t *fmt = getFormat(codec_ctx, codecs, &codec_guid); if (!fmt) return false; format_fcc = fmt->fourcc; if (!setupSurfaceInterop()) return false; return true; }