33
$\begingroup$

Does anyone know if there are any video formats (besides the HUGE uncompressed avis) that you can render in that maintain the alpha channel? (i.e. for after FX etc.)

I used to use quicktime, but that's no longer an option. I know you can render in png. or other image formats, but video is significantly smaller, and I often work on machines with less space & resources.

$\endgroup$
2

9 Answers 9

19
$\begingroup$

If you're using OSX you can use its Quicktime support:

  • Selecting any of the video formats in the Output panel.
  • In the Encoding panel change the format to Quicktime and select a codec that supports alpha (such as HuffYUV).

enter image description here

$\endgroup$
5
  • $\begingroup$ Does HuffYUV really support alpha? If so, why is there no RGBA choice, as there is for, say, "QT rle/QT animation" or FFmpeg video codec #1" (whatever that is)? $\endgroup$
    – wchargin
    Aug 18, 2013 at 1:04
  • $\begingroup$ @WChargin Indeed it does. The UI is misleading and could do a number of changes. $\endgroup$
    – Aldrik
    Aug 18, 2013 at 7:56
  • 2
    $\begingroup$ @Aldrik, if the UI isn't showing RGBA when it should, this could be reported as a bug. $\endgroup$
    – ideasman42
    Nov 3, 2015 at 1:25
  • 5
    $\begingroup$ Any similar options if I don't have OSX? $\endgroup$ Jul 9, 2016 at 15:28
  • $\begingroup$ Important to note: This chosen solution is valid for the old version of Blender (2.79), it might be different for Version 2.8x $\endgroup$ Apr 12, 2020 at 12:38
10
$\begingroup$

You can consider using two files - flat video and alpha mask video.

That way you can use any modern codec, without being limited to exotic formats that support alpha in video. And you can have separate quality settings for video and alpha with this method.

To achieve transparency in Adobe After Effects you will need to set the alpha video as the other's TrkMat parameter.

$\endgroup$
4
  • 1
    $\begingroup$ That's creative; I like that. How do you render that separately in blender? Is it just an alpha pass in the compositor? $\endgroup$
    – Wilhelm
    Aug 2, 2013 at 15:13
  • 1
    $\begingroup$ @Wilhelm yes. In the compositor, with "Use Nodes" checked, disconnect the Image > Image noodle and replace it with Alpha > Image. See this example. $\endgroup$
    – wchargin
    Aug 10, 2013 at 15:47
  • $\begingroup$ I experienced some nasty jitter when the camera moves quickly, the Alpha channel acts like jello $\endgroup$
    – J Sargent
    Apr 6, 2016 at 15:29
  • $\begingroup$ I don't think this will work if your rendering video on as a texture as there is no way to add a mask. It just needs an alpha channel. $\endgroup$
    – Frobbit
    Mar 19, 2018 at 5:29
2
$\begingroup$

There are versions of ProRes that do support Alpha channels: ProRes4444 and the high bitrate versions of the DNxHD and DNxHR codecs. But you can't encode directly on them from blender. You would need an external encoder or ffmpeg

$\endgroup$
2
$\begingroup$

There are no compressed video formats supported (directly) by Blender that also support alpha & high compression rates - HuffYUV, QuickTimeRLE support alpha but will still produce large files).

As noted in another answer, OSX can use QuickTime, so if you're on OSX see @avvi's answer.


Since the questioner mentions file-size.

While not a video format, but JPEG2000 is a compressed image format that supports alpha.

Note that unlike PNG its a lossy compression, making it more suitable for storing video, even though its an image format. Its a standard for digital cinema for example.

$\endgroup$
4
  • 1
    $\begingroup$ So is PNG. This question is about video. $\endgroup$
    – wchargin
    Aug 10, 2013 at 15:49
  • $\begingroup$ True, but it is one of the few image formats that uses lossy compression and supports alpha. Its also the default for digital cinema - jpeg.org/apps/cinema.html $\endgroup$
    – ideasman42
    Jun 28, 2014 at 10:20
  • $\begingroup$ How are you suggesting that it be used to answer the question, though? (Not my downvote, by the way.) $\endgroup$
    – wchargin
    Jun 28, 2014 at 16:59
  • 2
    $\begingroup$ @WChargin, The user didn't say why they needed a video format specifically, and since there are not many lossy image formats that support alpha (JPEG doesn't for example), I thought it may help some users who want to write very long animations, smaller then PNG's or TAGA's, but also keeping alpha. The one answer which was accepted here is also platform specific (OSX only). $\endgroup$
    – ideasman42
    Jun 28, 2014 at 17:51
2
$\begingroup$

If .mov file is okay for you, here are the setting to get a transparent background (alpha channel) video output form Blender.

enter image description here

$\endgroup$
1
  • 1
    $\begingroup$ Using the PNG codec also seems to work with the MPEG-4 container. $\endgroup$ Oct 3, 2019 at 22:07
2
$\begingroup$

Just tried this with Blender 2.80 RC1 and you can use quicktime RLE (you don't need Mac OS X, this works on Linux too, so all OS)

Use these settings in video:

enter image description here

These are the default settings. It seems to work with compression too.

$\endgroup$
1
$\begingroup$

I've been looking into this. Although Huff is a great lossless format, its lossless. From my experiments, the QT rle / QT Animation seems to work perfectly. It seems to not be affected by the compression settings but it uses about 10% the file size of HuffYUV.

$\endgroup$
2
  • 1
    $\begingroup$ I can confirm both huff and QT rle both work (and on a windoez PC) Huff is uncompressed and huge. the qt rle version is compressed but you dont seem to find any way to change the rates. These, so far have been the only options of worth. Ive tried a few now myself but these have been the only fruitful solution. early days... $\endgroup$ May 20, 2015 at 14:59
  • $\begingroup$ I was looking if someone realized this: QT encoding is fixed in its bitrate. I think this is a bug. $\endgroup$
    – Mario Mey
    Jun 23, 2021 at 15:02
0
$\begingroup$

I did some Googling on this because I didn't know this was actually supported by any format.

From what I've discovered; 32bit video formats support it; but it isn't always supported, so you will need to do some testing with different formats. FLV supports the alpha channel, and theoretically, so should Theora, but it strips out this information.

Your best bet if you need to do FX, would be to use Chroma keying, so you can overlay your FX on another video.

$\endgroup$
0
$\begingroup$

A quick workaround is to import you blender .png alpha enabled animation frames into after effects instead of using blender to render out a movie with an alpha channel that may not be supported elsewhere to begin with. Let's say you finally find a codec that supports alpha and then you want to stream that movie, most viewers might have to download that codec before they could watch your video. That is not user friendly.

$\endgroup$
1
  • 3
    $\begingroup$ Welcome to the site :) While these may be some valid points, the OP asked specifically about a video format (they even noted that they did not want to use png). $\endgroup$
    – gandalf3
    Jun 25, 2014 at 20:48

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .