500d development - page 234 - DSLR Hack development - CHDK Forum

500d development

  • 2487 Replies
  • 901243 Views
Re: 500d development
« Reply #2330 on: 01 / January / 2012, 04:20:43 »
Advertisements
2012 looks to be a good one. Let's make it even better with ML :)

*

Offline a1ex

  • *****
  • 671
  • ML dev
Re: 500d development
« Reply #2331 on: 01 / January / 2012, 13:24:40 »
Happy new year!

*

Offline Gary

  • *
  • 43
Re: 500d development
« Reply #2332 on: 01 / January / 2012, 16:59:56 »
Took some Timelapses in NYC last night.  Anyone got FPS working with 1080P?  What's the trick?
I guess not.

How about HDR Silent Picture in video mode?
(to get higher resolution)
« Last Edit: 02 / January / 2012, 14:52:57 by Gary »

Re: 500d development
« Reply #2333 on: 03 / January / 2012, 09:18:02 »
Happy New Year to everyone! :)

Have some questions is regards to 24fps... Is it only me or the quality does actually look much worse than shooting in 30fps? Also shooting in 24fps and then trying to convert it to the actual 24fps with Python I get an error saying "ERROR, the current FPS value isn't 30 for atom". But it still converts to 24fps...However, comparing the videos 30fps and 24fps I don't see much difference apart from couple of seconds of extended time. For some reason I can't get that movie effect. Maybe something wrong with the conversion? But when I put 30fps video into Python script then the converted file actually looks more like 24fps... Has anyone tried that? 
So far what I've got:
1) When shooting without FPS override in 30fps and then converting video with Python script the output 24fps file actually looks more like 24fps (way slower than original) (also Python script gives error).
2) When shooting in 24fps with FPS override and then converting video with Python script the output 24fps file looks exactly the same as original file (more like 30fps rather than 24fps) (also Python script gives error). 

Has anyone got any ideas what's wrong and what's not working? Also when shooting in 24fps it looks like there's great loss of quality. Any ideas? ;) thanx


*

Offline Coutts

  • *****
  • 538
  • www.flickr.com/couttsphotog
    • Flickr
Re: 500d development
« Reply #2334 on: 03 / January / 2012, 10:33:22 »
For encoding at different framerates, I think I may be onto something:

at 0xFF0EC270 in the 500d.111 firmware is the function "LVCDEV_H264EncodeStart". There is a structure at 0x49D0 which, at off_0xC, is the value for what movie mode you are in, ie: 0 for 1080p, 1 for 720p and 2 for 480p.

H264E_SetParameterH264Encode (0xFF17883C) is called with a different arg0, depending on which movie mode you are in. In SetParameterH264Encode, depending on which arg0 was passed (which depends on the video mode), a structure at 0x846C is setup with different offsets / values.


Interesting places to look at with bmp_hexdump:
- areas after 0x846C, specifically between off_0x70 and off_0xF0 (around that area)
- areas after 0x49D0.



I think I can post flow charts here, here's a flow chart of what I'm talking about (it makes it easier to see):




and a flowchart of SetparameterH264Encode to see how the structure is setup differently in each recording mode:





tl;dr
H264E_SetParameterH264Encode and the functions it calls need looking into.






---------
More analysis:

assuming 1080p video
LVCDEV_H264EncodeStart calls H264E_SetParameterH264Encode with arg0 as 0xA.

In H264E_SetParameterH264Encode, if arg0 is 0xA, the structure looks like this:
0x846C struct
off_0x64 = off_0x68
off_0x74 = off_0x78
off_0x84 = off_0x88
off_0x94 = off_0x98
off_0xA4 = off_0xA8
off_0xB4 = off_0xBC
off_0xB8 = off_0xC0
off_0xD4 = off_0xDC
off_0xD8 = off_0xE0


The initial values of the offsets on the right are setup in H264E_InitializeH264Encode (0xFF177F74), and are pulled from a pointer at off_0x8 of the struct at 0x846C, though I can't check the values now. There are two other H264E_Initialize functions: one for 720p and one for VGA.


