HDMI Capture Problem SOLVED - AviSynth RULES!

Hello all.

My Atomos Ninja arrived today and i hooked up the GH2 right away!
The Ninja showed "i50" when the GH2 was switched on. There was no difference in behavior or display when recording was hit on the GH2, or when the display mode was altered.

My experience with the GH2 and HDMI capture suggests that you should ABSOLUTELY be recording simultaneously to the camera. When the camera is in standby it sends an altered image out the HDMI with crushed blacks and clipped highlights. This goes away when the camera is recording to an SD card. The proper procedure is to roll camera first, then start the HDMI capture. And stop the HDMI capture before stopping the camera capture.

This will prevent any additional complications to an already non-standard signal.

The Avisynth scripts in the first post were developed using an NTSC GH2. The script for 24P processing will have to be modified for PAL cameras. If you would like to post a raw 24P PAL file captured while the GH2 is in record mode, I will be happy to take a look at it.

It's also important to post the original in-camera MTS file, as well.
 
Last edited:
Ralph.

With my camera and Ninja, NOTHING changes whatsoever in the picture of the HDMI and the GH2 viewfinder when i hit the record button. Also not on any HDMI monitor. So i can't acknowledge any change in blacks or so. If this is a setup issue, please let me know.
However, will try to shoot some footage with record "on".


Martin
 
Ralph and others.

I have replaced my previous GH2/Ninja file with a new version that was recorded while the GH2 was recording.
Start GH2 Record -> Start Ninja record -> Stop Ninja record -> Stop GH2 record

24p PAL 1080i50:
http://mediatube.marvelsfilm.com/009.mov 435Mb (use right-mouse click and save)

GH2 in Cinema 24H mode and Nostalgic profile.
 
Last edited:
Hi Folks,

first of all I'm not a pro. anyway, just today I checked for the first time the hdmi out of my GH2 PAL. I captured two files with my blackmagic shuttle interface. Don't forget I captured without press the rec. button, it's liveview.
Interesting is this:

From 50i you can't get 25P
From 24P you can get 25P

if camera settings is PAL 50i the captured file is interlaced.
if camera settings is 24P CINEMA, captured file is 25P without any interlaced effects and without aliasing etc. and of course colorspace is 4:2:2.

the two files are captured as 50i.



I'm surprised, can somebody confirm this.

Sorry no movie at this time...I hope I can upload some litte tests.

Cheers
 
Last edited:
Hi Amadeus.

This can't be right. The camera can not be switched from 50i to 25p anywhere; there is no such "switch" and there is no such HDMi standard. 25P is neither supported by the camera nor by the HDMI standard. Colorspace is always 4:2:0.
Also, if 25p is extracted from the 50i signal, that proofs that - here too - Panasonic adds fields to cripple the 24p.

I do have a PSL GH2 here, in cinemamode, and it always outputs 50i.

Still waiting to hear from the cracks on this forum about the specs of the PAL footage i've supplied a few posts earlier.

I you have a Mac and FCP and/or Cinema Tools, you can analyze the clip.


Martin

Hi Folks,

first of all I'm not a pro. anyway, just today I checked for the first time the hdmi out of my GH2 PAL. I captured two files with my blackmagic shuttle interface. Don't forget I captured without press the rec. button, it's liveview.
Interesting is this:

From 50i you can't get 25P
From 24P you can get 25P

if camera settings is PAL 50i the captured file is interlaced.
if camera settings is 24P CINEMA, captured file is 25P without any interlaced effects and without aliasing etc. and of course colorspace is 4:2:2.

the two files are captured as 50i.



I'm surprised, can somebody confirm this.

Sorry no movie at this time...I hope I can upload some litte tests.

Cheers
 
I loaded the two files in AE

the two files have the same prop. but when you interprete the footage and disable the settings upper field first/lower field first. You will see two different files on screen!
the 24P looks progressive while the 50i looks interlaced. So there must be a difference.

here the media info ( after captured with BM ) of one of the files, btw they have the same prop.

show_img.php



the 24P is not cripple is around 60 sec. without crippling.

o.k. i will upload the file...next days





show_img.php
 
Last edited:
Ralph & the gang.

After two days of recording many clips from the GH2 via HDMI i must say that i'm not impressed by the overall quality. The AVCHD image looks far better in all cases; it's cleaner, sharper and totally different in respect to color reproduction. It seems that a lot of image processing is not forwarded to the HDMI port. Mind you, i'm judging this from de-interlaced 50i footage.

