diff --git a/ffserver.c b/ffserver.c index 4c55558093..e31a02706c 100644 --- a/ffserver.c +++ b/ffserver.c @@ -4146,6 +4146,24 @@ static int parse_ffconfig(const char *filename) video_enc.mb_decision = FF_MB_DECISION_BITS; //FIXME remove video_enc.flags |= CODEC_FLAG_4MV; } + } else if (!strcasecmp(cmd, "BitExact")) { + if (stream) { + video_enc.flags |= CODEC_FLAG_BITEXACT; + } + } else if (!strcasecmp(cmd, "DctFastint")) { + if (stream) { + video_enc.dct_algo = FF_DCT_FASTINT; + } + } else if (!strcasecmp(cmd, "IdctSimple")) { + if (stream) { + video_enc.idct_algo = FF_IDCT_SIMPLE; + } + } else if (!strcasecmp(cmd, "Qscale")) { + get_arg(arg, sizeof(arg), &p); + if (stream) { + video_enc.flags |= CODEC_FLAG_QSCALE; + video_enc.global_quality = FF_QP2LAMBDA * atoi(arg); + } } else if (!strcasecmp(cmd, "VideoQDiff")) { get_arg(arg, sizeof(arg), &p); if (stream) { diff --git a/tests/ffserver.regression.ref b/tests/ffserver.regression.ref index e20c06253f..141d5faeb8 100644 --- a/tests/ffserver.regression.ref +++ b/tests/ffserver.regression.ref @@ -1,10 +1,10 @@ -03867bfc9f7dd494cbe2b71aa0ce6537 ff-test_h.avi -ef4887809ddeb782ed66bf34cb506dcf ff-test_l.avi -0f1795f0496f37aeea6272d272140efa ff-test.swf -f842864a654593ea9ee9d7a1bd024627 ff-test_h.asf -5c12fa55e6b7fbade1b142ecf430a679 ff-test_l.asf -71bfe6784e025f6eea9f92113d8c7dda ff-test_h.rm -d5c1cc12240a4169abea3fb0fc7f4db3 ff-test_l.rm -d41d8cd98f00b204e9800998ecf8427e ff-test.jpg -d41d8cd98f00b204e9800998ecf8427e ff-test_small.jpg -6ce0af834ee0abf4753df419f67648c5 ff-test.mjpg +8e431131485c2862672e040c662da43c ff-test_h.avi +159562fd980af62ff888d709fad7042a ff-test_l.avi +34f4f0c160efcdb37c0999680e07c41c ff-test.swf +1eb3fdf04c43c8b0cc59d8444c0f2af3 ff-test_h.asf +ffa9d3708aa394fd3631c002fc6cc088 ff-test_l.asf +cba8663681bf3ef89c95c09bb90204db ff-test_h.rm +0a14086c708a7b8f4604e705a2bb7087 ff-test_l.rm +353a9a8fb3d5bb2334ac991b5c60f6d3 ff-test.jpg +7cbd46a6174d8203c26be333980595b5 ff-test_small.jpg +aaa459e638cd1dc2c120760fa4e1e384 ff-test.mjpg diff --git a/tests/test.conf b/tests/test.conf index e0717f65db..cc2038a60d 100644 --- a/tests/test.conf +++ b/tests/test.conf @@ -71,6 +71,9 @@ acl allow localhost Feed feed1.ffm Format avi # +BitExact +DctFastint +IdctSimple VideoFrameRate 10 VideoSize 352x288 VideoBitRate 100 @@ -87,6 +90,9 @@ MaxTime 100 Feed feed1.ffm Format avi # +BitExact +DctFastint +IdctSimple VideoFrameRate 2 VideoSize 320x240 VideoBitRate 40 @@ -132,6 +138,10 @@ MaxTime 100 Feed feed1.ffm # +BitExact +DctFastint +IdctSimple +Qscale 10 VideoFrameRate 10 VideoSize 352x288 VideoBitRate 100 @@ -148,6 +158,10 @@ MaxTime 100 Feed feed1.ffm Format asf # +BitExact +DctFastint +IdctSimple +Qscale 10 VideoFrameRate 10 VideoSize 320x240 VideoBitRate 100 @@ -166,6 +180,10 @@ Title "Test data stream" Feed feed1.ffm Format asf # +BitExact +DctFastint +IdctSimple +Qscale 10 VideoFrameRate 2 VideoSize 320x240 VideoBitRate 40 @@ -185,6 +203,10 @@ Title "Test data stream" Feed feed1.ffm Format rm +BitExact +DctFastint +IdctSimple +Qscale 10 VideoBitRate 100 VideoFrameRate 10 VideoGopSize 30 @@ -202,6 +224,10 @@ MaxTime 100 Feed feed1.ffm Format rm +BitExact +DctFastint +IdctSimple +Qscale 10 VideoBitRate 40 VideoFrameRate 2 VideoGopSize 20 @@ -221,6 +247,9 @@ Feed feed1.ffm Format jpeg Strict -1 +BitExact +DctFastint +IdctSimple VideoFrameRate 1 VideoSize 352x288 NoAudio @@ -235,6 +264,9 @@ Feed feed1.ffm Format jpeg Strict -1 +BitExact +DctFastint +IdctSimple VideoFrameRate 1 VideoSize 160x128 NoAudio @@ -247,7 +279,11 @@ PreRoll 2 Feed feed1.ffm Format mpjpeg +Strict -1 +BitExact +DctFastint +IdctSimple VideoFrameRate 1 VideoSize 320x240 NoAudio