HELP - HAP workflow with M1 and Intel in Premiere and VDMX

Hey everyone - running into a large issue related to my video editing and VJ workflow.

Ive been using the HAP codec for years now while running VDMX. I have also simultaneously been taking those exported HAP videos and importing them into Adobe Premiere Pro editing sequences.

Ever since Apple and more specifically Adobe have dropped HAP support - its been more and more challenging trying to maintain this workflow.

Earlier this year I finally upgraded my system from a 2012 MBP to the new 2021 Macbook Pro M1 Max.

I just recently realized that I was still running an Intel based version of Premiere Pro on my M1 MBP - I fully upgraded to latest versions of Premiere, and now none of the HAP clips will connect in my sequences. I even tried installing a trial of “AfterCodecs” - but this seems to only allow me to export HAP, not get HAP to show up in Media Browser, or be able to import HAP clips.

Thankfully I have found a temporary workaround - where I can open up the Intel version of Premiere and HAP works. So it appears as if the issue is the M1. But long term - id like to use the native version of M1 in Premiere instead of the Intel version.

MY MAIN QUESTION:

Is there a better codec now to use for VDMX than HAP? Cause id really like to keep editing with my VDMX exports instead of having to export a ProRes version of my visuals for Editing, and a HAP version for VDMX

Any input would be GREATLY appreciated :)

personally. i would use something like prores for your master files and from there export to hap etc.

and then use the prores files for editing.

The reason you can’t use HAP with the Adobe 2022 suite (Premiere Pro, Media Encoder, After Effects), is because Adobe designed all of these native silicon (M1) applications off of Apples AVFoundation codec compatability.

I’m on an M1 Max MBP and I have to run the Intel Version of Premiere Pro 2022 because I have years worth of Projects that use GoPro’s Cineform codec (was supported cross platform between Macs and PCs).

There are a large number of actively used codecs and legacy codecs that are not supported by the native version of Adobe’s suite. (HAP being one of them).

If you want to only use the native build of Premiere, Media Encoder, or After Effects, then you’ll want to start working VJing with ProRes or H.264 (keyframe for every frame) footage. Your M1 Max can handle H264 VJing just fine IMO, but you need to make sure they’re encoded properly, or it will be hard to fast seek frames in your clips.

The AVFoundation Codecs: https://developer.apple.com/documentation/avfoundation/avvideocodectype
HEVC
H.264
ProRes

1 Like

Thanks so much for your thoughtful response! I didnt even realize until yesterday that I was not running the native M1 version of Premiere. (i was using v15.1 - a bit of googling revealed native M1 didnt start til v15.4…now im using v22.3.1 - both Intel and M1) - despite that, I was amazed how fast Premiere was working with the Intel version!

As for H.264 encoding for VJing - is it mainly making sure the keyframe is set to “every frame” in order to use well with VDMX? Anything else to keep in mind

Going forward - all my new video work, i will try and use the native M1 version (im assuming its even faster) and as @cmatts mentioned - start mastering my final visuals as ProRes

Yes, 100%. H.264 can be a nasty format for older machines, but many newer machines have the ability for some sort of hardware H.264 decoding. With that said, when an H.264 video is created, to squeeze out a smaller file size, some frames are full images (key frames (or i Frames)), and others are B frames or P frames (predictive frames, compressed data, not a full image). P frames and B frames are resource heavy when decoding. And when you jump to random parts of your video clip, if you jump to a P frame, your computer has to essentially, look back to the next keyframe before it, then step through all the p frames after to compute what that specific p frame actually looks back – hence a noticable delay.

If you make every frame an i frame (or key frame), your file size will be bigger, but there’s less work that your computer has to do to display that image. (Less guess work we could say!?)

All that being said, when I switched from my 2015 Macbook Pro to a new M1 Max MBP I converted 8TB of video (HAP, Apple Intermediate Codec (AIC), ProRes, PhotoJPEG, etc) down to 3TB of H.264 and put it on a fast external SSD. There are pros and cons to this, but for the most part, this machine has no issues with H.264, and most of these clips are all sorts of video resolutions, most 1080p or under.

I’ve been using VDMX since 2009, and my advice to most users, is test out the codecs with your hardware and find out what works best for you. Back in the day, HAP and H.264 weren’t even a choice, and for my 2015 MBP that still works, I still keep those old VJ drives with the HAP and AIC VJ clips on it because those perform best for that machine.