Am i misinterpreting the workflow here? Should i wait for a 24p PAL avisynth script and then judge the image quality, or should i be able to judge the 50i footage as-is?

Now that Atomos Ninja recorders are shipping to endusers en-masse throughout Europe, many of them GH2 owners, the following question arises: How easy is it to adapt the AviSynth script to work with 50i PAL ?


Martin Beek.
 
After spending half a day working with and being screwed over by the GH2's HDMI monitor port and recording, I agree with you, Martin. The HDMI output on the GH2 is simply not good. It's fine for focus, it's good for composition, but it's lousy for quality and the color is totally wrong. And it does vary substantially from before recording (i.e., when the camera is in "pause" mode) and then when you press the record button. After losing hours of work to the inaccuracy of the monitoring output, I've now completely given up any level of interest in exploring it any further.

In my opinion, trying to record the HDMI output of a GH2 is a recipe for heartache and giving up so many of the features that make the GH2 such a good little camera in the first place.

First, you can't trust the monitor. It doesn't output an accurate image. When you're in pause mode it's a wildly different image than when you're in record mode, and it's inaccurate. The gamma is substantially stretched, the blacks are stretched down and the whites are stretched up. When you go into "record" mode it's more accurate, but it's still not accurate. The monitor doesn't show you the real colors! It shows a muted/pale image as compared to what's really being recorded in the camera. And, if you go into playback mode, you'll get the same muted/inaccurate picture representation. I recorded externally and internally on the GH2, and brought both files into the NLE, and found that the colors were substantially brighter and more saturated and more accurate to what I was trying to get, from the internal codec -- the external recording was flat and pale, and that's not the recorder's fault, it was recording what the HDMI was feeding it.

Second, you have to give up so many good features! It's pointless. Valuable features like ETC mode and 720p mode just go away when you plug something (whether a monitor or a recorder) into the HDMI port. That's awful, but what's worse is that you also have to turn off the highlight flashing mode because it stays live on the monitor output and if you have something that hits 100 IRE, it'll start flashing on the monitor which means it'll also start flashing on the external recorder! So now you have to give up ETC mode, and 720p mode, and the zebra-replacement highlight flashing... those are three of my favorite features. But they all go away if you try to use an external recorder. Bah.

Third, it screws up the chroma. The monitor output is just wrong. It's not a 4:2:2 signal, it's a screwed-up 4:2:0. The onboard codec looks better than the external, as far as chroma resolution (and chroma quality, for that matter).

Fourth, it has a non-video-standard frame rate (which was of course the point of this whole thread in the first place). At 60.00i, you can't just use the footage, now you've got to leap through hoops in post to try to strip out the two layers of pulldown (the 59.94->60.00, and then the 23.976->59.94).

Fifth, there's no audio, so you would always have to shoot double-system with a clapper. There's not even a reference track! No PluralEyes or any other simple post-sync option, you have to slate every take.

Sixth, now you're trusting your recording to the single worst connector ever designed in the history of video -- the mini-HDMI connector. HDMI is bad enough, mini-HDMI is simply horrible. I can't tell you how annoying and irritating it is to look over at the monitor and find that everything has gone green, for no discernible reason, and you have to unplug and re-plug the camera monitor cable to get at least vaguely accurate color again. You want that happening in the middle of your recording? I sure don't.

