Recording RAW and H.264 at the same time

Started by a1ex, February 11, 2017, 02:34:52 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

a1ex

Quote from: dfort on December 30, 2016, 04:34:31 AM
I was experimenting with shooting raw video while simultaneously recording H.264 [...]

Quote
[...]it is too much of a hack[...]

Here's an attempt to make it a bit less of a hack:

http://bitbucket.org/hudson/magic-lantern/branch/raw-h264-proxy

Danne

Nice one. legacy RAW still alive  :P.
I tried some and 5D mark III is working really good on this one. Make sure to select SD card in canon menu as pointed out from a1ex(preferred card type CF in ML menu). I ran 1920x1080 24fps and recording proxy H.264 to sd continuously.
Now regarding eosm not so lucky. Got better files out of the hacky build from dfort. In this case here all RAW dng files are corrupted and lacks black levels. The proxy comes out choppy. Some examples here. I also reduced bitrate on this H.264 clip. It seems maybe it gets into mv1080(hard to tell on the dng. Part of my foot seems mv1080 :)))
https://drive.google.com/drive/folders/0B4tCJMlOYfirR2QtNjNveXZUUzQ?usp=sharing

Idea. How about disabling H.264 proxy once RAW starts to record in mv1080 to maybe fool eosm to stay in mv1080 mode? Ugly as hell but might lead to another step in some direction.

dfort

This can actually be very useful. Some users have been asking about this "feature" of shooting an H.264 along with raw video. It is a solution for a quick on set confidence check playback. If it is frame accurate it can also be sent to editorial to start the edit while the raw files are being processed.

Though it looks like we're not quite there for the EOSM but we might be getting closer?

a1ex

Quote from: Danne on February 11, 2017, 03:43:26 PM
Nice one. legacy RAW still alive  :P.

Check latest commits ;)

Quote
Idea. How about disabling H.264 proxy once RAW starts to record in mv1080 to maybe fool eosm to stay in mv1080 mode?

Not sure how you would do that, other than stopping H.264 recording (which will bring you back to 720p on EOS M).

The two recorders are pretty much independent (Canon's H.264 has no idea somebody else is also recording, and ML's raw recording doesn't care what Canon's H.264 does - it simply starts and stops H.264). They both get their image data from LiveView, so they will be in sync (without doing anything special).

The start and end moments will differ though (H.264 is started first and stopped last).

Bonus - you get free sound, without any coding effort from our side.

beauchampy

This is amazing! I can finally do away with my Ninja Blade for a backup recording and switch to something like a smallhd 502.

I haven't tested yet, but does it work with MLV and audio?

Danne

QuoteBonus - you get free sound, without any coding effort from our side.
Yes, noticed. Major bonus!

Oki, tested short with latest commits raw_video_10bit_12bit branch. I,m on the run. Make sure to select the latest mlv_lite.mo module from a1ex.
Builds here. BLEEDING EDGE! Be careful. These build are probably up in the experimental section already.
eosm
download from experimental build section instead
5D mark 3
download from experimental build section instead

On eosm when selecting 10bit actually produces some really nice mv1080 files now. Some corruption still in files but a lot are looking very nice. Developed in cr2hdr.app(mlv_dump). Opened up in acr. Pixel maps are not correct here but apply cs2x2, should work.
shortened MLV file here:
https://bitbucket.org/Dannephoto/magic-lantern/downloads/mv1080_10bit.MLV


*update
Seems raw_twk.mo isn,t linking symbols again?
The linking issue is related to crop_rec.mo. Probably in conjunction with the mlv_lite.mo module.
Now working.

Hans_Punk

Quote from: dfort on February 11, 2017, 03:54:23 PM
This can actually be very useful. Some users have been asking about this "feature" of shooting an H.264 along with raw video. It is a solution for a quick on set confidence check playback. If it is frame accurate it can also be sent to editorial to start the edit while the raw files are being processed.


YES! - This would indeed make a wonderful feature. Playback is probably the major bug bear I've encountered on shoots when trying to convince others that a 5D3 ML setup is working...trying to get others to understand how amazing the slower/low res raw preview playback can be very unimpressive to people on set who simply just want to check the previous take in real-time playback as if shot regular H.264. Having the ability to know that a higher resolution raw master is being captured separately....would be totally awesome. Extra bonus being the H.264 would contain audio track for scratch sound to help sync external recorder etc.

A 100% accurate framing of H.264 playback (confidence proxy) would probably be the most useful feature for production use and editorial efficiency that I could think of right now.


ilia3101

Awesome! I've tried to code this myself before(and failed).
I compiled, but it did not work on my 5D2. When proxy was enabled, it would just start h264 recording and would not allow it to stop until raw video was disabled through trash can(constantly said 'starting')

borpozky

Nice to see that this is happening.

I was nearly torn apart, when I mentioned simultaneous RAW & H.264-recording in this forum some years ago ...
Anyway, ML always surprises. It is now my failproof maintool and I love it.











Lars Steenhoff

Great !  thanks for the builds, will test them now

This and the crop module can work together?

DeafEyeJedi

