[Bf-blender-cvs] [ca0b5529d09] master: FFmpeg: Added writing of WebM containers

Sybren A. Stüvel noreply at git.blender.org
Wed Jul 31 11:43:06 CEST 2019


Commit: ca0b5529d09c3d822bf0c7c618732c82ce758d1c
Author: Sybren A. Stüvel
Date:   Wed Jul 31 11:20:21 2019 +0200
Branches: master
https://developer.blender.org/rBca0b5529d09c3d822bf0c7c618732c82ce758d1c

FFmpeg: Added writing of WebM containers

This commit adds support for the WebM container. Previously we only
supported the WebM/VP9 video codec, but still required that it was
stored in a Matroska, MP4, or other compatible container format.

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D5156

===================================================================

M	release/scripts/startup/bl_ui/properties_output.py
M	source/blender/blenkernel/BKE_writeffmpeg.h
M	source/blender/blenkernel/intern/writeffmpeg.c
M	source/blender/makesrna/intern/rna_scene.c

===================================================================

diff --git a/release/scripts/startup/bl_ui/properties_output.py b/release/scripts/startup/bl_ui/properties_output.py
index 9a710fd9419..4d230520d11 100644
--- a/release/scripts/startup/bl_ui/properties_output.py
+++ b/release/scripts/startup/bl_ui/properties_output.py
@@ -376,7 +376,7 @@ class RENDER_PT_encoding_video(RenderOutputButtonsPanel, Panel):
         layout = self.layout
         ffmpeg = context.scene.render.ffmpeg
 
-        needs_codec = ffmpeg.format in {'AVI', 'QUICKTIME', 'MKV', 'OGG', 'MPEG4'}
+        needs_codec = ffmpeg.format in {'AVI', 'QUICKTIME', 'MKV', 'OGG', 'MPEG4', 'WEBM'}
         if needs_codec:
             layout.prop(ffmpeg, "codec")
 
diff --git a/source/blender/blenkernel/BKE_writeffmpeg.h b/source/blender/blenkernel/BKE_writeffmpeg.h
index 4d008f8d249..9da28c849d9 100644
--- a/source/blender/blenkernel/BKE_writeffmpeg.h
+++ b/source/blender/blenkernel/BKE_writeffmpeg.h
@@ -43,6 +43,7 @@ enum {
   FFMPEG_MKV = 9,
   FFMPEG_OGG = 10,
   FFMPEG_INVALID = 11,
+  FFMPEG_WEBM = 12,
 };
 
 enum {
diff --git a/source/blender/blenkernel/intern/writeffmpeg.c b/source/blender/blenkernel/intern/writeffmpeg.c
index fcd00837f4f..01a72cbbb9e 100644
--- a/source/blender/blenkernel/intern/writeffmpeg.c
+++ b/source/blender/blenkernel/intern/writeffmpeg.c
@@ -319,6 +319,10 @@ static const char **get_file_extensions(int format)
       static const char *rv[] = {".ogv", ".ogg", NULL};
       return rv;
     }
+    case FFMPEG_WEBM: {
+      static const char *rv[] = {".webm", NULL};
+      return rv;
+    }
     default:
       return NULL;
   }
diff --git a/source/blender/makesrna/intern/rna_scene.c b/source/blender/makesrna/intern/rna_scene.c
index dcbbdd67d7b..1e770f6aa9c 100644
--- a/source/blender/makesrna/intern/rna_scene.c
+++ b/source/blender/makesrna/intern/rna_scene.c
@@ -5171,6 +5171,7 @@ static void rna_def_scene_ffmpeg_settings(BlenderRNA *brna)
       {FFMPEG_OGG, "OGG", 0, "Ogg", ""},
       {FFMPEG_MKV, "MKV", 0, "Matroska", ""},
       {FFMPEG_FLV, "FLASH", 0, "Flash", ""},
+      {FFMPEG_WEBM, "WEBM", 0, "WebM", ""},
       {0, NULL, 0, NULL, NULL},
   };



More information about the Bf-blender-cvs mailing list