Canon 5D Mark IV

Started by SiSS, August 11, 2016, 11:11:29 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

hjfilmspeed

So I was doing some thinking. I apologize if this was covered. If or when the ML makes its way to the 5D IV, I was wondering what would the RAW Video/live view capabilities would even be. 4K would be tricky in RAW since I read the CF card slot are still limited. Not sure if this also applies to the SD card slot.

I, personally would be more interested in the full frame capabilities in RAW@ 24fps

Now we know the resolution of the 5DIII Sensor is 5760 / 3x3 Pixel bin brings us to 1920 right? (maybe I am wrong)
With that same math the 5Div 6720 / 3x3 bin would be 2240. This makes me much more excited if this is possible. With compression, in theory, this should rec just fine to the CF card @ 24fps

However, I read (not sure true) the 5D iv does an 4x4 binning during full frame live view. This would be most disappointing bringing our numbers down to 1680 which sadly sounds like a canon move.
On the flip side, since live view understanding seems to be improving quite nicely thanks to ML maybe... just maybe (wishes don't do dishes) ML can force the 3x3 bin and the 5D IV will have a decent 2k RAW 24fps mode.
Canon, no doubt "could" make this happen no problem especially with the new Canon Cinema RAW LITE on there C200.
IMO canon is super dumb for not having done something like RAW 1920 mode on the Mark IV. However I think ML will most likely be able to take the glory here once again. So we can thank Canon for dropping the innovation ball I guess. Just my thoughts.

ilia3101

As far as I'm aware (simple) 4x4 binning would result in monochrome video :D, so whoever said that is wrong - don't worry, it has 3x3 binning... unless of course they went full Canon and made it 5x5, which is extremely unlikely and would look terrible

hjfilmspeed

Quote from: Ilia3101 on June 20, 2017, 08:45:42 PM
As far as I'm aware (simple) 4x4 binning would result in monochrome video :D, so whoever said that is wrong - don't worry, it has 3x3 binning... unless of course they went full Canon and made it 5x5, which is extremely unlikely and would look terrible
hahaha 5x5!!!!
4x4 Binning = Monochrome, never new or fully understood the binning process.
3x3 would be a dream on 5d IV. True 2K WHHAAAAA!
4k rolling shutter is quite bad on mark IV so I could care less about that in RAW.


cheshirecat

My setup;
I have a working ML Development environment in Ubuntu on a VirtualBox.
I have ARM Console working.

From ARM Console I have outputted a disassembly of ROM1.BIN from a 5d4
I did that by following the instructions at
http://magiclantern.wikia.com/wiki/GPL_Tools/ARM_console
QuotePrepare a working directory where you will put the input files. You will need:
    Some dumps, with the .bin extension. Include the load address in the dump name.
    Some databases, in IDC or Stubs (*.S) format. Try to give them names similar to the dumps, to help the autodetection.

Question: What should I use as the load address ?
Question: I presume that there is currently no IDC I could use for this dump ?
Question: I presume that there is currently no Stub I could use for this dump, since the stubs have not yet been found ?


a1ex

First of all, 5D4 has mostly Thumb code, and ARM-console won't help with that (it's ancient stuff I wrote before getting an IDA license, ARM only). Look on CHDK forum for suggestions (from there, I've tried capdis, but only for double-checking small snippets of code where I didn't trust the output from IDA).

Many stubs are easily identified from strings; chris_overseas found some (look up his repo). Running the firmware in QEMU will save an IDC with what functions got called during that session. Currently the emulation works for the bootloader (which is ARM code) and it also runs a tiny part of the main firmware.

Memory layout is similar to other D6 models (look up my notes on e.g. 7D2 or 80D threads). Or just read it from QEMU logs.

First puzzle to solve: how to jump to main firmware from autoexec.bin? Note the 5D4 has two cores, and I believe we have to do something about it somehow.

Next step (which is easy, will probably work in QEMU, but not on the real hardware) would be to adapt the 7D2/80D startup code (which... works in QEMU, but not on the real hardware).

Third step would be making the startup code work on the real hardware (likely as easy as copying a routine from CHDK, discussed on 80D thread). Since I don't have a D6 model yet, I didn't feel any rush to try it.