Downloaded ml-raw_video_10bit_12bit_2017Feb17.5D3123 from experimental page (https://builds.magiclantern.fm/experiments.html).

Thanks @a1ex and ran the MLV lite (w Proxy H264 enabled ON) and reordered for about 8-9 seconds before I get a message (from Canon) stating that The Movie Recording has stopped which then required a battery pull out for reboot. This is reproducible.

Question though how exactly do I tell the camera to record H264 to SD and RAW onto CF card? I checked in the preferred card menu but don't see anything in particular for the H.264 under Card Settings within ML menu.
5D3.113 | 5D3.123 | EOSM.203 | 7D.203 | 70D.112 | 100D.101 | EOSM2.* | 50D.109

Danne

In canon menu select your SD card
In ML menu select preferred card type CF

Danne

So poking around 10bit mv1080 files created while recording proxy files on the eosm. Not really knowing what is happening here I do see the files come out corrupted and in strange order I wonder if the raw stream buffer suddenly is leaving the raw_slurp buffer while filming proxies which would be causing corruption again? Does it make any sense?

DeafEyeJedi

Thanks Danne for the tips w SD/CF selections and yes it makes sense to me re: raw_slurp buffer issues.

Also thought of something that may be worth asking in here while we're at it -- would it be possible to have our cameras trigger the recording on external recorders through HDMI out (thus using the single from H264 proxies) and this way we'll be able to have all the footage synced up w ProRes422HQ back up files on the Atomos Shogun as well as using the H264 Proxies for audio syncing and MLV RAW files (for the grade quality obviously) all together nicely?

As we all know that currently if we were to record MLV RAW then have to press record for the Atomos either before or after pressing record on the DSLR which is obviously annoying.

Not as bad as it could get but could this new feature help solve this particular issue in a way w some sort of a hack?
5D3.113 | 5D3.123 | EOSM.203 | 7D.203 | 70D.112 | 100D.101 | EOSM2.* | 50D.109

Licaon_Kter


Lars Steenhoff

I tested 14 bit raw on the 5d3 with h264 to the sd and after few seconds it stopped.

I see in bitbucket some new commits that may help, so will test again when there is a newer build


@DeafEyeJedi.  yes the record trigger also crossed my mind.

I have a ninja blade so will check if it triggers.

dfort

Quote from: Licaon_Kter on February 14, 2017, 10:00:23 AM
M can handle this?  :o

Yes it can. In fact this H.264 proxy video feature was sort of created to get around the lack of mv1080 video mode on the EOSM.

Check it out:

https://www.magiclantern.fm/forum/index.php?topic=16608.msg179969#msg179969

So not only does it work, but so does mv1080 on the M.

ricbi1

The fact that this works on 5d3 1.13 having h.264 proxy is incredible! Thanks to the Dev's for this. Never thought it would be possible!
:)

budafilms

@A1ex
it's possible tweak the Canon zoom from 3x to 2X or less? In Canon Menu on 5d3 it's possible put 10x 5x etc.
(I mean, use the sensor data to get raw/h264, but not too cropped).

a1ex

Not sure what are you asking; best guess: you can use the full-screen magic zoom to do a 1:1 preview on the YUV buffer (which is what goes into H.264).

On 5D3, it's only available in 1.1.3.

pc_bel

Tested: https://bitbucket.org/Dannephoto/magic-lantern/downloads/magiclantern-Nightly.2017Feb11.5D3113_proxy.zip
For me 14bit recording + H264 only about 30s. (CF Lexar 64Gb 1066x + SD-HC Transcend 16 Gb class10). Maybe due to a SD card not fast enought?
10 and 12 bit + H264 continuous.

Everytime I turn on camera, I need to change prefered card to SD in Canon menu. A bit anoying...

a1ex

Quote from: pc_bel on February 17, 2017, 10:22:41 PM
For me 14bit recording + H264 only about 30s. (CF Lexar 64Gb 1066x + SD-HC Transcend 16 Gb class10). Maybe due to a SD card not fast enought?

In your case, the raw stream stopped first (not the H.264 one), so the SD card speed is not an issue. It's probably just the extra overhead.

Quote from: pc_bel on February 17, 2017, 10:22:41 PM
Everytime I turn on camera, I need to change prefered card to SD in Canon menu. A bit anoying...

Disable preferred card from ML menu, or set it to SD.

I can try to force the H.264 card to SD all the time (without you having to configure anything in Canon menu), if there's a good reason to do so. Currently, on this branch, RAW is always saved to CF as long as you have one in the camera.

pc_bel

@a1ex
Thanks for your answer!
QuoteIt's probably just the extra overhead.
Can I do something to avoid this and get 14bit+H264 continuous?... Changing to a small aspect ratio?

QuoteEverytime I turn on camera, I need to change prefered card to SD in Canon menu. A bit anoying...
Solved: set preferred card from ML menu to SD. As you said if I have a CF card in camera raw is saved to CF.
Thanks!!!

erikbaldwinson

Can someone provide a link where the latest firmware for this can be downloaded?

Is there the possibility of simultaneously deleting the h264 proxy and corresponding RAW file from the canon playback menu?

Thank you!