Git Product home page Git Product logo

hap-qt-codec's Introduction

QuickTime codecs are no longer supported. Please use a modern alternative, such as one listed on the Hap video website.

Hap QuickTime Codec

Hap is a video codec for fast decompression on modern graphics hardware. This is the home of the Hap QuickTime codec. For general information about Hap, see the Hap project.

The Hap QuickTime codec supports encoding and decoding Hap video. Video can be decoded to RGB(A) formats for playback in any existing application, or if an application explicitly requests it, to compressed texture formats for accelerated playback on graphics hardware.

Note that there is no advantage to using Hap over other codecs if the application you will be using for playback does not support accelerated Hap playback.

For information and example code to support accelerated playback via this codec in your application, see the Hap sample code.

Download

An installer for the Hap QuickTime component can be downloaded from the Releases page.

Requires at minimum MacOS 10.6 Snow Leapord, or Windows Vista with QuickTime 7 installed.

Using the Hap QuickTime Codec

After installation, the codec will show up when exporting video in applications which support QuickTime. Four variants of the codec exist:

  • Hap - Reasonable image quality
  • Hap Alpha - Reasonable image quality with an alpha channel
  • Hap Q - Good image quality at a higher data-rate
  • Hap Q Alpha - Good image quality with an alpha channel at a higher data-rate

Hap and Hap Alpha have a quality setting. Although QuickTime displays a slider, it has only two effective settings: below "High" a fast low-quality encoder is used, and at "High" or above a slower high-quality encoder is used.

Note that the current QuickTime Player on macOS does not support non-Apple codecs. Use QuickTime Player 7 or a third-party player.

Other software for encoding and decoding Hap

Open-Source

The Hap codec project is open-source, licensed under a FreeBSD License, meaning you can use it in your commercial or non-commercial applications free of charge.

This project was originally written by Tom Butterworth and commissioned by VIDVOX, 2012.

hap-qt-codec's People

Contributors

bangnoise avatar dlublin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hap-qt-codec's Issues

AVF Batch Converter HAP quality slider does not affect file size

Is it true that the HAP quality does not affect the file size? It should, as far as I understand. But I tried to convert some files today and it does not matter if I convert the files with 0% quality or 75% quality. The file size stays the same:

image

Is that a bug (or a feature)?

No Alpha Export

Hello,

It seems there is no Alpha Channel exported in a composition containing alpha properties. Im Using hap+alpha. Also checked DXV3 codec with alpha on the same composition and it works.

I guess the problem is that the renderer isnt recognising that the codec/plugin is capable of alpha.
There is no checkbox wether rendering in 24bit or 32bit (32bit is the key). This means premiere streams no alpha information in the alphacapable codec -> every frame is 100% visible.

are there any quick fixes?

HAP Q Alpha Export from After Effects

I got a problem with rendering a HAP Q Alpha directly from After Effects. The output module can't be set to render both RGB and Alpha at the same time - and so the rendered .mov does not have any information in the alphachannel stored.

hap_q_alpha_ae_export

Note: Everything works fine with the regular HAP Alpha.

Does anyone else have the same issue?

Setup: HAP v11, Windows 10, AE 2015.3 (also tested with AE 2014)

Decide how different formats are best represented to users

Some choices are determined by the presence of an alpha channel and can use existing default QT UI to convey that choice to the codec, but the choice between eg scaled YCoCg DXT5 and regular DXT1, which both have no alpha but substantially different data-rates, would be better communicated either

  1. By UI in the compressor settings dialog which makes the quality/data-rate benefit clear
  2. By the appearance of several distinct codecs as choices

This also affects how we detect the compressed format of movies for playback - easier with distinct codecs as we could do away with our custom image description extension.

This decision will be easier once we have settled on a set of pixel formats.

Gradients making files huge and sometimes unreadable

Hello, after a lot of testing with various videos we noticed some movies with the same size would lead to very different encoding and playback results, after more test we discovered that the more gradient the input file has in a frame the harder it was to encode for hap, we are talking about a movie suddenly jumping to 1GB bitrate for a few frames in gradient intensive scenes and becoming unplayable because it is too demanding for the computer.

I could post an example file if needed.

