HAP Support in Delivery

Get answers to your questions about color grading, editing and finishing with DaVinci Resolve.
  • Author
  • Message
Offline
User avatar

FarbSpielRaum

  • Posts: 5
  • Joined: Sun Apr 29, 2018 7:35 am
  • Location: Munich, Germany
  • Real Name: Johannes Mayrhofer

HAP Support in Delivery

PostSun Apr 29, 2018 9:22 am

Hi,

I would like to suggest to add HAP codec Support (at least on the delivery page, although decoding HAP wouldn't be bad either).

I saw this suggested once in this post (viewtopic.php?f=32&t=72269&p=405308&hilit=HAP#p405308), but thought it might be worth its own topic.

HAP is one of the (if not THE) industry standard for codecs for GPU decoded playback of high resolution, high bitrate, high framerate video files in the event industry. There is almost no other codec that sports that fluid playback of four 4k+ streams with bitrates beyond 100Mbit and 50/60fps. This is exemplary need to crossfade a background and foreground with alpha at the same time, or crossfade on two independent 4k screens.

Just recently Adobe deprecated the support of the up to now widely used implementation as quicktime plugin, since it was 32bit based. And yet they have not shown any sign of actively implementing it.

So maybe it would be a good time to add this support do the BMD/DaVinci ecosystem and maybe get some Adobe users into switching over.
Offline

wolfgang hershey

  • Posts: 132
  • Joined: Sun Feb 07, 2016 12:41 am
  • Location: chinatowns everywhere

Re: HAP Support in Delivery

PostTue May 01, 2018 3:24 am

YES PLEASE

+1
imac/hackintosh 14,2 (4-core 4.0 GHz i7) - 32GB - 980Ti
OS X 10.13.6 / 15.3 Resolve Studio - DeckLink Studio 4k
10Gb ethernet network
Offline
User avatar

Chad Capeland

  • Posts: 2228
  • Joined: Mon Nov 10, 2014 9:40 pm

Re: HAP Support in Delivery

PostTue May 01, 2018 2:09 pm

Strange that in 2018 HAP still uses BC3 compression.
Chad Capeland
Indicated, LLC
www.floweffects.com
Offline

Jim Simon

  • Posts: 2181
  • Joined: Fri Dec 23, 2016 1:47 am

Re: HAP Support in Delivery

PostTue May 01, 2018 2:17 pm

FarbSpielRaum wrote:HAP is one of the (if not THE) industry standard for codecs for GPU decoded playback of high resolution, high bitrate, high framerate video files in the event industry.


I've been playing back video files at live events for 20 years.

Never heard of HAP. These days, it's always H.264. It always works flawlessly.
Offline

Andrew Kolakowski

  • Posts: 5350
  • Joined: Tue Sep 11, 2012 10:20 am

Re: HAP Support in Delivery

PostTue May 01, 2018 3:12 pm

FarbSpielRaum wrote:Hi,

I would like to suggest to add HAP codec Support (at least on the delivery page, although decoding HAP wouldn't be bad either).

I saw this suggested once in this post (viewtopic.php?f=32&t=72269&p=405308&hilit=HAP#p405308), but thought it might be worth its own topic.

HAP is one of the (if not THE) industry standard for codecs for GPU decoded playback of high resolution, high bitrate, high framerate video files in the event industry. There is almost no other codec that sports that fluid playback of four 4k+ streams with bitrates beyond 100Mbit and 50/60fps. This is exemplary need to crossfade a background and foreground with alpha at the same time, or crossfade on two independent 4k screens.

Just recently Adobe deprecated the support of the up to now widely used implementation as quicktime plugin, since it was 32bit based. And yet they have not shown any sign of actively implementing it.

So maybe it would be a good time to add this support do the BMD/DaVinci ecosystem and maybe get some Adobe users into switching over.


It's quite old and simple codec. Something like Daniel2 should be better/modern replacement (and sort of free now).
https://www.daniel2.com/index.php
Saying this playing 4K is not that difficult today even with ProRes, Cineform etc ( you can do it from eg. NUC based tiny player). If you have problems it's because you may be using old and crappy QT engine on PC or your app/player is not really well written.

You may be happy as ffmpeg has added HAP encoder not long time ago.
Offline
User avatar

FarbSpielRaum

  • Posts: 5
  • Joined: Sun Apr 29, 2018 7:35 am
  • Location: Munich, Germany
  • Real Name: Johannes Mayrhofer

Re: HAP Support in Delivery

PostWed May 02, 2018 8:18 pm

Jim Simon wrote:It's quite old and simple codec. Something like Daniel2 should be better/modern replacement (and sort of free now).


Seems like daniel2 is only working on Windows atm, but since lots of content creators are working on Mac this means transcoding again, which is time consuming and avoiding that is exactly the reason for the feature request.
You think HAP is old? The initial GitHub commit is from September 2012, that is not that old for an codec, and it is actively developed. Up to FullHD 30MBit one of the best alternatives on media servers is still MPEG2, now that is an old codec..

Jim Simon wrote:Saying this playing 4K is not that difficult today even with ProRes, Cineform etc ( you can do it from eg. NUC based tiny player). If you have problems it's because you may be using old and crappy QT engine on PC or your app/player is not really well written.

I agree that NUC and SBC became very powerful recently, but I strongly doubt that you can play four streams of 4k 150Mbit 60fps from it. Let alone doing geometry mapping, manipulate the output with effect engines and synchronise multiple machines. This would render systems like PandorasBox, Whatout, Resolume, D3 etc. kinda obsolete and overkill with their Xeon-CPU, nVidia M4000, SSD-Raids 10GB-LAN Workstations.

Jim Simon wrote:You may be happy as ffmpeg has added HAP encoder not long time ago.

I know about ffmpeg support for HAP, but first their implementation is visually inferior to the qt-plugin by the known "native" implementations and second I want to avoid transcoding, since it costs to much time in the usual fast paced live event situations, where you have last minute changes during rehearsals, or even during the show.

Chad Capeland wrote:I've been playing back video files at live events for 20 years.

Never heard of HAP. These days, it's always H.264. It always works flawlessly.

h264 is not meant to be a " live playback" codec, it is designed for small file size and consumer robustness. So yes you can play it back quite safely, but you don't want to stress your machine with decoding to many streams at once, and you definitely don't want h264 (or any other VBR, VFR Codec) to synchronise streams.
And don't even think about syncing multiple machines to frame synced playback via network.
I could easily continue the list of where and why h264 is not suitable in lots of todays show situations, like reverse playback, "randomly" jumping timecode, low latency play and pause of clips and so on. I think you could get my point.
In such demanding situations, you want constant bitrate codecs (like MPEG2, HAP, Image sequences) with reliable and predictable playback.

Chad Capeland wrote:Strange that in 2018 HAP still uses BC3 compression.

It works quite well.
Though there is a request for BC6 integration which the dev promised to consider.
But since HAP is not meant to be the cutting edge push boundaries codec but more the LTS plays reliable type, they are quite conservative with adding features that might break file backwards-compatibility which I think is very necessary for the target users.
Offline

Andrew Kolakowski

  • Posts: 5350
  • Joined: Tue Sep 11, 2012 10:20 am

Re: HAP Support in Delivery

PostWed May 02, 2018 9:37 pm

Daniel2 for Mac and Linux is coming. They announced it about month ago.

Hmm...I had to build 2x4K 60p streams "tiny player" with 10bit surface about 5 years ago (with DCP alike quality, not something compressed). 2x 4K 60p can be done today without full size PC case (but maybe something bigger than NUC). You just need a good "player" ( I have not used anything standard/obvious for this task) which can do manipulations on GPU (and it's well optimised for this) and fast codec like Cineform. 4x 4K 60p is pushing to far I think, but from normal size machine should be not an issue.
HAP is rather simple and not very efficient. It uses quite high bitrate for given quality. This is why I think Daniel2 is sort of next step.
Offline
User avatar

Chad Capeland

  • Posts: 2228
  • Joined: Mon Nov 10, 2014 9:40 pm

Re: HAP Support in Delivery

PostThu May 03, 2018 11:31 am

FarbSpielRaum wrote:You think HAP is old?


The Quicktime codec is not old, but the underlying compression is from 1997. The only reason it isn't patent encumbered is that the patents expired.

I know interoperability is the goal, but Fusion and Generation support more modern texture compression technology and the image quality difference is huge. Why HAP doesn't support BC6h or BC7 or ATSC is just strange.
Chad Capeland
Indicated, LLC
www.floweffects.com
Offline

Andrew Kolakowski

  • Posts: 5350
  • Joined: Tue Sep 11, 2012 10:20 am

Re: HAP Support in Delivery

PostThu May 03, 2018 4:17 pm

Is current HAP codec 8bit only?
Offline
User avatar

FarbSpielRaum

  • Posts: 5
  • Joined: Sun Apr 29, 2018 7:35 am
  • Location: Munich, Germany
  • Real Name: Johannes Mayrhofer

Re: HAP Support in Delivery

PostThu May 03, 2018 4:30 pm

I appreciate your comments and I understand that there are some very promising codecs and texture compression technologies out there and I definitely would welcome to have them either in the playback software of Pandoras Box, Whatchout, Disguise (former D3 Systems as I learned today), QLab etc. or have them in the HAP codec itself.

I have to admit the daniel2 codec has some impressive features. But they are quite unclear on the terms and potential cost of licensing, which is not really inviting for developers to integrate it into their projects. Maybe it is coming to a point in the future when daniel2 proves it self to be a good alternative for HAP, but that would not solve the current problem of HAP being an established playback codec lacking native encoding solutions in content creation suites.
I would link the discussion on HAP support in the AdobeMediaEncoder if I was allowed to use external links.
If you google for it, you will find there is quite a user base relying on HAP.

Right now I just can repeat my request to have HAP support in DaVinci.
The simplicity and age of its underlying technology could even help to implement it relatively easy, as well as its to my opinion well documented reference implementation and it being licensed under a simple FreeBSD license.

Andrew Kolakowski wrote:Is current HAP codec 8bit only?

iirc HAP uses whatever bit depth you through at it input-wise
Offline

Andrew Kolakowski

  • Posts: 5350
  • Joined: Tue Sep 11, 2012 10:20 am

Re: HAP Support in Delivery

PostThu May 03, 2018 7:24 pm

FarbSpielRaum wrote:
Andrew Kolakowski wrote:Is current HAP codec 8bit only?

iirc HAP uses whatever bit depth you through at it input-wise


Are you sure?
How do you encode 8bit+? ffmpeg only supports 8bit.
In AE you have to add codec to Adobe QT rules file in order to pass 8bit+ data. Have you ever tried it?
Mac Batch tool does things using AVFoundation, so you have no idea what is happening inside.
Offline

Andrew Kolakowski

  • Posts: 5350
  • Joined: Tue Sep 11, 2012 10:20 am

Re: HAP Support in Delivery

PostThu May 03, 2018 7:29 pm

FarbSpielRaum wrote:
Right now I just can repeat my request to have HAP support in DaVinci.
The simplicity and age of its underlying technology could even help to implement it relatively easy, as well as its to my opinion well documented reference implementation and it being licensed under a simple FreeBSD license.



Problem is that BM is not going to be interested in maintaining such a solution.
They could link to existing libraries, but tomorrow guy who made them may decide to stop working on it and you have dead implementation. BM is to busy with 1000s more important things than maintaining such a codec. If it would be at leats something cutting edge, but it's nothing special at all.

What could be done and has been discussed many times is opening Resolve for 3rd party export plugins. Then interested people could even sponsor development of HAS Resolve exporter (if it's so important for them).
For BM this represents tiny amount of Resolve users. Very tiny. You have to be realistic here. There were tons of much more "realistic" requests which most likely will never happen.
Offline
User avatar

Chad Capeland

  • Posts: 2228
  • Joined: Mon Nov 10, 2014 9:40 pm

Re: HAP Support in Delivery

PostFri May 04, 2018 1:40 am

Yeah, that's the way to do it. There's a couple readily available solutions, either Fusion's format plugins or OIIO.
Chad Capeland
Indicated, LLC
www.floweffects.com
Offline
User avatar

FarbSpielRaum

  • Posts: 5
  • Joined: Sun Apr 29, 2018 7:35 am
  • Location: Munich, Germany
  • Real Name: Johannes Mayrhofer

Re: HAP Support in Delivery

PostThu Jun 14, 2018 6:26 am

Ok, I realise it is unrealistic for BMD to implement it. And another call for third-party codec support is probably just another drop in the ocean I guess..

But:
Chad Capeland wrote:Why HAP doesn't support BC6h or BC7 or ATSC is just strange.


I just learned that BC7 support generally is in HAP, though a proper implementation is lacking.
https://github.com/Vidvox/hap/blob/master/documentation/HapVideoDRAFT.md
Offline

davidlublin

  • Posts: 1
  • Joined: Thu Jul 19, 2018 1:42 am
  • Real Name: David Lublin

Re: HAP Support in Delivery

PostThu Jul 19, 2018 2:14 am

Hey all!

Dave from VIDVOX here – just noticed this thread so I thought I'd chime in and reply to a few things...

As a general aside, you can check out hap.video for the current latest info on HAP!

2. "Problem is that BM is not going to be interested in maintaining such a solution.
They could link to existing libraries, but tomorrow guy who made them may decide to stop working on it and you have dead implementation"

While anything is possible, HAP isn't just some guy – though we did work with Tom Butterworth to create the initial release, at this point there are over a dozen companies, including some of the biggest media servers out there, who are invested in the format and it isn't going anywhere anytime soon.

3. "Why HAP doesn't support BC6h or BC7 or ATSC is just strange."

The original version of HAP was very much designed to be a baseline that could be widely supported, particularly for older hardware where the codec could make a big difference performance-wise. Five years ago SSD drives were becoming widely standard and affordable – it was a great way to upgrade old machines that couldn't handle newer GPUs and to really take advantage of the newer (especially portable) hardware of the time.

Now that computers have generally gotten significantly faster and "modern" GPUs are pretty much the norm, the emphasis for the next version of HAP is moving more towards improved quality. Over the next year we are going to be working with the other major companies involved to come up with the first big revision that aims to address a lot of the things discussed in this thread!
(if BM picks up support and would like to be part of that conversation they should feel free to get in touch with us!)

4. "I just learned that BC7 support generally is in HAP, though a proper implementation is lacking."

As someone noted in this thread, with many open source projects related to open specifications, one of the biggest efforts is keeping everyone "up to date" with the latest version of the specification for compatibility. That said, it is important for devs in the community to have some freedom to experiment with things like different texture formats as this kind of research is valuable in creating the next generation of the spec. BC7 seems promising and it is likely that more devs will pick up support as the open source implementation codebases become vetted and updated, but some may choose to wait for the major revision that is in the pipeline.

- DL @ VV
Offline

jhoepffner

  • Posts: 25
  • Joined: Wed Sep 05, 2018 9:43 am
  • Location: Paris
  • Real Name: Jacques Hoepffner

Re: HAP Support in Delivery

PostFri Nov 02, 2018 1:38 pm

Hello,
I also vote for Hap implementation. I work for theater, editing in daVinci and using TouchDesigner and Isadora to play my medias for theater and dance.
Quite all the media player are recognizing Hap at the moment (Watchout, Disguise, Resolume, MadMapper etc.).
It would be very useful to avoid the necessity to go through another decoder/encoder to obtain it.
Thank you!
Jacques
MSI G65 / W10 / RAM 32 / nVidia 1070 / Intel Core i7-8750H / DVR 15.1
MBP 15" (2002) / OS 10.13.6 / RAM 16 / nVidia 650M / Intell i7 / DVR 15.1
Offline
User avatar

Nocturnal

  • Posts: 1
  • Joined: Thu Jun 06, 2019 3:28 am
  • Location: New Zealand
  • Real Name: Delainy Kennedy

Re: HAP Support in Delivery

PostThu Jun 06, 2019 4:01 am

Hey Everyone,

I would like to add another bump to this.

Trying to make the transition from adobe products but HAP and DXV encoding is essential for us. We work in live productions and installations. Mostly using media servers for multi-layer, high-resolution playback. Currently, HAP is the industry standard for this kind of playback.

Alternatively.. Is it possible to make and OpenFX plug in that allows HAP export?
Offline

wolfgang hershey

  • Posts: 132
  • Joined: Sun Feb 07, 2016 12:41 am
  • Location: chinatowns everywhere

Re: HAP Support in Delivery

PostFri Jun 14, 2019 4:49 pm

YES to HAP

multiscreen / theater / media player installs / VJ

I do that sort of work
and yes HAP has gotten better and better

and it would be great to have
re-encoding is no fun :-(

+1

WH
imac/hackintosh 14,2 (4-core 4.0 GHz i7) - 32GB - 980Ti
OS X 10.13.6 / 15.3 Resolve Studio - DeckLink Studio 4k
10Gb ethernet network

Return to DaVinci Resolve

Who is online

Users browsing this forum: Bing [Bot], Dougdi, Michael_Andreas, Peter Chamberlain, Rian Krenzer, Will Vazquez and 57 guests