summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavcodec/libdiracenc.c6
-rw-r--r--libavcodec/libschroedingerenc.c5
2 files changed, 9 insertions, 2 deletions
diff --git a/libavcodec/libdiracenc.c b/libavcodec/libdiracenc.c
index ee827ce1ea..b0de3441b0 100644
--- a/libavcodec/libdiracenc.c
+++ b/libavcodec/libdiracenc.c
@@ -175,9 +175,11 @@ static int libdirac_encode_init(AVCodecContext *avccontext)
}
/* Intra-only sequence */
- if (avccontext->gop_size == 0 )
+ if (avccontext->gop_size == 0 ) {
p_dirac_params->enc_ctx.enc_params.num_L1 = 0;
- else
+ if (avccontext->coder_type == FF_CODER_TYPE_VLC)
+ p_dirac_params->enc_ctx.enc_params.using_ac = 0;
+ } else
avccontext->has_b_frames = 1;
if (avccontext->flags & CODEC_FLAG_QSCALE) {
diff --git a/libavcodec/libschroedingerenc.c b/libavcodec/libschroedingerenc.c
index 03d9312e54..2d84621279 100644
--- a/libavcodec/libschroedingerenc.c
+++ b/libavcodec/libschroedingerenc.c
@@ -149,6 +149,11 @@ static int libschroedinger_encode_init(AVCodecContext *avccontext)
schro_encoder_setting_set_double (p_schro_params->encoder,
"gop_structure",
SCHRO_ENCODER_GOP_INTRA_ONLY);
+
+ if (avccontext->coder_type == FF_CODER_TYPE_VLC) {
+ schro_encoder_setting_set_double (p_schro_params->encoder,
+ "enable_noarith", 1);
+ }
}
else {
schro_encoder_setting_set_double (p_schro_params->encoder,