diff --git a/libavcodec/flacenc.c b/libavcodec/flacenc.c
index 6f264349b6e26d2787e9a8eae2c06552d2311bfc..6d4e1d0dca08c8c01030963a561e19160d88f505 100644
--- a/libavcodec/flacenc.c
+++ b/libavcodec/flacenc.c
@@ -330,7 +330,7 @@ static int flac_encode_init(AVCodecContext *avctx)
 
     if(avctx->frame_size > 0) {
         if(avctx->frame_size < FLAC_MIN_BLOCKSIZE ||
-                avctx->frame_size > FLAC_MIN_BLOCKSIZE) {
+                avctx->frame_size > FLAC_MAX_BLOCKSIZE) {
             av_log(avctx, AV_LOG_ERROR, "invalid block size: %d\n",
                    avctx->frame_size);
             return -1;
diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index 30d9d17f63e57bedd4f13a11f6dcbb49d38341e5..9784e14ca308c8b8cf5efe14e4881394c9606efd 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -499,7 +499,7 @@ static const AVOption options[]={
 {"sample_rate", NULL, OFFSET(sample_rate), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
 {"channels", NULL, OFFSET(channels), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
 {"cutoff", "set cutoff bandwidth", OFFSET(cutoff), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, A|E},
-{"frame_size", NULL, OFFSET(frame_size), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
+{"frame_size", NULL, OFFSET(frame_size), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, A|E},
 {"frame_number", NULL, OFFSET(frame_number), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
 {"real_pict_num", NULL, OFFSET(real_pict_num), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
 {"delay", NULL, OFFSET(delay), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},