After that, porting ML should be more or less straightforward (I don't expect major issues, other than some special handling for Thumb stubs).

For the first puzzle (which was solved for single-digic D6 models, and was a non-issue on earlier single-digic models), I've made some limited progress understanding the IPC protocol (communication between the two cores); if you (or anyone else) is interested in continuing this investigation, I can publish them in the current state.

cheshirecat

Quote from: a1ex on July 17, 2017, 09:51:51 PM
First of all, 5D4 has mostly Thumb code, and ARM-console won't help with that (it's ancient stuff I wrote before getting an IDA license, ARM only). Look on CHDK forum for suggestions (from there, I've tried capdis, but only for double-checking small snippets of code where
I didn't trust the output from IDA).
Thanks a1ex.  Ah, I knew about the Thumb code but didn't realise ARM-console was not the way to go with it.
Thanks for the advice. I tried capdis and it worked but disassembled without text strings when I tried it.
I had better luck with the GPL Disassembling advice at CHDK and the disassemblev7.pl from there produced a disassembly with text strings. I now have disassembled code which agrees with the stubs found by chris_overseas. I have found a few more stubs and have registered at bitbucket. I will fork the ML repo once I have figured out the bitbucket workflow ( chris_overseas has given me his ideas for what to do at bitbucket ).

Quote from: a1ex on July 17, 2017, 09:51:51 PM
Many stubs are easily identified from strings; chris_overseas found some (look up his repo). Running the firmware in QEMU will save an IDC with what functions got called during that session. Currently the emulation works for the bootloader (which is ARM code) and it also runs a tiny part of the main firmware.
Yes, I had seen the initial stubs work from chris_overseas and it was that which inspired me to have a go to see what I might be able to do. I have been in contact with Chris and he has been very helpful.
I am yet to get QEMU up and running but that is my next step.

Quote from: a1ex on July 17, 2017, 09:51:51 PM
First puzzle to solve: how to jump to main firmware from autoexec.bin? Note the 5D4 has two cores, and I believe we have to do something about it somehow.

Next step (which is easy, will probably work in QEMU, but not on the real hardware) would be to adapt the 7D2/80D startup code (which... works in QEMU, but not on the real hardware).

Third step would be making the startup code work on the real hardware (likely as easy as copying a routine from CHDK, discussed on 80D thread). Since I don't have a D6 model yet, I didn't feel any rush to try it.

After that, porting ML should be more or less straightforward (I don't expect major issues, other than some special handling for Thumb stubs).

For the first puzzle (which was solved for single-digic D6 models, and was a non-issue on earlier single-digic models), I've made some limited progress understanding the IPC protocol (communication between the two cores); if you (or anyone else) is interested in continuing this investigation, I can publish them in the current state.

I would be happy to look at the jump to main firmware from autoexec.bin problem to see if there is anything I can figure out. So if you can publish your work on the IPC protocol, please do.

AlexRo

So what's the situation with the 5D Mk IV?? Can someone answer? Did the ML team hack it or is it stil in "not in priority" mode?

Walter Schulz

Top of page -> Downloads -> Download Nightly Build -> Scroll down to "When will it be ready"

cheshirecat

Quote from: cheshirecat on July 19, 2017, 05:48:43 PM
Thanks for the advice. I tried capdis and it worked but disassembled without text strings when I tried it.

CORRECTION: I had the wrong start address in my capdis command.
Start address should be 0xfe000001 NOT 0xfe000000. The lowest bit tells capdis whether or not to disassemble thumb.
My capdis disassembled code now looks very similar to my disassemblev7.pl disassembled code.

AlexRo

No, I did not want to know when it will be ready. I asked about the situation with the development of ML for 5d mark iv. Is it being worked on or not.
Sorry for my English.

D_Odell

Quote from: AlexRo on July 26, 2017, 12:23:49 AM
No, I did not want to know when it will be ready. I asked about the situation with the development of ML for 5d mark iv. Is it being worked on or not.
Sorry for my English.
Don't wait for it..
5D3 [size=6pt](OLPF removed)[/size] :: 1.1.3 :: Canon FD L Serie

Walter Schulz

Quote from: AlexRo on July 26, 2017, 12:23:49 AM
No, I did not want to know when it will be ready. I asked about the situation with the development of ML for 5d mark iv. Is it being worked on or not.

Answered in
Top of page -> Downloads -> Download Nightly Build -> Scroll down to "When will it be ready"

olofen

   Hi,

With the 5D Mark IV Canon have copied Magic Lanterns HDR movie situation but made a rather poor in-camera version.
Why not do a three videos-in-one variant with all those resources there is in the Mark IV camera. A version similar to the original one in Magic Lantern but with a decent fps speed (so people don't look like Charlie Chaplin) and last but not least a better abillity to "see in the dark" - as well as make recordings....
And RAW if possible...

From a video artist mainly working nighttime... :D

....and if possible I wish I could use the full screen of the MK IV viewer for filming i.e. ending in 1920 x 1280 px
EOS 5D Mark III 1.2.3
Mac OS High Sierra

TrEK

Anybody know if available ML on Canon 5d Mark 4 ???
and ability shooting ML RAW ??

andy kh

Quote from: TrEK on August 23, 2017, 04:29:40 PM
Anybody know if available ML on Canon 5d Mark 4 ???
and ability shooting ML RAW ??

NO
5D Mark III - 70D

mkporwit

So on a more serious note than the whining for features...

Is there anyone even informally poking at a 5D4? I just got one, and I'm a developer of that certain age that still remembers his C fondly. It just seems like it would be easier to pair up with someone to get going...

a1ex

Yes, get the ROM dumper and check out the QEMU branch.

ricardo huertas hernandez

Hello, I am new here, nobody thinks about the output dng direct video usb 3.0 that could reach at least 360 mbs in sequential with an external ssd controlled with the flashlight and be able to record continuous 4k gross 30 fps.

According to an American commentator last August I commented that it was possible the direct recording ssd in the 5d mark iv, and this way does not seem to be explored as the most feasible and economic (ssd cheap) in the absence of cfast 2.0.

It is necessary to promote this way as a means of giving a definitive impulse to the lantern in all the canon with usb 3.0 and to counter the lack of cfast 2.0, as in the competition with its equivalents.
Thank you.

AOK

A1ex, as I remember you somewhere shared that from the core developers nobody has it - ergo no development...

Perhaps a little more asking from your side around in your own forum  would speed it up.

1 year after its release - nobody even has began it according to my understanding. I would love to help, but I am a noob compared to you Gods of firmware code.


Sent from my iPhone using Tapatalk

Walter Schulz

Sorry, unable to decode your request. Rephrase, please.

Audionut

Quote from: AOK on September 06, 2017, 12:56:06 PM
from the core developers nobody has it - ergo no development...

Need hardware + time.

Hardware is easy.

AOK

Quote from: Walter Schulz on September 06, 2017, 01:09:35 PM
Sorry, unable to decode your request. Rephrase, please.

We are beyond 1st year of 5D4.

5D3 is still the hot topic around and I find that for normal. The majority of people still are happy with 5D3 and see ni reason to update. In the context of Nikon D850 however ML will begin to seem outdated ;)

Dev's time is neither cheap nor in abundance. Ergo new serious recruits would be a fresh and good idea.


Sent from my iPhone using Tapatalk

JohanJ

@AOK
Are you aware of that ML is a project based in voluntary contribution? Feel free to participate in the process of porting ML to a new platform
Fresh resources and ideas are certainly welcome.

Sent from my SM-G930F using Tapatalk

60D.111 / 100D.101 / M2.103

Walter Schulz

Quote from: AOK on September 12, 2017, 02:30:48 PM
Ergo new serious recruits would be a fresh and good idea.

You are preaching to the choir. This has been an issue as long as I can remember. Unmaintained cams, blindly maintained cams and a1ex (and other) constantly asking for people to look after those neglected. Offering low entry coding task teasers, offering assistance. It wasn't without success. See Nikfreak's ports + dfort's porting EOS M to latest firmware version.
And Digic 6 is around us since 2014, November (7D2) and a generous offer (750D for free) for anyone willing to port a 750D is still open. Only lately we saw substantial progress: Bootflags for Digic 6 cams. 
So: What do you expect? If you have any ideas we all will listen ...

Advocatus Diaboli: Why bother? A few years ago affordable cams offering state-of-the-art video simply didn't exist. Now you can get them and some are cheaper than 5D4.

garry23

At the risk of upsetting some ML (virtual) friends, I will throw in my thoughts, especially seeing that next year we will expect a Canon full frame mirrorless, at 4K and accessing EOS lenses.

I've always felt there are two 'families' of ML user: the stills guys and the videographers.

I've always, maybe naively thought it might be good to spin out two versions of ML, i.e. for each family.

For stills photographers, ETTR, dual, auto bracketing and Lua are killer features.

It would be incredible if our ML stills family could transition to a new format, i.e. FF mirrorless. Note I said stills.

In other words, can we envision a stills biased version of ML that is enduring.

Of course, this is all speculation and a bit of fun.

But the world is made by dreamers :-)