Author Topic: LiveView Investigation  (Read 39858 times)

theBilalFakhouri

  • Developer
  • Hero Member
  • *****
  • Posts: 1346
  • UHS-I
Re: LiveView Investigation
« Reply #100 on: February 09, 2023, 06:38:44 PM »
@dpjpandone

Thanks for offering the help. I am doing it in camera (DebugLog + Ghidra + patching experiments).
I already found some functions which may be involved in YUV configuration on 5D3, I only need some time to make a deep look into it.

theBilalFakhouri

  • Developer
  • Hero Member
  • *****
  • Posts: 1346
  • UHS-I
Re: LiveView Investigation
« Reply #101 on: February 10, 2023, 03:58:51 PM »
Ah, finally I think I have a starting point on 5D3 :)
Now I found the function which select/toggle among YUV configuration (or at least sets zoom ratio?), I could force x5 preview into x10 preview (vice versa) for the first time.

And that's how things were started on 700D:
"By locking the registers between x5 and x10 you can bring x10 real-time preview into x5 vice versa in Canon 700D.."

It's only the beginning here . . but this time on 5D3.

vastunghia

  • Member
  • ***
  • Posts: 205
Re: LiveView Investigation
« Reply #102 on: February 10, 2023, 04:21:07 PM »
It's only the beginning here . . but this time on 5D3.

Sounds like a Hollywood movie trailer :D and I'm thrilled as f*. Keep up mate!
5D3 for video
70D for photo

ShittyWebsite

  • New to the forum
  • *
  • Posts: 47
Re: LiveView Investigation
« Reply #103 on: February 10, 2023, 04:29:33 PM »
Sounds like a Hollywood movie trailer :D and I'm thrilled as f*. Keep up mate!

Man i was gonna say the same thing, i'm invested


Looking good @bilal, great job

theBilalFakhouri

  • Developer
  • Hero Member
  • *****
  • Posts: 1346
  • UHS-I
Re: LiveView Investigation
« Reply #104 on: February 10, 2023, 07:09:01 PM »
By looking into ROM files, preview configuration seems like:

-DIGIC 4/4+:
Newer models:  600D, 60D and 1300D more likely it's same as DIGIC 5 (maybe slight differences).
Older models:   5D2, 7D and 550D more likely simpler than DIGIC 5.

-DIGIC 5: 650D/700D/100D/EOS M/EOS M2 are identical, simpler than DIGIC 5+.
-DIGIC 5+: 5D3, 6D and 70D seems similar and more likely it's more complex than DIGIC 5.

theBilalFakhouri

  • Developer
  • Hero Member
  • *****
  • Posts: 1346
  • UHS-I
Re: LiveView Investigation
« Reply #105 on: February 17, 2023, 05:50:23 PM »
Little update on 5D3:

-I know now where EDMAC#10 and EDMAC#21 parameters (probably +other related parameters) are being set, and I can modify them, these are related to preview obviously:

Also there are three EDMAC channels seem related to YUV HD path which are channels #10, #21 and #28. Searching around them may lead us to something.

-I am still missing where EDMAC#28 parameters + other parameters which might be related to stretching/scaling/cropping are being set.
-I am still looking for them.

After finding them (if I could), I will have some experiments to do, like:

-Patching VGA into 1080p (vice versa)
-Patching 720p into 1080p (vice versa)
-Patching x5 into x10 (vice versa), and get arbitrary crop factors like x15 and x20.

theBilalFakhouri

  • Developer
  • Hero Member
  • *****
  • Posts: 1346
  • UHS-I
Re: LiveView Investigation
« Reply #106 on: February 19, 2023, 03:00:27 PM »

iaburn

  • Member
  • ***
  • Posts: 193
Re: LiveView Investigation
« Reply #107 on: February 19, 2023, 03:27:51 PM »
OMG... This is how you announce progress on ML, with a proper epic video presentation!!!  :D :D :D :D
Congrats!!


Danne

  • Developer
  • Hero Member
  • *****
  • Posts: 7739
Re: LiveView Investigation
« Reply #108 on: February 19, 2023, 05:50:02 PM »
Haha, how???

theBilalFakhouri

  • Developer
  • Hero Member
  • *****
  • Posts: 1346
  • UHS-I
Re: LiveView Investigation
« Reply #109 on: February 19, 2023, 09:40:50 PM »
OMG... This is how you announce progress on ML, with a proper epic video presentation!!!  :D :D :D :D
Congrats!!

Epic moments need epic :D
Thanks!

Haha, how???

Magic :P

Some more registers which appear to control/affect black area.

I had a thought yesterday which is black area limit is being controlled somewhere in preview initialization registers which being set once, e.g. doesn't change from video mode to another.
Firstly, I had to search among +2000 registers, until I narrowed down and got it. This year would definitely be the Year of Preview (well, at least for entry level models :P)



What you can see in this video:

-I could exceed 2044 pixels width limit for the first time, this limit was introduced in the early days of this research.
-Next: figure out how to exceed 2520 width limit (if there is one), this time it won't be a black area, but *something else :) I didn't make any tests yet.

*Preview stuff is like crashing into a wall to find another wall needs to be crashed in then to find out there is a third wall ... etc :P

Skinny

  • Senior
  • ****
  • Posts: 279
Re: LiveView Investigation
« Reply #110 on: February 20, 2023, 05:55:51 PM »
Congratulations! This is huge, it can take this cameras to a whole new level! You have really badass skills in reverse-engineering :)

theBilalFakhouri

  • Developer
  • Hero Member
  • *****
  • Posts: 1346
  • UHS-I
Re: LiveView Investigation
« Reply #111 on: February 20, 2023, 09:04:01 PM »
Thanks @Skinny

This is huge,

It is :)

Not only for DIGIC 5 models, but for newer models, I mean if DIGIC 5 generation (from 12 years) is that powerful, DIGIC 6/7/8 must be capable too.

..it can take this cameras to a whole new level!

Also it would be nice 10 years anniversary for having RAW video :)

You have really badass skills in reverse-engineering :)

I am definitely getting better over time, not claiming I am the most expert one here though. Thanks!

dpjpandone

  • Senior
  • ****
  • Posts: 410
Re: LiveView Investigation
« Reply #112 on: February 21, 2023, 02:49:22 AM »

I had a thought yesterday which is black area limit is being controlled somewhere in preview initialization registers which being set once, e.g. doesn't change from video mode to another.
Firstly, I had to search among +2000 registers, until I narrowed down and got it. This year would definitely be the Year of Preview (well, at least for entry level models :P)


*Preview stuff is like crashing into a wall to find another wall needs to be crashed in then to find out there is a third wall ... etc :P

That sounds very tedious. Thank you for all your hard work!

Teamsleepkid

  • Member
  • ***
  • Posts: 249
Re: LiveView Investigation
« Reply #113 on: March 01, 2023, 12:08:00 AM »
When will you post the ransom?  :P So we can get this going on eos m? Thanks for the hard work you always move things forward.
EOS M

theBilalFakhouri

  • Developer
  • Hero Member
  • *****
  • Posts: 1346
  • UHS-I
Re: LiveView Investigation
« Reply #114 on: March 01, 2023, 11:07:49 AM »
That sounds very tedious. Thank you for all your hard work!

Reverse engineering requires a lot of patience in some cases, it's a lot of fun when you discover new thing and make things work.
Thank you too!

When will you post the ransom?  :P So we can get this going on eos m? Thanks for the hard work you always move things forward.

Sooooon :P

Currently I am re-writing (the old code) and writing new code (for new stuff) and I am trying to make it as clean as possible, goals:

-Support for 650D / 700D / EOSM / 100D (also *EOS M2) in one branch
 So when it get realeased it will have 650D / 700D / EOS M / 100D support
 *I need to check EOS M2 status in crop_rec_4k branch
-Don't break other models support like 5D3
-Code optimizations to avoid crashes, corrupted frames
-Some new things will be announced later

-Also and finally merge all of these new stuff to magiclantern_simplified

If everything went smoothly, you may expect an announcement next month :)

names_are_hard

  • Developer
  • Hero Member
  • *****
  • Posts: 817
  • Dev: 200D, 750D, 850D, 7D2
Re: LiveView Investigation
« Reply #115 on: March 01, 2023, 11:22:12 AM »
That would be a very useful merge :)  Modern cams and old cams in one repo!

Danne

  • Developer
  • Hero Member
  • *****
  • Posts: 7739
Re: LiveView Investigation
« Reply #116 on: March 01, 2023, 11:30:45 AM »
Reverse engineering requires a lot of patience in some cases, it's a lot of fun when you discover new thing and make things work.
Thank you too!

Sooooon :P

Currently I am re-writing (the old code) and writing new code (for new stuff) and I am trying to make it as clean as possible, goals:

-Support for 650D / 700D / EOSM / 100D (also *EOS M2) in one branch
 So when it get realeased it will have 650D / 700D / EOS M / 100D support
 *I need to check EOS M2 status in crop_rec_4k branch
-Don't break other models support like 5D3
-Code optimizations to avoid crashes, corrupted frames
-Some new things will be announced later

-Also and finally merge all of these new stuff to magiclantern_simplified

If everything went smoothly, you may expect an annoucment next month :)

Eos m2 is buggy, but very much working. I have the camera in pink, had it sent to me from dfort. Would you be interested in having the M2 sent to you for coding purposes? Maybe send it back when done, or keep it maybe.

theBilalFakhouri

  • Developer
  • Hero Member
  • *****
  • Posts: 1346
  • UHS-I
Re: LiveView Investigation
« Reply #117 on: March 01, 2023, 12:41:28 PM »
That would be a very useful merge :)  Modern cams and old cams in one repo!

Yes :D

Eos m2 is buggy, but very much working.

Pretty sure we can make it not buggy :)



I have the camera in pink, had it sent to me from dfort. Would you be interested in having the M2 sent to you for coding purposes? Maybe send it back when done, or keep it maybe.

Thanks for the offer!

Actually a donor offered to me his EOS M2 last year in September, and I accepted the offer, the donor was located in EU, I asked him to ship it to my friend in Germany and my friend got it.
(Thanks Donor!, do you mind mentioning your name?, credit will go to him in future).

Until now, I am still waiting a trusted passenger to bring it with him to my country, there was a chance last month but things didn't go well. Maybe later this year or next year.

Shipping it is very expensive and the main problem shipping can be complex at *unexpected times:
e.g. there was another donor offered to buy me a 70D body 1.5 years ago, the best 70D deal I could find at that time is from **China actually (low shutter count, brand new battery, cheaper),
due to "complexity" and unexpected "things" until now I didn't receive it. But might get a refund next month, and buy it locally.

*I bought a 3D printer a year ago, and PC monitor around ~2.5 years ago from China, shippments went smoothly (I waited ~25 days for 3D printer, around ~2-3 months for the monitor).
  Shipping cost for these items were equal if not a little more than items price, so if a 3D printer was 220 USD you pay ~500 USD with shipping (that's sometime still cheaper than buying items locally, it depend)

**You may ask if shipping was very expensive, why to buy a 70D and ship it from China?
    Right, but shipment this was actually *free* that time, a friend bought some stuff from China, I asked him to put the 70D body in one of his many large boxes, so no additinal cost was from my side. What a good friend :P

Sorry it was off-topic here. But I needed to make things clearer. Thanks again!


So basiclly I will have a EOS M2 and 70D to work on sooner or later :D
EOS M2 is more likely very similar to 100D, I will look into it later, also if there was a EOS M2 tester, that would helpful too.

Mattia

  • New to the forum
  • *
  • Posts: 49
Re: LiveView Investigation
« Reply #118 on: March 01, 2023, 06:47:03 PM »
Quote
So basiclly I will have a EOS M2 and 70D to work on sooner or later :D
EOS M2 is more likely very similar to 100D, I will look into it later, also if there was a EOS M2 tester, that would helpful too.

What about us forgotten 5d3 users? Will there be good news also for us?  :)

theBilalFakhouri

  • Developer
  • Hero Member
  • *****
  • Posts: 1346
  • UHS-I
Re: LiveView Investigation
« Reply #119 on: March 01, 2023, 07:17:52 PM »
What about us forgotten 5d3 users? Will there be good news also for us?  :)

Come on, 5D3 users are not forgotten . . at least not yet :P
I stopped working for now on 5D3, last update was here, surely I am getting closer, but unfortunately nothing . . yet.

I just need to finish working on 650D / 700D / EOS M/M2 / 100D family (might finish in two months), then after that my ML time would be dedicated to 5D3 to the rest of the year.
I hope I won't give up, even if I did, other devs will have the info which will be documented in future.

The research was started on 700D back in august 2020, and only this year (after ~2.4 years?) I was able to get an interesting results.
I again, really hope to get something this year on 5D3, but hope isn't enough really . . at least I can say my skills are improving overtime which translate to figuring out stuff faster (if it was not very complex) compared to me in the past years, like 2018 :P:

I really don't know much about coding yet.
The blue Developers will know the answer about these coding things :D

I was "New to the forum" member back then, didn't know anything about coding/reverse engineering, ML project was exciting/amazing enough to get me involved.
So: patience please :) , BTW do you still have your EOS M? if yes, you might get some exciting news for it next month ;D

Mattia

  • New to the forum
  • *
  • Posts: 49
Re: LiveView Investigation
« Reply #120 on: March 01, 2023, 07:27:44 PM »
Quote
So: patience please :) , BTW do you still have your EOS M? if yes, you might get some exciting news for it next month ;D
Nope! I've sold it! Right now I'm a happy 5d3 only user! Don't let me regret it! :)

theBilalFakhouri

  • Developer
  • Hero Member
  • *****
  • Posts: 1346
  • UHS-I
Re: LiveView Investigation
« Reply #121 on: March 01, 2023, 08:29:38 PM »
Nope! I've sold it! Right now I'm a happy 5d3 only user! Don't let me regret it! :)

Ah, I see :) Well, Canon made preview work differently on 5D3, not me ;)
Controlling preview on 5D3 must be possible . . somehow :D

theBilalFakhouri

  • Developer
  • Hero Member
  • *****
  • Posts: 1346
  • UHS-I
Re: LiveView Investigation
« Reply #122 on: March 04, 2023, 07:12:42 PM »

-I could exceed 2044 pixels width limit for the first time, this limit was introduced in the early days of this research.
-Next: figure out how to exceed 2520 width limit (if there is one), this time it won't be a black area, but *something else :) I didn't make any tests yet.

Preivew width limit now is around ~2860 pixels (going above this introduce black bar), much better than 2044, it should cover the following 1:1 presets:

-2.5K, 2520x1080 (already tested)
-2.8K, 2880x1226 (width tested, height not yet, should work)
-1440p, 2560x1440 (not tested yet, should work)

iaburn

  • Member
  • ***
  • Posts: 193
Re: LiveView Investigation
« Reply #123 on: March 04, 2023, 08:37:10 PM »
Preivew width limit now is around ~2860 pixels (going above this introduce black bar), much better than 2044, it should cover the following 1:1 presets:

-2.5K, 2520x1080 (already tested)
-2.8K, 2880x1226 (width tested, height not yet, should work)
-1440p, 2560x1440 (not tested yet, should work)

Awesome! That's already A LOT  :o
I think realtime preview is most useful in modes that allow continuous recording, so at least for the EOS M this is perfect  :D

amitkattal

  • New to the forum
  • *
  • Posts: 37
Re: LiveView Investigation
« Reply #124 on: March 05, 2023, 02:22:52 PM »
Preivew width limit now is around ~2860 pixels (going above this introduce black bar), much better than 2044, it should cover the following 1:1 presets:

-2.5K, 2520x1080 (already tested)
-2.8K, 2880x1226 (width tested, height not yet, should work)
-1440p, 2560x1440 (not tested yet, should work)

Thats awesome. You are pushing the limits everyday. Almost made it to the 3k limit.