I know this will be an unpopular post, and people will think I'm taking away their candy, but -- man, just try it for a while. Recording external on a GH2 is a frustrating, inaccurate, tedious, limiting workflow. If anyone asked me if they "should" do it, my answer would be a succinct "hell no." If someone wants to do it anyway and "prove me wrong", well, go right ahead and more power to you. But after this weekend's experiments, I'm done with it... I'll use the GH2 for what it's good for and love it for that, but shackling it with handcuffs in order to end up with a seriously compromised workflow all in an effort to chase things that just aren't going to come true (it's not going to be 4:2:2, it's not going to have better or even as-good-as color, the only thing it'll do is be less compressed)... no thanks, the tradeoffs are totally not worth it.
 
Ralph and others.

I have replaced my previous GH2/Ninja file with a new version that was recorded while the GH2 was recording.
Start GH2 Record -> Start Ninja record -> Stop Ninja record -> Stop GH2 record

24p PAL 1080i50:
http://mediatube.marvelsfilm.com/009.mov 435Mb (use right-mouse click and save)

GH2 in Cinema 24H mode and Nostalgic profile.



It sounds like some of you are giving up due to the other issues, but if anyone still cares about the Pal GH2 HDMI:


This is 24p in a 50i stream, with an inserted duplicate field that occurs ~every 25 fields , but not at that exact interval (it's slightly off the perfect cadence)

You can use avisynth to adaptive field match and decimate to return proper 23.976 , at least with that sample. It's hard to be 100% certain, because there is a point in that clip where the only difference in frames looks like a rolling shutter artifact. Have a look at frames 82-84 on the processed sample, this corresponds to ~3.4-3.5 sec timeframe which looks like it matches the native clip's motion ok. I would look at the AVCHD clip as well to double check. A better test sample to examine cadence would be a deliberate slow linear pan.

But there appears to be another serious problem with a left green border and a faint double green/purple line on the right border. Do you see this on the Mac in QT or in FCP ? It's not a Windows QT prores decoder issue, or avisynth QTInput isse, because other ProRes422 clips decode fine here without those issues.

I included a sample , encoded with QT h.264 so Mac users can examine it . Apparently avisynth works with Parallels , but I don't know the details how to get it running there
http://www.mediafire.com/?izp1b4fhr4056hs



Code:
QTInput("009.mov")
AssumeTFF()
TFM()
TDecimate(mode=7,rate=23.976)
AssumeFPS(24000,1001)
ConvertToYV12()
 
Martin, could you post some side-by-side AVCHD and ProRes clips? With 24p and 25i internal framerates. Some greenery or general street view. Or anything that have a lot of details, predictable motion and colors.
 
Martin, could you post some side-by-side AVCHD and ProRes clips? With 24p and 25i internal framerates. Some greenery or general street view. Or anything that have a lot of details, predictable motion and colors.

Please, add to that petition some large surface with gradient lighting to explore if the posterization is affected too in the HDMI signal! See the thread of banding sky last posts.
 
Please, add to that petition some large surface with gradient lighting to explore if the posterization is affected too in the HDMI signal! See the thread of banding sky last posts.

Hi. I'll get back to the requests a.s.a.p. but i already have to disappoint you re. the color banding.... It's still there if recorded to HDMI. You cal already see that by monitoring the HDMI signal. If that is what you mean with Posterization. The posterization you sometime see in dark areas due to compression artifacts are of course gone.

Panasonic has acknowledged the existence of the color banding, but doesn't say if they are working on it.

So far for now.

I am seriously considering returning the Ninja recorder while it is still possible (5 days money back return policy by law in the Netherlands). The Ninja is great, no bad marks there, but i am afraid that i'll get stuck with a useless $1000 recorder and (for me) a pretty useless camera.
I'll have to discuss this with the dealer, maybe they want to give me some more time to experiment with the Ninja; it will benefit all parties.
But waiting for weeks/months for a hack, firmware update or PAL avisynth script is probably out of the question.

Again, i have no problem with either device - great tools in their own respect - but i'm not (yet) feeling comfortable with the combo.


Martin.
 
Ralph and others.

I have replaced my previous GH2/Ninja file with a new version that was recorded while the GH2 was recording.
Start GH2 Record -> Start Ninja record -> Stop Ninja record -> Stop GH2 record

24p PAL 1080i50:
http://mediatube.marvelsfilm.com/009.mov 435Mb (use right-mouse click and save)

GH2 in Cinema 24H mode and Nostalgic profile.

Hello Martin,

I processed your clip and it turns out the 24P script in the first post works just fine on PAL footage. Here is the result:

http://www.sendspace.com/file/ezyvym

The only modifications I made to the script have to do with Prores, not PAL.

1) changed avisource() to directshowsource() - Quicktime needs to be read by directshowsource
2) added converttoyuy2() - apparently Prores decodes to RGB, but the scripts requires YUY2
3) added trim(1,0) - this trims the first frame which was a frame blend.

Here's the Prores version of the 24P script:

*******************************************************************

directshowsource("Your_Prores.mov")

LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\TIVTC.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\FDecimate.dll")

AssumeTFF()
converttoyuy2()
trim(1,0)
TFM(mchroma=false, pp=5)

FDecimate(threshold=0.5)

delayaudio(.07)

AssumeFPS(24000,1001)

# Chroma Fix - Optional, but highly recommended
FixBrokenChromaUpsampling()
# Seperates the YUV channels. YV24 seems neccessary for the split and remerge to work.
ConvertToYV24(chromaresample="spline36")
Y = Tweak(sat=0, coring=false)
U = UToY()
V = VToY()
# Shifts the YUV channels individually. In this case subpixel(halfpixel) shifting.
U = U.Spline36Resize(u.width,u.height,0.5,-0.5)
V = V.Spline36Resize(v.width,v.height,0,-0.5)
Y = Y.Spline36Resize(y.width,y.height,0,0.5)
# Manually squeezes the chroma down to 4:2:0 and back. Prevents further shifting.
U = U.Spline36Resize(u.width,u.height/2)
V = V.Spline36Resize(v.width,V.height/2)
U = U.Spline36Resize(u.width,u.height*2)
V = V.Spline36Resize(v.width,v.height*2)
# Recombines individual YUV channels.
YToUV(U,V,Y)
# Depending on the source file you may need to convert from YV24 back to YUY2/YV12.

*********************************************************************
To run this, in addition to the plugins refered to in the first post, you ned to have Quicktime and Apple's Prores decoder installed on your PC.
Get them here:

Quicktime
http://support.apple.com/kb/dl837

Prores Decoder
http://support.apple.com/downloads/Apple_ProRes_QuickTime_Decoder_1_0_for_Windows
 
After spending half a day working with and being screwed over by the GH2's HDMI monitor port and recording, I agree with you, Martin. The HDMI output on the GH2 is simply not good. It's fine for focus, it's good for composition, but it's lousy for quality and the color is totally wrong. And it does vary substantially from before recording (i.e., when the camera is in "pause" mode) and then when you press the record button. After losing hours of work to the inaccuracy of the monitoring output, I've now completely given up any level of interest in exploring it any further.

In my opinion, trying to record the HDMI output of a GH2 is a recipe for heartache and giving up so many of the features that make the GH2 such a good little camera in the first place.

First, you can't trust the monitor. It doesn't output an accurate image. When you're in pause mode it's a wildly different image than when you're in record mode, and it's inaccurate. The gamma is substantially stretched, the blacks are stretched down and the whites are stretched up. When you go into "record" mode it's more accurate, but it's still not accurate. The monitor doesn't show you the real colors! It shows a muted/pale image as compared to what's really being recorded in the camera. And, if you go into playback mode, you'll get the same muted/inaccurate picture representation. I recorded externally and internally on the GH2, and brought both files into the NLE, and found that the colors were substantially brighter and more saturated and more accurate to what I was trying to get, from the internal codec -- the external recording was flat and pale, and that's not the recorder's fault, it was recording what the HDMI was feeding it.

Second, you have to give up so many good features! It's pointless. Valuable features like ETC mode and 720p mode just go away when you plug something (whether a monitor or a recorder) into the HDMI port. That's awful, but what's worse is that you also have to turn off the highlight flashing mode because it stays live on the monitor output and if you have something that hits 100 IRE, it'll start flashing on the monitor which means it'll also start flashing on the external recorder! So now you have to give up ETC mode, and 720p mode, and the zebra-replacement highlight flashing... those are three of my favorite features. But they all go away if you try to use an external recorder. Bah.

Third, it screws up the chroma. The monitor output is just wrong. It's not a 4:2:2 signal, it's a screwed-up 4:2:0. The onboard codec looks better than the external, as far as chroma resolution (and chroma quality, for that matter).

Fourth, it has a non-video-standard frame rate (which was of course the point of this whole thread in the first place). At 60.00i, you can't just use the footage, now you've got to leap through hoops in post to try to strip out the two layers of pulldown (the 59.94->60.00, and then the 23.976->59.94).

Fifth, there's no audio, so you would always have to shoot double-system with a clapper. There's not even a reference track! No PluralEyes or any other simple post-sync option, you have to slate every take.

Sixth, now you're trusting your recording to the single worst connector ever designed in the history of video -- the mini-HDMI connector. HDMI is bad enough, mini-HDMI is simply horrible. I can't tell you how annoying and irritating it is to look over at the monitor and find that everything has gone green, for no discernible reason, and you have to unplug and re-plug the camera monitor cable to get at least vaguely accurate color again. You want that happening in the middle of your recording? I sure don't.

