Vision+ camera and and possibility to edit bitrate?

A5S50 ?

from config output : ....

DSP_CODE_IMG="../ucode/a5s_50/orccode.bin"
DSP_MEMD_IMG="../ucode/a5s_50/orcme.bin"
DSP_DATA_IMG="../ucode/a5s_50/default_binary.bin"

"The A5s50 supports the standard interlaced HD broadcast format 1080i60 optimized for display on TV."
 
Yes is a lot probable

Ambarella A5s50 processor support 1080p 30FPS & 1080i 30FPS

Infact all my test fails when i tried to activate 1080 60p
 
I give up testing. No way to perform 1080 60p on this camera. Surely the proc is the A5S50 that is not capable of.
 
Can you give some details on how the dji app send commands to the camera to change video mode ?

Also for the bitrates, did you edit directly the firmware.bin, or throught AFT tool ?
 
Can you give some details on how the dji app send commands to the camera to change video mode ?

Also for the bitrates, did you edit directly the firmware.bin, or throught AFT tool ?
The dji app send commands through the dji sdk, I've downloaded them but there is a lot of code and before to try to understand there I've tried to change the res with autoexec.ash method to see if the res was supported. The res is not supported so it's useless to go on. The bitrate is edited through the firmware with an hex editor.
 
Hi
Great work with the Camera firmware - thanx.
Any thoughts on why 720p60 (best option in theory) is only wide (fisheye) fov and not available in narrow fov, as 1080p30 is, wich makes it kind of worthless for me?
Or am I missing something ?!
Johan
 
My first time commenting on the forum so I special thanks to all those who contribute :) Im learning a great deal, its fun so thanks again.

I spend most my time on here searching and reading then re reading to understand all the technical talk lol.

Is it possible to edit / modify the firmware to increase the bitrate of images? Increase image quality in .raw or .jpeg?

I feel rude to ask, if it is possible, can someone provide modified firmware with maximum bitrate for stills / photos and 1080p lease.

Thanks to all.
 
Hey you guys!

I have been following this thread, and what you have done is amazing! My dear Vision Plus now shoots MUCH better quality than before! :D Thanks a lot!! :D

Having worked a lot in video production during the years, I have a good amount of knowledge about video image quality and such, tho I have no programming skills myself to hack a firmware...

I have found out that for me 720p60 with the setting "Hard" is the best looking mode now. Hard actually means no noise reduction. Standard has a lot of it and Soft totally destroys the image by taking away all the noise and details. So Hard actually gives the most natural image. Try shooting 720p60 with Hard and this super 24mbps firmware hack. Looks the best! A lot more details preserved than Standard, and no fake details added (except for sharpening).

720p60 Hard.jpg

Snapshot from 720p60 24mbps in "Hard" mode. Pretty good quality right "out of the box" witn no processing in post!

The Hard setting gives quite a bit more noise, but this should be processed in a better way in post instead if needed... Here is a test with Standard mode in JPEG compared to RAW, 1:1 crop:

JPEG STANDARD - RAW.jpg
A lot of detail lost, and the trees almost look painted, all due to the noise reduction added in Standard and Soft.

What would improve the image quality even further (beyond upping the bitrate even more to 28 or 30mbps) must be if someone could figure out how to totally remove or heavily decrease sharpening added during video (and jpeg) processing. This has nothing to do with the noise reduction mentioned earlier in this post (Hard, Standard & Soft, tho the two latter settings have NR implemented)...

You guys can see in this comparison that a lot of sharpening gets added before compression:

JPEG HARD - RAW.jpg

Unsharp mask added in FC200 to JPEG and video before compression.

Without this heavy sharpening (probably in the form of "unsharp mask"), the video image would look a lot better, less noise and also less comression artifacts due to a lot less image details to process... And a more filmic look. Decreasing the amount to 50% of what it is set to now would probably be a good setting. (The Soft setting seems to have none of this sharpening, and video is perhaps thus only totally destroyed by NR using it, so maybe it can reveal some info on what setting or number to adjust...)

Unsharp mask.jpg

Probable amount of unsharp mask added by FC200,
here added to the RAW image in Photoshop.


So what I have figured out is:

Hard = Unsharp mask (sharpening)
Standard = Unsharp mask & noise reduction
Soft = Noise reduction