By gradient I mean smokes blowing above a rotating circle of earth with layered lightning above and flashes of lights. On the other hand a simple flag with the same resolution will encode easily and playback smoothly. Noise won't display this effect, only gradients, I can encode and easily play back a 10240x1080 file that is essentially moving fractal noise with transparent color bars and a moving line, but if I layed it with smoke and lights it becomes problematic.

It is worse if the movie is above HD, the ratio between frame with a decent bitrate and problematic one is greater.

Because of this we often have to segment our files or stretch them until the bitrate becomes acceptable in the problematic parts, we would like to avoid that of course.

Thanks for the otherwise awesome codec!

Feature request: Customizable chunk at encoding.

Hi,

After installing QuickTime Hap codec for Windows, QuickTime based software like AfterEffect could only choose between pixel formats (Hap HapQ...)

It could be nice to benefit from the nice hap multi-chunk feature, and allowing the user to change the hard coded value from 1 chunk to another value in a "codec settings" dialog box.

A quicker solution could also to force 32 chunks for any hap. This let the decoder software decide how many thread it will allow to parallelize hap chunk decoding. This supposing that no CPU have more than 32 core today...

Thanks in advance for your concern about this issue.

video thready

Hi all,

I'm testing HAP, on After Effect I created a 30sec video (1024x578) with HAP codec.