I know this will be an unpopular post, and people will think I'm taking away their candy, but -- man, just try it for a while. Recording external on a GH2 is a frustrating, inaccurate, tedious, limiting workflow. If anyone asked me if they "should" do it, my answer would be a succinct "hell no." If someone wants to do it anyway and "prove me wrong", well, go right ahead and more power to you. But after this weekend's experiments, I'm done with it... I'll use the GH2 for what it's good for and love it for that, but shackling it with handcuffs in order to end up with a seriously compromised workflow all in an effort to chase things that just aren't going to come true (it's not going to be 4:2:2, it's not going to have better or even as-good-as color, the only thing it'll do is be less compressed)... no thanks, the tradeoffs are totally not worth it.

Barry, such a harsh criticism! Have you looked at the first post in a while? Most of the issues you bring up have been solved. Plus, batch processing is now available. It's really no more difficult to process than it is to remove ordinary 3:2 pulldown.

But, I agree with you, the mini HDMI cable is a pain in the buttinski, and needs to be carefuly dressed.
 
Last edited:
Ralph. The HDMI Avisynth footage looks absolutely stunning! I am as happy as a monkey with the key to the banana plantation..;-)

I still see a stutter in the movement between the two flowers, but that can be my macBook at work. Can you please re-check on that?

Great stuff man! Thanks for your time and commitment!


Martin Beek
 
I processed your clip and it turns out the 24P script in the first post works just fine on PAL footage. Here is the result:

http://www.sendspace.com/file/ezyvym

I think there is a mistake with the encoding, as the file has duplicates , and is 29.97 (the encoding program used might be inserting the dupes to achieve 29.97, you probably entered the wrong fps, the script is fine) . Compare it to the one I posted earlier, as you will see there are too many frames for 23.976.

A better option to directshowsource is QTInput using QTSource. DSS isn't necessarily frame accurate and you can "lose your place" with non linear seeks. This can cause errors in the field matching. Also, QTInput decodes Prores422 to YUY2 (422) by default, directshowshource will go usually go through a color space converter to RGB (more quality loss incurred with unecessary colorspace conversions)

Are you guys seeing the green left border mentioned earlier? Is this PAL GH2 HDMI issue or Ninja issue ? or something else ? Other PAL GH2 HDMI samples recorded by intensity pro didn't have this problem
 
Last edited:
Yo PDR; that's all too much information for the layman ;-) Hoping that Ralph can mash up a new script.

But, indeed, i see the green border too!
Sh*t! Now that all went so well...
You have probably checked the original file? I will record a clip with the Ninja on both the GH2 and the EX1-R and a few other HDMI sources i can find and see where that comes from.

Martin
 
No - the script he posted is absolutely fine. I tested it. The only change I would suggest is to use QTInput() instead of DirectShowSource() for the reasons posted earlier.

What happened (I think) was that he made an encoding error (entered the wrong fps during encoding, so the encoder inserted those dupes).

Yes, I checked the original file. It's not a QT Windows issue, because other Prores422 clips decode normally without the green strip. And other Pal GH2 HDMI clips posted earlier recorded by other devices do not exhibit the issue

If that was straight from the Ninja, the one abnormal thing about those prores files is the metadata. Mediainfo reports abnormal dimensions (other prores clips don't show this, they show 1920x1080 only)

Width : 1 888 pixels
Original width : 1 920 pixels
Height : 1 062 pixels
Original height : 1 080 pixels

Another user , Diego, said something about some programs having problems with the native Ninja clips
http://www.dvxuser.com/V6/showthrea...Recorder-795&p=2295168&viewfull=1#post2295168
When you export for quicktime, mind that for some strange reasons After Effects and Premiere are not able to open these files. Actually all files being recorded on the ninja cannot be opened in AE and PP without previously exporting them to ProresHQ from quicktime. I don't know why and any help on this is really welcome.


I suspect something is up with the Ninja prores implementation
 
Last edited:
I suspect something is up with the Ninja prores implementation

I don't think there's anything wrong with the ProRes implementation: it's been certified by Apple, and it's 100% accurate. I will get the metadata checked.

Dave Shapton
Atomos
 
I don't think there's anything wrong with the ProRes implementation: it's been certified by Apple, and it's 100% accurate. I will get the metadata checked.

Dave Shapton
Atomos


ok thanks; perhaps there is something wrong with martin's particular model or his particular GH2 ?

are there any more samples (recorded from other cameras) floating around to examine ?
 
Back
Top