1080p Modes Compare.jpg

Snapshots from 1080p video 24mbps for comparison. Notice the lack of detail in trees in the first two. I am not paid by the people behind Neat Video BTW, this is just a comparison to show... :p

My conclusion is that the optimal mode would be Hard with 50% of the unsharp mask or even less... 25% of the original actually seems to be an adequate amount of sharpening. We would then have a much better and cleaner video (and JPEG) image without too much noise and no stupid degrading noise reduction.

(Why DJI did not give us 24mbps (+) and an image without all this overprocessing in the first place, we might never know.... Would be interesting to find out tho!)

28 or 30mbps would also be a good thing in my opinion...if this is possible. It being waste of disk space at least is just nonsense (to me at least). 28mbps is normal in consumer 1080x camcorders recording using h264 compression, 50mbps pretty normal in prosumer ones doing the same
...and so on... ;)


Hope someone of you can take a look into this, as I am not into programming myself... :)


Cheers,

Sem
 
Last edited:
  • Like
Reactions: Nerius
Phantom is shipped with low speed class 4 (I think) SD card sutibale for 11mbps. With 28mbps you need expansive class 10 SD cards, its all about cost.
J.
 
Phantom is shipped with low speed class 4 (I think) SD card sutibale for 11mbps. With 28mbps you need expansive class 10 SD cards, its all about cost.
J.

I do not think that is the case. They would not sacrifice the quality in such extent just because of a small cost like that.

Anyways... Class 4 means minimum 4 MegaBytes/sec which converts to 32 megabits/sec, so that should be more than enough for even 30mbits anyways...

SD Classes.jpg


;)
 
Last edited:
Here is some more tests with these commands :

t ia2 -adj tidx -1 0 -1
t is2 -shp fir_mode 0
t is2 -shp fir 10 0 0 0 0 0 0
t is2 -shp fir_mode 1
t is2 -shp fir 10 0 0 0 0 0 0
t is2 -shp fir_mode 2
t is2 -shp fir 10 0 0 0 0 0 0
t is2 -shp fir_mode 3
t is2 -shp fir 10 0 0 0 0 0 0
t is2 -shp spat_mode 0
t is2 -shp spat 5 5 50 255
t is2 -shp spat_mode 1
t is2 -shp spat 5 5 50 255
t is2 -shp spat_mode 2
t is2 -shp spat 5 5 50 255
t is2 -shp spat_mode 3
t is2 -shp spat 5 5 50 255
t is2 -shp level_min 50 5 10 30 160 5 30
t is2 -shp level_all 20 5 5 5 160 5 5
t is2 -cnf enable weak

I basically tried to reduce/disable every noise reduction or sharpening filters (base setting was standard sharpening)

All at once they give these results :
jpeg.png
video.png
 
Here is some more tests with these commands :

t ia2 -adj tidx -1 0 -1
t is2 -shp fir_mode 0
t is2 -shp fir 10 0 0 0 0 0 0
t is2 -shp fir_mode 1
t is2 -shp fir 10 0 0 0 0 0 0
t is2 -shp fir_mode 2
t is2 -shp fir 10 0 0 0 0 0 0
t is2 -shp fir_mode 3
t is2 -shp fir 10 0 0 0 0 0 0
t is2 -shp spat_mode 0
t is2 -shp spat 5 5 50 255
t is2 -shp spat_mode 1
t is2 -shp spat 5 5 50 255
t is2 -shp spat_mode 2
t is2 -shp spat 5 5 50 255
t is2 -shp spat_mode 3
t is2 -shp spat 5 5 50 255
t is2 -shp level_min 50 5 10 30 160 5 30
t is2 -shp level_all 20 5 5 5 160 5 5
t is2 -cnf enable weak

I basically tried to reduce/disable every noise reduction or sharpening filters (base setting was standard sharpening)

All at once they give these results :
View attachment 26968 View attachment 26969

Cool. But what I can see from these tests is that only noise reduction has been disabled,
but the amount of sharpening stays the same, therefore still a high amount of visible noise.
"Original" looks like Standard and "Tweaked" looks like Hard. Hmmm... :confused:

Perhaps there is less sharpening in the tweaked images, but very difficult to know as you compare them to the Standard mode. Would be easier to see if Hard was the "Original" (as it is free of NR). :)
 
