In CQ mode,
--target-bitrate becomes “target maximum rate”. If requested quality (
--cq-level) can be achieved with less (than
--target-bitrate) bits, it will be encoded so, but
--target-bitrate does set the hard upper limit for bitrate. In addition, it defaults quite low if unset, even in CQ mode; at least my intuition (stemming from experience with Vorbis, probably) assumes CQ mode without set bitrate would take all the bits it needs to achieve the requested quality, but not so.
So, if reaching a certain size doesn’t matter, but quality does, I suggest
--end-usage=cq and overshooting
--target-bitrate with a high enough number to guarantee that quality is limited by CQ controls (
--max-q) alone, not by bitrate. Remember, any crazy big bitrate value will still be undershot if all of those bits aren’t actually needed to hit the quality target.
--cq-level value of 10 seems quite well struck (for certain material I can’t tell the difference from level 5 despite the +30% increase in file size), but even level 20 still doesn’t seem too bad (again, for the material I’ve tested it with, resulting in additional 30% saved in file size).