mirror of https://git.ffmpeg.org/ffmpeg.git
avcodec/mjpegenc, speedhqenc: Remove nonsense assert
Our code for writing optimal huffman tables is incompatible with using multiple slices and hence commit884506dfe2
that implemented this also added an assert that slice_context_count is always 1. Yet this was always wrong: a) The MJPEG-encoder has (and had) the AV_CODEC_CAP_SLICE_THREADS capability, so asserting that it always uses one slice context is incorrect. b) This commit did not add any proper checks that ensured that optimal huffman tables are never used together with multiple slices. This only happened with03eb0515c1
. c) This assert is at the wrong place: ff_mjpeg_encode_init() is called before the actual slice_context_count is set. This is the reason why this assert was never triggered. Therefore this commit removes this assert. Also remove an assert from the SpeedHQ encoder sharing b) and c). Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
parent
8ca4b515e7
commit
f7d44804a6
|
@ -297,8 +297,6 @@ av_cold int ff_mjpeg_encode_init(MpegEncContext *s)
|
|||
|
||||
s->mjpeg_ctx = m;
|
||||
|
||||
av_assert0(s->slice_context_count == 1);
|
||||
|
||||
if (s->codec_id == AV_CODEC_ID_AMV || (s->avctx->active_thread_type & FF_THREAD_SLICE))
|
||||
m->huffman = HUFFMAN_TABLE_DEFAULT;
|
||||
|
||||
|
|
|
@ -90,8 +90,6 @@ av_cold int ff_speedhq_encode_init(MpegEncContext *s)
|
|||
{
|
||||
static AVOnce init_static_once = AV_ONCE_INIT;
|
||||
|
||||
av_assert0(s->slice_context_count == 1);
|
||||
|
||||
if (s->width > 65500 || s->height > 65500) {
|
||||
av_log(s, AV_LOG_ERROR, "SpeedHQ does not support resolutions above 65500x65500\n");
|
||||
return AVERROR(EINVAL);
|
||||
|
|
Loading…
Reference in New Issue