Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
|
![]() |
|
Thread Tools | Search this Thread | Display Modes |
![]() |
#1 | Link |
Registered User
Join Date: Jun 2008
Posts: 10
|
Encoding H.264 while preserving RGB colorspace / 4:4:4
I have pure RGB video, mostly CGI type footage, that I wish to encode in H.264 while preserving the full 4:4:4 chroma.
From what I can read, the specification supports it via the H.264/AVC High 4:4:4 Intra/Predictive profiles. But, I can't find any information on how to use this or which applications/encoders support it. x264 won't take anything but yv12, so where do I go to encode in the full RGB colorspace? I realize that RGB encoding currently is (much) less efficient than YV12, but I can live with that, as long as I'm able to do it ![]() Please, any help on the subject is greatly appreciated. Reference: High-Fidelity RGB Video Coding Using Adaptive Inter-Plane Weighted Prediction (if I confused any terms, excuse me. I'm still learning) |
![]() |
![]() |
![]() |
#3 | Link |
Registered User
Join Date: Jun 2008
Posts: 10
|
If I understand right, the idea is to separate each color channel (via avisynth?) treating each R/G/B as luminance while neutralizing the chroma. Then feed each luminance plane into x264 at the same time to produce a final encode?
Although it sounds more like you're saying I have to encode each stream separately, but if I do that then how do I combine the three channels afterwards to make a watchable final file? I'm a little confused. Please be kind and elaborate a tiny bit on which app I should use for each step. |
![]() |
![]() |
![]() |
#4 | Link |
Registered User
Join Date: May 2006
Posts: 957
|
Avisynth will do both processing steps for you.
For splitting use: ShowRed("yv12"), ShowGreen("yv12") and ShowBlue("yv12") Re-combining: MergeRGB(red_clip, green_clip, blue_clip)
__________________
x264 log explained || x264 deblocking how-to preset -> tune -> user set options -> fast first pass -> profile -> level Doom10 - Of course it's better, it's one more. |
![]() |
![]() |
![]() |
#5 | Link |
Registered User
Join Date: Jun 2008
Posts: 10
|
I encoded each stream and got 3 very large files. The same 355MB 10 second file which ordinarily compresses neatly to 24MB, turned into 3 large streams each about 70MB, each encoded much slower than usual as well, using the same compression profile. Does this seem right?
Now that it's done, I can feed the files back into avisynth using the MergeRGB command, but how do I get the resulting output into a watchable file without re-encoding? |
![]() |
![]() |
![]() |
#6 | Link |
Registered User
Join Date: May 2006
Posts: 957
|
play the avs file
__________________
x264 log explained || x264 deblocking how-to preset -> tune -> user set options -> fast first pass -> profile -> level Doom10 - Of course it's better, it's one more. |
![]() |
![]() |
![]() |
#12 | Link | ||
Registered User
Join Date: Jan 2017
Posts: 37
|
Quote:
Quote:
|
||
![]() |
![]() |
![]() |
#13 | Link |
Registered Developer
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,310
|
Cineform has been standardized as SMPTE VC-5, so even if GoPro shuts down their support, the standardized codec lives on.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders |
![]() |
![]() |
![]() |
#14 | Link | |
Registered User
Join Date: Nov 2004
Location: Poland
Posts: 2,834
|
Quote:
Adobe, Resolve, Scratch all have native support now. If you want o build own encoder for example you can drop line here and get your own SDK license key (if they decide it's worth it): https://gopro.com/connect#cineform |
|
![]() |
![]() |
![]() |
Tags |
h.264, rgb |
Thread Tools | Search this Thread |
Display Modes | |
|
|