Page MenuHome

Encoding to MPEG-4(divx) in constant quality mode ignores Output quality settings
Open, NormalPublic

Description

System Information
Operating system: Debian 9
Graphics card: Intel integrated GPU

Blender Version
Broken: 2.79b release
(example: 2.79b release)
(example: 2.80, edbf15d3c044, blender2.8, 2018-11-28, as found on the splash screen)
Worked: (optional)

Short description of error
Encoding to MPEG-4(divx) ignores 'Output quality' settings like, e.g. Perceptually lossless, Medium quality and such. Only 'None, use constant bitrate' works.

Exact steps for others to reproduce the error
Based on the default startup or an attached .blend file (as simple as possible).

  1. Load default startup
  2. Switch to the VSE
  3. Import any video strip with high quality 1080p footage.
  4. Switch to properties tabs
  5. Unfold 'Encoding'
  6. Choose: Container: Matroska Codec: MPEG-4(divx) Output quality: Perceptually lossless.
  7. Hit Ctrl+F12 or choose menu option Render > Render animation
  8. Watch how the results are ugly and low bitrate.
  9. Repeat steps 6 to 9 with different options of Output quality such as 'Very low quality' and 'High quality' and see how the output video files are identical.

The only way to change the output quality is choosing 'None, use constant bitrate' which defeats the purpose of encoding with constant quality quantifier altogether.

Details

Type
Bug

Related Objects

Event Timeline

Richard Antalik (ISS) triaged this task as Normal priority.Feb 19 2019, 4:56 PM

Applies to all renders, not only movies imported in VSE

According to the FFmpeg documentation DivX doesn't support the crf parameter we're using. Instead, it'll have to use the qscale parameter.

This issue is similar to T60911 in the sense that the mapping from quality setting in Blender to parameters for FFmpeg need to become codec-aware.