Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSybren A. Stüvel <sybren@stuvel.eu>2018-04-09 16:27:11 +0300
committerSybren A. Stüvel <sybren@stuvel.eu>2018-04-09 16:27:11 +0300
commit7e39d151d850590fbabc9870bc5134d9421c5c2c (patch)
tree3f9a81d25bb2638c62bd4d308cc51a06015a7511 /source/blender/makesdna
parent39116a434038cadafbfb7e63106ff45fefdd56d8 (diff)
Added support for the WEBM/VP9 video codec
WEBM is the codec name, and VP9 is the encoder (the older encoder "VP8" is less efficient than VP9). WEBM/VP9 and h.264 both have options to control the file size versus compression time (e.g. fast but big, or slow and small, for the same output quality). Since WEBM/VP9 only has three choices, I've chosen to map those to 3 of the 9 possible choices of h.264: - BEST → SLOWER - GOOD → MEDIUM - REALTIME → SUPERFAST The VERYSLOW and ULTRAFAST options give very little extra benefit. Reviewed by: @Severin
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r--source/blender/makesdna/DNA_scene_types.h31
1 files changed, 21 insertions, 10 deletions
diff --git a/source/blender/makesdna/DNA_scene_types.h b/source/blender/makesdna/DNA_scene_types.h
index 9a14f2eacbb..d2b71c727c5 100644
--- a/source/blender/makesdna/DNA_scene_types.h
+++ b/source/blender/makesdna/DNA_scene_types.h
@@ -101,17 +101,28 @@ typedef struct AviCodecData {
typedef enum eFFMpegPreset {
FFM_PRESET_NONE,
- FFM_PRESET_ULTRAFAST,
- FFM_PRESET_SUPERFAST,
- FFM_PRESET_VERYFAST,
- FFM_PRESET_FASTER,
- FFM_PRESET_FAST,
- FFM_PRESET_MEDIUM,
- FFM_PRESET_SLOW,
- FFM_PRESET_SLOWER,
- FFM_PRESET_VERYSLOW,
-} eFFMpegPreset;
+#ifdef DNA_DEPRECATED
+ /* Previously used by h.264 to control encoding speed vs. file size. */
+ FFM_PRESET_ULTRAFAST, /* DEPRECATED */
+ FFM_PRESET_SUPERFAST, /* DEPRECATED */
+ FFM_PRESET_VERYFAST, /* DEPRECATED */
+ FFM_PRESET_FASTER, /* DEPRECATED */
+ FFM_PRESET_FAST, /* DEPRECATED */
+ FFM_PRESET_MEDIUM, /* DEPRECATED */
+ FFM_PRESET_SLOW, /* DEPRECATED */
+ FFM_PRESET_SLOWER, /* DEPRECATED */
+ FFM_PRESET_VERYSLOW, /* DEPRECATED */
+#endif
+
+ /* Used by WEBM/VP9 and h.264 to control encoding speed vs. file size.
+ * WEBM/VP9 use these values directly, whereas h.264 map those to
+ * respectively the MEDIUM, SLOWER, and SUPERFAST presets.
+ */
+ FFM_PRESET_GOOD = 10, /* the default and recommended for most applications */
+ FFM_PRESET_BEST, /* recommended if you have lots of time and want the best compression efficiency */
+ FFM_PRESET_REALTIME, /* recommended for live / fast encoding */
+} eFFMpegPreset;
/* Mapping from easily-understandable descriptions to CRF values.
* Assumes we output 8-bit video. Needs to be remapped if 10-bit