RGBA movie rendering: WebM/VP9 codec missing alpha channel #80769

Closed
opened 2020-09-14 13:35:32 +02:00 by Georg K · 17 comments

System Information
Operating system: Linux-5.8.6-1-MANJARO-x86_64-with-glibc2.32 64 Bits
Graphics card: AMD VERDE (DRM 2.50.0, 5.8.6-1-MANJARO, LLVM 10.0.1) X.Org 4.5 (Core Profile) Mesa 20.1.7

Blender Version
Broken: version: 2.91.0 Alpha, branch: master, commit date: 2020-09-14 10:24, hash: b8a25bbd8a, also broken in 2.82a
Worked: (newest version of Blender that worked as expected)

Short description of error
Rendering a movie with alpha channel works for

  • ffmpeg video codec #1
  • png codec
  • HuffYUV codec
    But choosing WebM/VP9 does not include an alpha channel, so either the RGBA option should not be there or something is wrong in the encoding step.

Edit
Exported movie looks like it has proper alpha, but Blender (next to other software cannot import that properly)

Exact steps for others to reproduce the error
In the default scene:
render properties: Film transparent
output properties: File Format: FFmpeg video, Color RGBA, Video Codec: WebM/VP9
Render Animation and open the file: black background is still there, no checkerboard like with the working codecs, also putting it over a solid color in the sequencer using Alpha Over clearly shows that there is no alpha channel.

**System Information** Operating system: Linux-5.8.6-1-MANJARO-x86_64-with-glibc2.32 64 Bits Graphics card: AMD VERDE (DRM 2.50.0, 5.8.6-1-MANJARO, LLVM 10.0.1) X.Org 4.5 (Core Profile) Mesa 20.1.7 **Blender Version** Broken: version: 2.91.0 Alpha, branch: master, commit date: 2020-09-14 10:24, hash: `b8a25bbd8a`, also broken in 2.82a Worked: (newest version of Blender that worked as expected) **Short description of error** Rendering a movie with alpha channel works for - ffmpeg video codec #1 - png codec - HuffYUV codec But choosing WebM/VP9 does not include an alpha channel, so either the RGBA option should not be there or something is wrong in the encoding step. **Edit** Exported movie looks like it has proper alpha, but Blender (next to other software cannot import that properly) **Exact steps for others to reproduce the error** In the default scene: render properties: Film transparent output properties: File Format: FFmpeg video, Color RGBA, Video Codec: WebM/VP9 Render Animation and open the file: black background is still there, no checkerboard like with the working codecs, also putting it over a solid color in the sequencer using Alpha Over clearly shows that there is no alpha channel.
Author

Added subscriber: @georgK

Added subscriber: @georgK

#85430 was marked as duplicate of this issue

#85430 was marked as duplicate of this issue
Member

Added subscriber: @lichtwerk

Added subscriber: @lichtwerk
Member

But choosing WebM/VP9 does not include an alpha channel, so either the RGBA option should not be there or something is wrong in the encoding step.

Should be supported, see 43b7512a59

I cannot get it to show either, but it might be me using it wrong.

> But choosing WebM/VP9 does not include an alpha channel, so either the RGBA option should not be there or something is wrong in the encoding step. Should be supported, see 43b7512a59 I cannot get it to show either, but it might be me using it wrong.
Member

Changed status from 'Needs Triage' to: 'Needs Developer To Reproduce'

Changed status from 'Needs Triage' to: 'Needs Developer To Reproduce'
Member

Added subscriber: @dr.sybren

Added subscriber: @dr.sybren
Member

Here is a file I created with following settings (and transparent film)
image.png

0001-0100.webm

This actually looks like it holds transparency (in the browser)?
(cannot get it to show in Blender though)

@dr.sybren : is it possible we are not importing it correctly?

Here is a file I created with following settings (and transparent film) ![image.png](https://archive.blender.org/developer/F8878464/image.png) [0001-0100.webm](https://archive.blender.org/developer/F8878466/0001-0100.webm) This actually looks like it holds transparency (in the browser)? (cannot get it to show in Blender though) @dr.sybren : is it possible we are not importing it correctly?
Author

You are right, it works in kdenlive, too. But VLC, mpv and Blender don't recognize the alpha channel in the VP9.

You are right, it works in kdenlive, too. But VLC, mpv and Blender don't recognize the alpha channel in the VP9.
Author

This comment was removed by @georgK

*This comment was removed by @georgK*

Added subscriber: @iss

Added subscriber: @iss

Changed status from 'Needs Developer To Reproduce' to: 'Archived'

Changed status from 'Needs Developer To Reproduce' to: 'Archived'
Richard Antalik self-assigned this 2020-09-28 09:20:19 +02:00

In #80769#1015268, @georgK wrote:
You are right, it works in kdenlive, too. But VLC, mpv and Blender don't recognize the alpha channel in the VP9.

I have looked into this, and image was rendered fully opaque by ffmpeg itself. After some googling, I have found https://trac.ffmpeg.org/ticket/8344
Comment states that "The native VP8/9 decoders don't decode alpha". So this isn't supported at the moment.

Since encoding works correctly, I will close this report.

> In #80769#1015268, @georgK wrote: > You are right, it works in kdenlive, too. But VLC, mpv and Blender don't recognize the alpha channel in the VP9. I have looked into this, and image was rendered fully opaque by ffmpeg itself. After some googling, I have found https://trac.ffmpeg.org/ticket/8344 Comment states that "The native VP8/9 decoders don't decode alpha". So this isn't supported at the moment. Since encoding works correctly, I will close this report.
Author

Thanks for finding the source of the problem.
While it's not Blender's fault, shouldn't users be warned that this format is an exception and that the alpha channel will be lost if the video will be used in Blender?
I tried adding it here https://docs.blender.org/manual/en/dev/files/media/video_formats.html, but this page can't be edited by me (a warning in the UI would be more effective of course).

Thanks for finding the source of the problem. While it's not Blender's fault, shouldn't users be warned that this format is an exception and that the alpha channel will be lost if the video will be used in Blender? I tried adding it here https://docs.blender.org/manual/en/dev/files/media/video_formats.html, but this page can't be edited by me (a warning in the UI would be more effective of course).
Richard Antalik was unassigned by Sybren A. Stüvel 2020-09-29 17:43:17 +02:00
Sybren A. Stüvel self-assigned this 2020-09-29 17:43:17 +02:00

Changed status from 'Archived' to: 'Resolved'

Changed status from 'Archived' to: 'Resolved'

In #80769#1024974, @georgK wrote:
While it's not Blender's fault, shouldn't users be warned that this format is an exception and that the alpha channel will be lost if the video will be used in Blender?

Yes, so I did.

> In #80769#1024974, @georgK wrote: > While it's not Blender's fault, shouldn't users be warned that this format is an exception and that the alpha channel will be lost if the video will be used in Blender? Yes, so I did.
Author

Thank you!

Thank you!
Member

Added subscriber: @qubodup

Added subscriber: @qubodup
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
6 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#80769
No description provided.