[Xperia Z Android Development] |ErosizeD|:
So far,i got this device i noticed the huge compression on photos ( and better dont talk about that noise reduction )

and the lower and "limited" bitrate on videos, that cant be higher than 24.9mbps dont care about any kind of video resolution or format.

The phone uses h264 in high at level 4 that in theory allows us to.

Encode video at Resolution@Framerate(max stored frames)

1280x720@68.3 (9) ( wich only works the display framerate at 60fps, but encoding doesnt )
1920x1088@30.1 (4) ( the same with 720P )
2048x1024@30.0 (4) ( obviously not supported )

And the maximum bitrate allowed.

Max. video bit rate (VCL) 25 Mbit/s

Also jpeg compression is limited by someway at 85% quality, and extra postprocessing filters.

FPS capability, its "locked" up to 30fps, this phone can do so far 60fps, not sure if the Qualcomm supports 1080p at 60

but 720p by so far ( my razor managed it that ) and few test on this one, something tells me that its posible with some modding.

On my own tests i noticed modifying some files like media profiles that:

UPDATE 02/08/13

I found a file on kernel ( the one i downloaded from sony ) that maybe has something to do, about the compression rate, ill

let all the information here, so maybe can be usefull for kernel modders.

Located in: external/jpeg/cjpeg.c ( it can be found on other locations, not sure if used )

/* Set up default JPEG parameters. */
/* Note that default -quality level need not, and does not,
* match the default scaling for an explicit -qtables argument.
*/
[COLOR="Red"]quality = 75;	/* default -quality value */[/COLOR]
q_scale_factor = 100;	/* default to no scaling for -qtables */
force_baseline = FALSE;	/* by default, allow 16-bit quantizers */
simple_progressive = FALSE;
is_targa = FALSE;
outfilename = NULL;
cinfo->err->trace_level = 0;

Maybe that is the thing who forces compression? dont know, i need to compile but i dont know where or how to start ( not so good with linux ) :(

^ Nothing to do here ^

In video, i found this one. ( still testing, dont know if works )

Located in: kernel/drivers/video/msm/vidc/ddl/720p/vcd_ddl_properties.c

(encoder->codec.
codec == VCD_CODEC_H264) &&
(level->level >= VCD_LEVEL_H264_1) &&
(level->level <= VCD_LEVEL_H264_3p1)
) ||
(

////

static void ddl_set_default_enc_profile(struct ddl_encoder_data *encoder)
{
enum vcd_codec codec = encoder->codec.codec;
if (codec == VCD_CODEC_MPEG4)
encoder->profile.profile = VCD_PROFILE_MPEG4_SP;
else if (codec == VCD_CODEC_H264)
encoder->profile.profile = VCD_PROFILE_H264_BASELINE;
else
encoder->profile.profile = VCD_PROFILE_H263_BASELINE;

In almost same folder, there are other profiles like 1080p

case VCD_CODEC_MPEG4:
status = (profile->profile ==
VCD_PROFILE_MPEG4_SP) &&
(level->level >= VCD_LEVEL_MPEG4_0) &&
(level->level <= VCD_LEVEL_MPEG4_6) &&
(VCD_LEVEL_MPEG4_3b != level->level);
status = status ||
((profile->profile ==
VCD_PROFILE_MPEG4_ASP) &&
(level->level >= VCD_LEVEL_MPEG4_0) &&
(level->level <= VCD_LEVEL_MPEG4_5));
break;
case VCD_CODEC_H264:
status = (level->level >= VCD_LEVEL_H264_1) &&
(level->level <= VCD_LEVEL_H264_4);
break;
case VCD_CODEC_H263:
status = (level->level >= VCD_LEVEL_H263_10) &&
(level->level <= VCD_LEVEL_H263_70);
break;

here defined the level of encoder, and also the "profile" used (guess im not wrong at all im just speculating)

if you compare to the used by the device, 3.1 for 720p and 4.0 for 1080p.

UPDATE 12/08/13

Ive tested adding some profiles and modules to default config, but stills doesnt work, values remains the same.

UPDATE 26/08/13

After hard research on kernel, just i managed how it works a part of the encoding system ( my knowledge stills limited )

i unlocked MPEG4 (m4v) h263 codec bitrates ( up to 80mbps but default at 40 ), the kernel still not ready, but ill be launching

the first version when i got something solid to share with you :fingers-crossed:

Now im trying to raise the FPS value to 60 or more, and unlock MPEG4/AVC h264 codec bitrates, up to 80mbps ( for now only 25mbps )

DEFAULT 40mbps

MAX 80mbps

ANY HELP OR IDEAS WILL BE GREATLY APRECIATED

ANY HELP OR IDEAS WILL BE GREATLY APRECIATED

My knowledge stills limited, also my time to research on it, so i guess out there is people who can help on this,

we can make much better this device with a small thing like this, the device is aleardy fast, and optimized, only lasts the camera. ;)

I know not so much people cares about this, but i guess actually is a lack on almost every device, and almost no one, try to improve it.

Thanks to everyone who read the whole post, and excuse my bad english.

PD: This topic isnt development at all, but here comes almost all users and developers so i guess is the better place to place it, and

share knowledge about it.