When using it on Modul8 (vj'ing program) the video is very thready, it won't be possible to use this on a live performance...
I haven't any issues with other codec before...

FOURCC value for "Hap Q Alpha"?

Can anyone tell me the correct FOURCC value for Hap Q Alpha?

I'm only aware of these ones:

#define FOURCC_Hap1 MAKEFOURCC('H','a','p','1') // Hap
#define FOURCC_Hap5 MAKEFOURCC('H','a','p','5') // Hap Alpha
#define FOURCC_HapY MAKEFOURCC('H','a','p','Y') // Hap Q
/*                    ???                    */ // Hap Q Alpha

And by the way:
Where does the letter "Q" come from within the "Hap Q" and "Hap Q Alpha" names?
Hap Q has "YCoCg" color space for instance, so what does the "Q" mean in that context?
The nomenclature seems a little confusing to me.

HAP Codec File Size

I converted a 1920x1080 PhotoJPEG mov file to the standard hap 76% format and the file size almost doubles. Is this normal?

No playback in OSX 10.9.

I am using a 2,8 Ghz Intel Core i7 with 16 GB RAM.
Used the installer "Hap_Codec_1.dmg". Running Mavericks 10.9.
No playback with quicktime.

Videos encoded with HAP Q suffer low frame rate

I tried exporting a video with Hap Q from Cinema 4d and the playback is skipping frames, if I use the Hap version, everything seems to play nice. I am on 10.7. Any idea what might be the reason for this? The Hap Q video included in the QT example plays OK.

HAP quicktime video flickering

Hello,

I have HAP videos I rendered at around 4k in size. When I play them back they look fine, but when I airplay them onto another monitor, the video starts to flicker. Also when I turn off the airplay, the video continues to flicker. It goes from darker video to brighter video.

Has anyone else experienced this? Is there a fix for this?

Can't install HAP codec on Windows.

Hello!

I have a problem to install codec on my office PC. Installation stops with the massage "QuickTime for Windows must be installed to install the Hap QuickTime component".
screen

Quicktime have been installed and then deleted and reinstalled but no luck. In your source code there is a line next to this text with condition (I'm not a programmer) ""
I searched my registry but there is no "Apple Computer, Inc." in
HKEY_LOCAL_MACHINE\SOFTWARE\

"QuickTime 7.7.9 for Windows"
Windows 7 Professional.

Maybe there need to install different version of QT?

Best regards,
Alexander

HAPQ Color banding (looks better in HAP)

I am comparing (for now just 1 file) in many encoder and including HAP. My final outputs are used in Dataton Watchout (http://www.dataton.com/watchout) which with version 6.x includes HAP support.

On this one file I am testing, I see some color variations and some noticeable banding with HAPQ that actually looks BETTER with HAP.
Here are some still frames from encode:
Original File:
https://dl.dropboxusercontent.com/u/20646203/Original%20%28QT%20Animation%29.png

HAP:
https://dl.dropboxusercontent.com/u/20646203/HAP.png

HAP Q:
https://dl.dropboxusercontent.com/u/20646203/HAPQ.png

Differences are subtle... best if you put on layers in Photoshop or something like that so you can toggle on/off to see differences. Here is what I see:
HAP:

  • overall color/contrast looks very very close to original
  • in upper left corner I see some color banding. slight, but there.

HAP Q:

  • overall color/contrast is off a bit from the original. Less contrast and a bit less saturation I would say
  • upper left corner banding is noticeably worse, and I would say unacceptable for my application.

So... What's my question? Well - if these results were opposite, I think it would make a lot of sense, and I would just assume the larger file/better setting is getting better results.. but the fact that HAP Q looks worse than HAP has me asking... Why? And can I better understand what kind of content HAP is 'good' at and 'not so good' at?

Thanks for listening :-)
-kt

Hap not working on High Sierra

Hap seems to not be functioning on High Sierra (OSX 10.13).

All hap files show up black in all software I have tried (After effects, mpeg streamclip, premier, max/jitter, modul8 etc.) and rendering to Hap produces empty files.

Is there a fix for this?
Or do I need to reinstall my OS?
Any help would be much appriciated.

Thanks

Slow Rendering to HAP

I'm finding renders to HAP out of AE CC are going really slow.
A 10 second test file at 1280x720 with white noise is taking 3m43s to render to HAP.
Rendering to HAP-Q, DXV, ProRes, Animation, or a TGA sequence takes between 10-15s.

Is this normal?
I am using Mac OS X, and have tested on two machines w/ HAP codec v4, v5, and v6.

Encoding Quality in FFMPEG

I'm trying to understand why I am getting substantially worse results while encoding to HAP using FFMPEG vs. Adobe Media Encoder. My problem is I need to do Chuncks encoding (which cannot be set using AME) but the results from FFMPEG are not up to quality.
See results here:
https://www.dropbox.com/s/4fakivsytefl60c/HAP%20Test.tif?dl=0
Here is my FF command line:
ffmpeg.exe -i "H:_Render\test.mov" -vcodec hap -format hap_q "H:_Render\output.mov"

AME is set to HAP Q, Quality=100, Render at Max Depth (not that any of those settings makes a difference if my understanding is correct).
Any ideas on how I can get the matching quality from FFMPEG or how ELSE I can do HAP encoding with Chunks ON WINDOWS?
Thanks!

Windows port

Hi,

I've used something similar to Hap/DXV in some projects, albeit with my own format (DXT files packed inside a ZIP file). I'd really like to use something like Hap/DXV instead, to improve my content production pipeline.

Hap looks really clean, and implementing a custom decoder seems simple enough. The problem with Hap for me, is that there seems to be no way to produce a Hap videos on Windows. I've seen a Windows port mentioned a couple of times (in forums, etc). Is that still something you guys are still working on?

Thanks!

Bit depth and color in HAP?

We are trying to determine the best data formats to output from edit systems for conversion to HAP and HAP/Q. What is the bit-depth (8.10.16?) of HAP & HAP/Q, and are they 422 or 444 with regards to color?

Previewing HAP Alpha files in QT7 and MPEG Streamclip produce artifacts

Noticed that when I load HAP (with Alpha) encoded files into Quicktime7 or MPEG Streamclip, there is extra color information that is being produced. I'm unable to convert these files properly with a matted black background. Export produces the same color artifacts. In the files below you will see what the HAP with Alpha looks like (top) and the expected result.

screen shot 2017-08-24 at 10 23 15 am

screen shot 2017-08-24 at 10 23 43 am

Render times slow on 12 core vs 6 core mac pro

I did a quick experiment on my last job with rendering on different machines.

Project specs:
2245x1124 Hap9Alpha
rendered out of After Effects
We are requested to deliver Hap9 by our D3 operator, moving up to a newer build of HAP is not an option.

I rendered the exact same project from the same drives and experienced the following results:

6 Core Mac Pro/32GB RAM/D700 - 4 Min 55 Sec
12 Core Mac Pro/32 GB RAM/D700 - 34 Min 12 Sec
iMac 3.4i7/16GB RAM/AMD Radeon HD 6970M 1024 MB - 31min 31Sec

What I saw during the render was the processor usage varied greatly between the machines. The 6 core was using 90% of all available processors at the same time while the imac and the 12 core was splitting the load up from one processor to another. Is this a known issue or limitation of the codec?

I've attached pics of the imac and 6 core render times. These are direct compariosons, same files, same hard drives, etc. I didn't snap a shot of the 12 core but it was very similar to the imac.

Thanks.

img_2706
img_2707

colour banding

I get a lot of colour banding problems with HAP, it does not seem to matter which implementation, quicktime, DirectShow or avfoundation. I have used adobe media encoder, ffmpg and the avfoundation encoder to encode from a variety of sources and going to hap and hap q. No matter what I get ugly banding on subtle colour differences, I have some animated clouds that just never look good. Is this a known issue? Is there a work around, such as a 10 bit implementation? Or any tricks in encoding, I am at 100% quality all the time.

Encoding fails with 7200 x 3060 resolution

I'm trying to encode a movie to HAPQ which is 7200 x 3060. With MPEG-StreamClip the encoding fails with 'compression error'. It also fails in After Effects.

HAP is fine.

I have tried encoding from a PNG sequence and another HAPQ video.

AE gets stuck

User reports AE gets stuck exporting to Hap after 20 frames.

After Effects error: Rendering error while writing to file "C:\Users...\main.mov". An output module failed. The file may be damaged or corrupted. (-1610153464).

At a guess it blindly supplies frames from a limited pool and throws an error when its pool runs dry (because we're emitting frames slower than AE supplies them). We could force the encoder to only hold on to a limited number of frames (try 10). This would limit the opportunity to scale multithreading on machines with a high number of cores.

HAP Codec Release 7 breaks Quicktime Encoding in After Effect CC 2015

I've found that by installing release 7 of the HAP codec, all quicktime encoding (any codec) in after effects fails with the error;

"Rendering error while writing file "xxx". An output module failed. The file may be damaged or corrupted. (-1610153464)"

This does not happen with release 6.

AE 2015.0.1 release, version 13.5.1.48

This is on a macbook pro retina, 15 inch early 2015. Windows 10 64bit

HAPQ v8 Crashes on Windows

I tried uninstalling/Reinstalling a few times.
Window 10 x64

HAP and HAP Alpha work fine. But HAPQ fails in all programs I tried:
QuickTime Pro Export - Crashes quicktime the moment you select HAPQ as codec
Adobe Media Encoder: Fails - "Export Error. Error compiling movie. Unknown error."
After Effects: Hangs for 30 seconds after pressing render, then fails: "After Effects warning: logged one error -- "error: Error (4) reading frame from file "". (86 :: 2)"

File I am encoding is Quicktime Animation 100 - 1920x1080x30 and is confirmed good (works with all programs as well as works when making HAP and HAP Alpha).

Are you able to reproduce this issue?

Thanks,
kt

HAP crash on encoding project with PNG32 sequence alpha

We have a large project on Adobe Premiere Pro with a clip of PNG sequence in alpha (32 bits). This cause a crash on Adobe Media Encoder when encoding in HAP (tested from 60 to 75%) on a 30 seconds video.

We have transcoded the PNG sequence clip in HAP Alpha and the encoder does not crash anymore.

Quicktime will not open HAP files without trying to convert

Even with the Quicktime component installed, HAP files still don't want to open without converting. Is there some kind of player or workaround available? I've only been able to preview them in VDMX easily and I need to preview these to clients easily so they can be walked through the presentation.

I'm brand new to this codec but I also encountered major slowdown with render times. It was happening on a larger comp in AE CC, but seemed to do better with more bite size chunks.

HAP for Win64?

Hi all here!
is there any hope for a future version for Win 64 bit?

thanks and all the best!

a.

Update to snappy 1.1.7

The release log for 1.1.4 notes a fairly substantial performance improvement.

Fix a 1% performance regression when snappy is used in PIE executables.
Improve compression performance by 5%.
Improve decompression performance by 20%.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.