Last edited:
Cool. But what I can see from these tests is that only noise reduction has been disabled,
but the amount of sharpening stays the same, therefore still a high amount of visible noise.
"Original" looks like Standard and "Tweaked" looks like Hard. Hmmm... :confused:

Perhaps there is less sharpening in the tweaked images, but very difficult to know as you compare them to the Standard mode. Would be easier to see if Hard was the "Original" (as it is free of NR). :)
Has anyone figured out why narrow FOV produces quite excellent picture and wide not so good? On wide FOV there must be some post processing made but in narrow mode it looks natural and very good. The narrow mode is just not so practical as the wide mode as you have to fly far away from your subject. (and I'm talking about the latest modified Fw)
 
Last edited:
Has anyone figured out why narrow FOV produces quite excellent picture and wide not so good? On wide FOV there must be some post processing made but in narrow mode it looks natural and very good. The narrow mode is just not so practical as the wide mode as you have to fly far away from your subject. (and I'm talking about the latest modified Fw)

Hey man! Thanks for initiating all this! :D

It looks more natural because there is no line skipping and all which come with that...

Wide FOV employs the whole effective area of the CMOS image sensor, but not all vertical and horizontal lines of pixels are used, therefore jagged lines, moiré, aliasing and such artifacts appear.

Narrow FOV, on the other hand, deploys only the middle of the CMOS (1920x1080 pixels).
Bacause it is done using 1:1 pixel mapping, no line skipping is necessary, and thus much less artifacts show up. We get a much more true 1080 resolution in narrow mode because of this more optimal and natural read-out from the image sensor.

There is nevertheless quite an amount of sharpening added even in this mode, so if someone figured out how to reduce it...it would do wonders to the overall video quality for all of us... :rolleyes:

Also...is there any way to activate 720p50 recording for us in PAL Land? I think it is a bit strange this mode is absent while 1080p25 is present...
 
Last edited:
Exactly, for the wide FOV there's is a 2x2 binning process used by the sensor. final pixel color is averaged using 2 adjacent pixels in x and y. This process produces some aliasing.

Area used : (3840 x 2176), divided by 2 = 1920 x 1088

For the Narrow FOV, as SKyDude said, it's a native 1:1 pixel reading, however internally the resolution read by the sensor is 2304x1296 then downscaled by the encoder to 1920x1088. This is why narrow is even better.

I will upload later, an autoexec script that may improve a little bit the wide FOV. I tried to take advantage of the 2304x1296 resolution, and then doubled the area read by the sensor wich gives a slighlty wider FOV than default wide FOV, but the aliasing seems to be reduced. It's still a work in progress.
 
So here is the script :

You first have to put the camera mode in 1080p30 Narrow FOV, plug usb, unzip the "autoexec.ash" file to root of sdcard and then reboot the P2V+.

The narrow field will be replaced by a "super wide" fov, with slightly better quality than default wide fov :

Area read by sensor : 4608 x 2592 then "binned" to 2304*1296 and finally encoded to 1920*1088. The image will get also slightly more exposured.

This is a safe and non permanent script, as soon as you remove the file from the sdcard or you change the camera mode (resolution or fov) in the app, settings will revert to default.

Please have a try and tell me what you think.
 

Attachments

  • autoexec.zip
    235 bytes · Views: 287
Exactly, for the wide FOV there's is a 2x2 binning process used by the sensor. final pixel color is averaged using 2 adjacent pixels in x and y. This process produces some aliasing.

Area used : (3840 x 2176), divided by 2 = 1920 x 1088

For the Narrow FOV, as SKyDude said, it's a native 1:1 pixel reading, however internally the resolution read by the sensor is 2304x1296 then downscaled by the encoder to 1920x1088. This is why narrow is even better.

I will upload later, an autoexec script that may improve a little bit the wide FOV. I tried to take advantage of the 2304x1296 resolution, and then doubled the area read by the sensor wich gives a slighlty wider FOV than default wide FOV, but the aliasing seems to be reduced. It's still a work in progress.

Thanks for clearifying that, Gueria ;)

Will check out your script some day! :D
 

Recent Posts

Members online

Forum statistics

Threads
143,099
Messages
1,467,637
Members
104,985
Latest member
DonT