I can't test anything because i don't have my macbook back yet (ffffffuuuuuuu), but interesting areas to look would be the values of the offsets on the right, ie: values we could overwrite and trick the h264 encoder into using.
« Last Edit: 03 / January / 2012, 11:21:08 by Coutts »
Canon 5d
Canon 50mm f/1.8
Sigma 24mm f/1.8

Flickr

Re: 500d development
« Reply #2335 on: 03 / January / 2012, 13:06:12 »
Has anyone got any ideas what's wrong and what's not working? Also when shooting in 24fps it looks like there's great loss of quality. Any ideas? ;) thanx

I haven't actually remarked any loss of quality since I haven't played with the frame rate much. But I still think that mk11174 was right when saying that with fps override, the individual frames overlap. It also looks to me that the shutter override works wit fps override enabled, it just ignores the fps setting leading to overlapping multiple (or incomplete) frames. That seems to me to be the cause of the tiny light loss when lowering shutter speed (most noticeable with lower fps) as the electronics needs some time to set everything up for the next frame (a black moment between two frames) - with faster shutter, if frames overlap, this moment is included several times causing the light loss. And it also explains, why shutter speed seems to be forced at 1/fps when enabling fps override - the single frames just get overlapped (summed) until we start computing the next video frame.

The HDR video and irregular "flashing" when exposure is set to the original value (or a sort of) in 1080p looks to be a similar problem caused by not too accurate timing of ML override routines - forcing them to sleep a few mseconds isn't a good idea for frame rate that gives a period which we are not able to represent by a decimal value. They should be rather called when the frame rate timer expires, or maybe we could (much better way, and well, not portable) alter some values in the memory in order to set the shutter/iso right in the Canon routines without calling ours every time a new frame gets processed.

Anyway, there won't be fully-working fps overriding until the shutter gets fixed.
Canon EOS 500D, EF-S 17-85mm f/4-5.6 IS USM

*

Offline vorob

  • *
  • 26
Re: 500d development
« Reply #2336 on: 04 / January / 2012, 05:41:38 »
Hi, I need your help,

Few years ago I was testing this custom firmware, but decided to delete it. I formatted my SD card and forget about it. I’ve even updated my camera to the latest official firmware. But I have this weird bug:

I turn off camera, pick out sd card and close tray. Leave camera for some time and when I pick it back its hot and battery is discharged.

What should I do to fix this issue?

Thanks for any help.

Re: 500d development
« Reply #2337 on: 04 / January / 2012, 08:14:48 »
Hi, I need your help,

Few years ago I was testing this custom firmware, but decided to delete it. I formatted my SD card and forget about it. I’ve even updated my camera to the latest official firmware. But I have this weird bug:

I turn off camera, pick out sd card and close tray. Leave camera for some time and when I pick it back its hot and battery is discharged.

What should I do to fix this issue?

Thanks for any help.


Hi,
you need to wait some time after opening the card slot door until the red card LED flashes. After that, it is safe to remove the memory card otherwise the camera will lock up.
Canon EOS 500D, EF-S 17-85mm f/4-5.6 IS USM


*

Offline Coutts

  • *****
  • 538
  • www.flickr.com/couttsphotog
    • Flickr
Re: 500d development
« Reply #2338 on: 04 / January / 2012, 11:32:33 »
With some slight tweaks, I was able to get the arm-console to work under windows! :D
No cygwin required, I just installed yagarto for an arm toolchain, python 2.6, and installed all of the required packages.



note: I had to change disasm.py to account for the different new line characters in windows (vs unix), but after that everything works!
Canon 5d
Canon 50mm f/1.8
Sigma 24mm f/1.8

Flickr

Re: 500d development
« Reply #2339 on: 04 / January / 2012, 12:34:10 »
That may help me quite a bit. Thanks Coutts

 

Related Topics