(Sorry for the long response, but hopefully this will help someone troubleshoot their own VJ setup in the future).

More about I, B, and P frames: https://ottverse.com/i-p-b-frames-idr-keyframes-differences-usecases/

1 Like

Amazing! thanks so much again for taking the time to write such a response. Ive been using VDMX since 2009 too! lol - i def remember them Photo JPG and AIC days, hahaha. I also just switched a few months ago from a 2012 MBP to the fully loaded M1 Max MBP - words can not describe how refreshing and amazing the experience has been!

You mentioned you recompressed your video library to h.264 saying *“There are pros and cons to this, but for the most part, this machine has no issues with H.264, and most of these clips are all sorts of video resolutions, most 1080p or under.”

Could you elaborate on this? If the h.264 videos are compressed correctly (every keyframe) then what kind of cons are we talking about?

In the end, after years of VJing on a slow ass computer - i want ZERO issues when it comes to playback, scrolling through a video, adding effects (like rutt etra, kaleidescope, etc) on at least 4 to 5 layers at a time - in general the M1 Max should have no problem with this - but Im thinking i should probably stick to HAP for now as its still the best for live video no? I have not tried ProRes LT before - but that would probably be bigger than HAP clips.

Anyway, thanks for the input!!

1 Like

Could you elaborate on this? If the h.264 videos are compressed correctly (every keyframe) then what kind of cons are we talking about?

Happily! My style in most live shows is more visual remixing. I tend to do a lot of live looping to video clips. In / Out markers with the loop or reverse loop mode.

The first loop sometimes has a slight frame drop when it repeats until that gets stored into memory, then it loops smooth there after.

Reverse Loops have a harder time with H.264 files. H.264 files also seem to have a max speed rate. It’s an easy work around, you just find out what that rate is and set the MIN / MAX values to not exceed that, but with HAP, I could 5X videos back and forth without any delays.

Compression: Depending on how you export your H.264 files, going from something like a an HD or UHD edited video to a compressed H.264 can add a lot a noise. This mainly depends on your encoding setttings, but it can take a lot of tweaking to get this right for perfect picture quality.

HAP is not perfect, but I have noticed less noise in videos with a lot of motion (this can also be an issue with the encoder settings).

Playing back videos in reverse can get weird too, sometimes jerky at first, but not so with HAP

H.264 vs H.264, if something was downloaded from the web, its most likely H.264, so it can be hard to quickly tell if it was reencoded directly. With HAP .MOV files, you can just see that it’s the HAP codec and feel confident that it was encoded correctly. I had a Halloween show and I had two folders with the same H.264 .MP4 files in them, one was downloaded from the web, the others I batch processed to have a Keyframe for every frame. Something happened and I forgot which one was which, but I found out very quickly while performing, that I loaded in the wrong folder first. Not all H.264s are the same!

2 Likes

excellent. thanks for that.

any thoughts on performing with ProRes clips?

They work fine, but in my experiments with them in the past they were a little more demanding on the machine than HAP.

I haven’t compared the two with M1 Macs yet.

Hi Koolik,

I even tried installing a trial of “AfterCodecs” - but this seems to only allow me to export HAP, not get HAP to show up in Media Browser, or be able to import HAP clips.

Indeed, AfterCodecs is an exporter plugin. If you need to import HAP audiovideo files into Adobe software, there is the Influx Importer plugin for that purpose https://www.autokroma.com/Influx and it also supports others codecs. Both AfterCodecs and Influx Importer supports native Apple Silicon (M1, M2 etc.)

H264 is a fine codec if you use ALL-INTRA (every key = a keyframe as you said)

HAP is made to be decoded fast on GPU. Probably ProRes gives better compression ratio, quality and colors than Hap codecs so if you can afford ProRes LT, go for it ;)

Cheers

1 Like

Thanks! I just bought Influx while it’s on sale.

I look forward to editing HAP files in Premiere Pro and After Effects!

Great. For anyone reading this, it’s always best to test the free demo to make sure it’s what you need !

thanks for the info. only seeing your post now. Are you saying if I get Influx - i could theoretically import HAP clips into the native M1 version of premiere? Ive been running Premiere in Rosetta the whole year now.

@Koolik Try out the demo.