[GUIDE][CAM] How To Hack SONY Xperia Camera (Bring Higher Bitrate & More Options)

Search This thread

Rizal Lovins

Recognized Developer / Themer / Inactive RC
May 30, 2012
1,618
15,948
Bandung
LG V30
Hello Xperia friends....
I just want to show you how to hack All Xperia Camera :laugh:


Requirement :

Knowladge in decompile/recompile apps


Hacking Audio Bitrate Video Recording

INFO for smali code

Value 0
Name: LowRate
Type: REG_DWORD
Data: 0x1f400 (SONY use this low bitrate :mad: so find this code to replace in the next step)

Value 1
Name: MediumRate
Type: REG_DWORD
Data: 0x2ee00

Value 2
Name: MediumHighRate
Type: REG_DWORD
Data: 0x3e800 (i'm use this code)

Value 3
Name: HighRate
Type: REG_DWORD
Data: 0x4e200​

1. Decompile SemcCameraUI.apk
2. Go to smali/com/sonyericsson/android/camera

open Constants.smali using text editor/notepad++ then find this line
Code:
.field public static final VIDEO_AUDIO_BIT_RATE:I = [COLOR="Red"]0x1f400[/COLOR]

change RED Color code to code from INFO CODE, example :
Code:
.field public static final VIDEO_AUDIO_BIT_RATE:I = [COLOR="Red"]0x3e800[/COLOR]

save it!!!!

3. Go to smali/com/sonyericsson/android/camera/configuration/parameters

open VideoSize$VideoProfile$Builder.smali ( if there smali available, i mean different Xperia have diffierent parameters like older Xperia 2011)

search this code
Code:
[COLOR="Red"]0x1f400[/COLOR]

then change to
Code:
[COLOR="Red"]0x3e800[/COLOR]

save it!!!

4. Go to smali/com/sonyericsson/android/camera/configuration/parameters

open VideoSize.smali

search all this code
Code:
[COLOR="Red"]0x1f400[/COLOR]

then change all code to
Code:
[COLOR="Red"]0x3e800[/COLOR]

save it!!! Done


LAG ON VIDEO RECORDING ON XPERIA 2011 & XPERIA 2012 (Snapdragon S3/Novathor)??? :confused:

Here is solution change FORMAT H264 to MPEG4!!!

INFO H264 VS MPEG4​
http://www.y-cam.com/blog/mpeg4-vs-h-264-45/

Smali code

H263 is
Code:
0x1

H264 is
Code:
0x2

MPEG4 is
Code:
0x3

1. Go to smali/com/sonyericsson/android/camera/configuration/parameters

open VideoSize.smali using text editor/notepad++ then find this line

(Note the Local maybe different)
Code:
.local v7, "videoFrameRate":I
const/4 v6, [COLOR="Red"]0x2[/COLOR]

change to

Code:
.local v7, "videoFrameRate":I
const/4 v6, [COLOR="Red"]0x3[/COLOR]

Save it!!! Done ;)
 
Last edited:

Rizal Lovins

Recognized Developer / Themer / Inactive RC
May 30, 2012
1,618
15,948
Bandung
LG V30
Hacking Video Recording Bitrate

INFO for smali code

Value 1
Name: MediumRate
Data: 0xb71b00

Value 2
Name: MediumHighRate
Data: 0x10b0760

Value 3
Name: HighRate
Data: 0x1312d00

Value 4
Name: UltraHighRate
Data: 0x1c9c380​


1. Go to smali/com/sonyericsson/android/camera

open Constants.smali using text editor/notepad++ then find this line

For HD 720p
Code:
.field public static final VIDEO_BIT_RATE_EX_HIGH_12M:I = [COLOR="Red"]0xb71b00[/COLOR]

change to
Code:
.field public static final VIDEO_BIT_RATE_EX_HIGH_12M:I = [COLOR="Red"]0x10b0760[/COLOR]

For FULL HD 1080p
Code:
.field public static final VIDEO_BIT_RATE_EX_HIGH_17_5M:I = [COLOR="Red"]0x10b0760[/COLOR]

change to
Code:
.field public static final VIDEO_BIT_RATE_EX_HIGH_17_5M:I = [COLOR="Red"]0x1312d00[/COLOR]

save it!!!

2. Go to smali/com/sonyericsson/android/camera/configuration/parameters

open VideoSize.smali the find this line

For HD 720p
Code:
[COLOR="Red"]0xb71b00[/COLOR]

change to
Code:
[COLOR="Red"]0x10b0760[/COLOR]

For FULL HD 1080p
Code:
[COLOR="Red"]0x10b0760[/COLOR]

change that all code to
Code:
[COLOR="Red"]0x1312d00[/COLOR]

save it!!! Done ;)

NOW AFTER EDITING VIDEO AUDIO BITRATE & VIDEO BITRATE YOU NEED TO EDIT media_profile.xml

open media_profile.xml using text editor/notepad++ then find this line

FIX 100% Image Quality
Code:
<!ATTLIST ImageEncoding quality [COLOR="Red"](90|80|70|60|50|40)[/COLOR] #REQUIRED>

change to
Code:
<!ATTLIST ImageEncoding quality [COLOR="Red"](100|90|80|70|60|50)[/COLOR] #REQUIRED>

There is 2 lines code for back camera & front camera

Code:
<ImageEncoding quality="[COLOR="Red"]95[/COLOR]" />
<ImageEncoding quality="[COLOR="Red"]80[/COLOR]" />
<ImageEncoding quality="[COLOR="Red"]70[/COLOR]" />

change all code to
Code:
<ImageEncoding quality="[COLOR="Red"]100[/COLOR]" />
<ImageEncoding quality="[COLOR="Red"]90[/COLOR]" />
<ImageEncoding quality="[COLOR="Red"]80[/COLOR]" />


Adjust the value of smali Video & Audio Video bitrate with media-profile.xml (as you modified it)

There is many lines code for Video you need to change them all, example

Code:
        <EncoderProfile quality="1080p" fileFormat="mp4" duration="60">
            <Video codec="h264"
                   bitRate="17500000"
                   width="1920"
                   height="1080"
                   frameRate="30" />

            <Audio codec="aac"
                   bitRate="156000"
                   sampleRate="48000"
                   channels="2" />
        </EncoderProfile>

        <EncoderProfile quality="720p" fileFormat="mp4" duration="60">
            <Video codec="h264"
                   bitRate="12000000"
                   width="1280"
                   height="720"
                   frameRate="30" />

            <Audio codec="aac"
                   bitRate="156000"
                   sampleRate="48000"
                   channels="2" />
        </EncoderProfile>

change to

Code:
        <EncoderProfile quality="1080p" fileFormat="mp4" duration="60">
            <Video codec="h264"
                   bitRate="20000000"
                   width="1920"
                   height="1080"
                   frameRate="30" />

            <Audio codec="aac"
                   bitRate="256000"
                   sampleRate="48000"
                   channels="2" />
        </EncoderProfile>

        <EncoderProfile quality="720p" fileFormat="mp4" duration="60">
            <Video codec="h264"
                   bitRate="1750000"
                   width="1280"
                   height="720"
                   frameRate="30" />

            <Audio codec="aac"
                   bitRate="256000"
                   sampleRate="48000"
                   channels="2" />
        </EncoderProfile>

Code:
    <VideoEncoderCap name="h264" enabled="true"
        minBitRate="64000" maxBitRate="[COLOR="Red"]20000000[/COLOR]"
        minFrameWidth="176" maxFrameWidth="1920"
        minFrameHeight="144" maxFrameHeight="1080"
        minFrameRate="15" maxFrameRate="30" />

Code:
    <AudioEncoderCap name="aac" enabled="true"
        minBitRate="8000" maxBitRate="[COLOR="Red"]256000[/COLOR]"
        minSampleRate="8000" maxSampleRate="48000"
        minChannels="1" maxChannels="[COLOR="Red"]2[/COLOR]" />

Note maxChannels Number in RED Color, can be 6 or 2
 
Last edited:

Rizal Lovins

Recognized Developer / Themer / Inactive RC
May 30, 2012
1,618
15,948
Bandung
LG V30
EXperimental hacking, Change format RGB_565 to ARGB8888

I use ONLY on Xperia 2011

1. Go to smali/com/sonyericsson/android/camera

open CameraActivity.smali using text editor/notepad++ then find this line

Code:
sget-object v12, Landroid/graphics/Bitmap$Config;->[COLOR="Red"]RGB_565[/COLOR]:Landroid/graphics/Bitmap$Config;
Code:
sget-object v0, Landroid/graphics/Bitmap$Config;->[COLOR="Red"]RGB_565[/COLOR]:Landroid/graphics/Bitmap$Config;

Change RED Color code to

Code:
[COLOR="Red"]ARGB_8888[/COLOR]

2. Go to smali/com/sonyericsson/android/camera

open ImageManager.smali then search for RGB example :
Code:
sget-object v0, Landroid/graphics/Bitmap$Config;->[COLOR="Red"]RGB_565[/COLOR]:Landroid/graphics/Bitmap$Config;

change all code to
Code:
sget-object v0, Landroid/graphics/Bitmap$Config;->[COLOR="Red"]ARGB_8888[/COLOR]:Landroid/graphics/Bitmap$Config;

3. Go to smali/com/sonyericsson/android/camera/device

open CameraExtensionValues.smali then search for RGB example :
Code:
.field public static final POSTVIEW_FORMAT_RGB565:Ljava/lang/String; = [COLOR="Red"]"rgb565"[/COLOR]

change to

Code:
.field public static final POSTVIEW_FORMAT_RGB565:Ljava/lang/String; = [COLOR="Red"]"argb8888"[/COLOR]

save it!!!

Enable inPreferQualityOverSpeed (I Use ONLY on Xperia 2011)

1. Go to smali/com/sonyericsson/android/camera

open CameraActivity.smali

Code:
[COLOR="Red"].local v11, opt:Landroid/graphics/BitmapFactory$Options;[/COLOR]
[COLOR="Red"]sget-object v15, Landroid/graphics/Bitmap$Config;->RGB_565:Landroid/graphics/Bitmap$Config;[/COLOR]

[COLOR="Red"]iput-boolean v6, v11, Landroid/graphics/BitmapFactory$Options;->inPreferQualityOverSpeed:Z[/COLOR]

iput-object v15, v11, Landroid/graphics/BitmapFactory$Options;->inPreferredConfig:Landroid/graphics/Bitmap$Config;

Look for RED Color it's should be like this
Code:
[COLOR="Red"]
.local v11, opt:Landroid/graphics/BitmapFactory$Options;
const/4 v6, 0x1[/COLOR]
[COLOR="Red"]iput-boolean v6, v11, Landroid/graphics/BitmapFactory$Options;->inPreferQualityOverSpeed:Z

iput-boolean v6, v11, Landroid/graphics/BitmapFactory$Options;->inDither:Z[/COLOR]

[COLOR="Red"]sget-object v15, Landroid/graphics/Bitmap$Config;->ARGB_8888:Landroid/graphics/Bitmap$Config;[/COLOR]

iput-object v15, v11, Landroid/graphics/BitmapFactory$Options;->inPreferredConfig:Landroid/graphics/Bitmap$Config;
 
Last edited:

Rizal Lovins

Recognized Developer / Themer / Inactive RC
May 30, 2012
1,618
15,948
Bandung
LG V30
Hacking Camera Resolution/MP (More Options)

More Options for Photo (Only work for Xperia 2011 & 2012 Snapdragon S3/Novathor)

For Xperia 2012 Snapdragon S4 and 2013/2014 doesn't work, need to be removing some code in smali, i'm still looking for it :)

1. Go to res/value

open arrays.xml using text editor/notepad++ then find this line

For 12MP Camera
Code:
<string-array name="ux_recommended_resolution_array_main_12m">
     <item>TWELVE_MP</item>
     <item>NINE_MP</item>
     <item>TWO_MP</item>
     <item>TWO_MP_WIDE</item>

add others line
Code:
<string-array name="ux_recommended_resolution_array_main_12m">
        <item>TWELVE_MP</item>
        <item>NINE_MP</item>
	<item>EIGHT_MP</item>
	<item>FIVE_MP</item>
	<item>THREE_MP_WIDE</item>
        <item>TWO_MP</item>
        <item>TWO_MP_WIDE</item>

For 8MP Camera
Code:
<string-array name="ux_recommended_resolution_array_main_8m">
     <item>EIGHT_MP</item>
     <item>SIX_MP</item>
     <item>TWO_MP</item>
     <item>TWO_MP_WIDE</item>

add others line
Code:
<string-array name="ux_recommended_resolution_array_main_8m">
     <item>EIGHT_MP</item>
     <item>SIX_MP</item>
     <item>FIVE_MP</item>
     <item>THREE_MP</item>
     <item>TWO_MP</item>
     <item>TWO_MP_WIDE</item>


More Options for Video (Work for all Xperia)

1. Go to res/value

open arrays.xml using text editor/notepad++ then find this line

For 20MP Camera
Code:
<string-array name="ux_recommended_video_size_array_main_20m">
     <item>FULL_HD</item>
     <item>HD</item>
     <item>MMS</item>

add others line
Code:
<string-array name="ux_recommended_video_size_array_main_20m">
     <item>FULL_HD</item>
     <item>HD</item>
     <item>FWVGA</item>
     <item>VGA</item>
     <item>QVGA</item>
     <item>MMS</item>

For 13MP Camera
Code:
<string-array name="ux_recommended_video_size_array_main_13m">
     <item>FULL_HD</item>
     <item>HD</item>
     <item>MMS</item>

add others line
Code:
<string-array name="ux_recommended_video_size_array_main_13m">
     <item>FULL_HD</item>
     <item>HD</item>
     <item>FWVGA</item>
     <item>VGA</item>
     <item>QVGA</item>
     <item>MMS</item>

For 12MP Camera
Code:
<string-array name="ux_recommended_video_size_array_main_12m">
     <item>FULL_HD</item>
     <item>HD</item>
     <item>MMS</item>

add others line
Code:
<string-array name="ux_recommended_video_size_array_main_12m">
     <item>FULL_HD</item>
     <item>HD</item>
     <item>FWVGA</item>
     <item>VGA</item>
     <item>QVGA</item>
     <item>MMS</item>

For 8MP Camera FULL HD 1080p
Code:
<string-array name="ux_recommended_video_size_array_main_8m_full_hd">
     <item>FULL_HD</item>
     <item>HD</item>
     <item>MMS</item>

add others line
Code:
<string-array name="ux_recommended_video_size_array_main_8m_full_hd">
     <item>FULL_HD</item>
     <item>HD</item>
     <item>FWVGA</item>
     <item>VGA</item>
     <item>QVGA</item>
     <item>MMS</item>

For 8MP Camera HD 720p
Code:
<string-array name="ux_recommended_video_size_array_main_8m_hd">
     <item>HD</item>
     <item>FWVGA</item>
     <item>QVGA</item>
     <item>MMS</item>

add others line
Code:
<string-array name="ux_recommended_video_size_array_main_8m_hd">
     <item>HD</item>
     <item>FWVGA</item>
     <item>VGA</item>
     <item>QVGA</item>
     <item>MMS</item>

For 5MP Camera HD 720p
Code:
<string-array name="ux_recommended_video_size_array_main_5m_fwvga">
     <item>HD</item>
     <item>FWVGA</item>
     <item>QVGA</item>
     <item>MMS</item>

add others line
Code:
<string-array name="ux_recommended_video_size_array_main_5m_fwvga">
     <item>HD</item>
     <item>FWVGA</item>
     <item>VGA</item>
     <item>QVGA</item>
     <item>MMS</item>

Save it!!!
 
Last edited:

Rizal Lovins

Recognized Developer / Themer / Inactive RC
May 30, 2012
1,618
15,948
Bandung
LG V30
Enable 12MP Superior Auto on Jelly Bean 4.3

How to Install :

- Download the file in attachment
- Copy to system with root explorer etc
- Set permissions to 644 (rw-r--r--)
- Move the file to system>vendor>overlay
- Reboot
- After boot go to settings>apps>all
- Clear data Camera & try open camera app

Enjoy :laugh:

Credits :
Thanks to SONY Mobile that made all this possible
Thanks to my old friend @Xperia-Ray for helping me from beginning
 

Attachments

  • com.sonyericsson.android.camera-res.apk
    3.2 KB · Views: 812
Last edited:
F

Fragmentos

Guest
Nice guide man!
Will try it :)

Sent from my LT18i using Tapatalk 2
 

Kuato

Senior Member
Sep 30, 2012
877
402
nowhere
Nuhun kang, I'll try ur guide, anyway how to change the photo quality? Is it same method? :)

Sent from my C1905 using XDA Premium 4 mobile app
 

Kuato

Senior Member
Sep 30, 2012
877
402
nowhere
Report: No sound when using video to record, :(


Sent from my C1905 using XDA Premium 4 mobile app
 

Top Liked Posts

  • There are no posts matching your filters.
  • 71
    Hello Xperia friends....
    I just want to show you how to hack All Xperia Camera :laugh:


    Requirement :

    Knowladge in decompile/recompile apps


    Hacking Audio Bitrate Video Recording

    INFO for smali code

    Value 0
    Name: LowRate
    Type: REG_DWORD
    Data: 0x1f400 (SONY use this low bitrate :mad: so find this code to replace in the next step)

    Value 1
    Name: MediumRate
    Type: REG_DWORD
    Data: 0x2ee00

    Value 2
    Name: MediumHighRate
    Type: REG_DWORD
    Data: 0x3e800 (i'm use this code)

    Value 3
    Name: HighRate
    Type: REG_DWORD
    Data: 0x4e200​

    1. Decompile SemcCameraUI.apk
    2. Go to smali/com/sonyericsson/android/camera

    open Constants.smali using text editor/notepad++ then find this line
    Code:
    .field public static final VIDEO_AUDIO_BIT_RATE:I = [COLOR="Red"]0x1f400[/COLOR]

    change RED Color code to code from INFO CODE, example :
    Code:
    .field public static final VIDEO_AUDIO_BIT_RATE:I = [COLOR="Red"]0x3e800[/COLOR]

    save it!!!!

    3. Go to smali/com/sonyericsson/android/camera/configuration/parameters

    open VideoSize$VideoProfile$Builder.smali ( if there smali available, i mean different Xperia have diffierent parameters like older Xperia 2011)

    search this code
    Code:
    [COLOR="Red"]0x1f400[/COLOR]

    then change to
    Code:
    [COLOR="Red"]0x3e800[/COLOR]

    save it!!!

    4. Go to smali/com/sonyericsson/android/camera/configuration/parameters

    open VideoSize.smali

    search all this code
    Code:
    [COLOR="Red"]0x1f400[/COLOR]

    then change all code to
    Code:
    [COLOR="Red"]0x3e800[/COLOR]

    save it!!! Done


    LAG ON VIDEO RECORDING ON XPERIA 2011 & XPERIA 2012 (Snapdragon S3/Novathor)??? :confused:

    Here is solution change FORMAT H264 to MPEG4!!!

    INFO H264 VS MPEG4​
    http://www.y-cam.com/blog/mpeg4-vs-h-264-45/

    Smali code

    H263 is
    Code:
    0x1

    H264 is
    Code:
    0x2

    MPEG4 is
    Code:
    0x3

    1. Go to smali/com/sonyericsson/android/camera/configuration/parameters

    open VideoSize.smali using text editor/notepad++ then find this line

    (Note the Local maybe different)
    Code:
    .local v7, "videoFrameRate":I
    const/4 v6, [COLOR="Red"]0x2[/COLOR]

    change to

    Code:
    .local v7, "videoFrameRate":I
    const/4 v6, [COLOR="Red"]0x3[/COLOR]

    Save it!!! Done ;)
    35
    Hacking Video Recording Bitrate

    INFO for smali code

    Value 1
    Name: MediumRate
    Data: 0xb71b00

    Value 2
    Name: MediumHighRate
    Data: 0x10b0760

    Value 3
    Name: HighRate
    Data: 0x1312d00

    Value 4
    Name: UltraHighRate
    Data: 0x1c9c380​


    1. Go to smali/com/sonyericsson/android/camera

    open Constants.smali using text editor/notepad++ then find this line

    For HD 720p
    Code:
    .field public static final VIDEO_BIT_RATE_EX_HIGH_12M:I = [COLOR="Red"]0xb71b00[/COLOR]

    change to
    Code:
    .field public static final VIDEO_BIT_RATE_EX_HIGH_12M:I = [COLOR="Red"]0x10b0760[/COLOR]

    For FULL HD 1080p
    Code:
    .field public static final VIDEO_BIT_RATE_EX_HIGH_17_5M:I = [COLOR="Red"]0x10b0760[/COLOR]

    change to
    Code:
    .field public static final VIDEO_BIT_RATE_EX_HIGH_17_5M:I = [COLOR="Red"]0x1312d00[/COLOR]

    save it!!!

    2. Go to smali/com/sonyericsson/android/camera/configuration/parameters

    open VideoSize.smali the find this line

    For HD 720p
    Code:
    [COLOR="Red"]0xb71b00[/COLOR]

    change to
    Code:
    [COLOR="Red"]0x10b0760[/COLOR]

    For FULL HD 1080p
    Code:
    [COLOR="Red"]0x10b0760[/COLOR]

    change that all code to
    Code:
    [COLOR="Red"]0x1312d00[/COLOR]

    save it!!! Done ;)

    NOW AFTER EDITING VIDEO AUDIO BITRATE & VIDEO BITRATE YOU NEED TO EDIT media_profile.xml

    open media_profile.xml using text editor/notepad++ then find this line

    FIX 100% Image Quality
    Code:
    <!ATTLIST ImageEncoding quality [COLOR="Red"](90|80|70|60|50|40)[/COLOR] #REQUIRED>

    change to
    Code:
    <!ATTLIST ImageEncoding quality [COLOR="Red"](100|90|80|70|60|50)[/COLOR] #REQUIRED>

    There is 2 lines code for back camera & front camera

    Code:
    <ImageEncoding quality="[COLOR="Red"]95[/COLOR]" />
    <ImageEncoding quality="[COLOR="Red"]80[/COLOR]" />
    <ImageEncoding quality="[COLOR="Red"]70[/COLOR]" />

    change all code to
    Code:
    <ImageEncoding quality="[COLOR="Red"]100[/COLOR]" />
    <ImageEncoding quality="[COLOR="Red"]90[/COLOR]" />
    <ImageEncoding quality="[COLOR="Red"]80[/COLOR]" />


    Adjust the value of smali Video & Audio Video bitrate with media-profile.xml (as you modified it)

    There is many lines code for Video you need to change them all, example

    Code:
            <EncoderProfile quality="1080p" fileFormat="mp4" duration="60">
                <Video codec="h264"
                       bitRate="17500000"
                       width="1920"
                       height="1080"
                       frameRate="30" />
    
                <Audio codec="aac"
                       bitRate="156000"
                       sampleRate="48000"
                       channels="2" />
            </EncoderProfile>
    
            <EncoderProfile quality="720p" fileFormat="mp4" duration="60">
                <Video codec="h264"
                       bitRate="12000000"
                       width="1280"
                       height="720"
                       frameRate="30" />
    
                <Audio codec="aac"
                       bitRate="156000"
                       sampleRate="48000"
                       channels="2" />
            </EncoderProfile>

    change to

    Code:
            <EncoderProfile quality="1080p" fileFormat="mp4" duration="60">
                <Video codec="h264"
                       bitRate="20000000"
                       width="1920"
                       height="1080"
                       frameRate="30" />
    
                <Audio codec="aac"
                       bitRate="256000"
                       sampleRate="48000"
                       channels="2" />
            </EncoderProfile>
    
            <EncoderProfile quality="720p" fileFormat="mp4" duration="60">
                <Video codec="h264"
                       bitRate="1750000"
                       width="1280"
                       height="720"
                       frameRate="30" />
    
                <Audio codec="aac"
                       bitRate="256000"
                       sampleRate="48000"
                       channels="2" />
            </EncoderProfile>

    Code:
        <VideoEncoderCap name="h264" enabled="true"
            minBitRate="64000" maxBitRate="[COLOR="Red"]20000000[/COLOR]"
            minFrameWidth="176" maxFrameWidth="1920"
            minFrameHeight="144" maxFrameHeight="1080"
            minFrameRate="15" maxFrameRate="30" />

    Code:
        <AudioEncoderCap name="aac" enabled="true"
            minBitRate="8000" maxBitRate="[COLOR="Red"]256000[/COLOR]"
            minSampleRate="8000" maxSampleRate="48000"
            minChannels="1" maxChannels="[COLOR="Red"]2[/COLOR]" />

    Note maxChannels Number in RED Color, can be 6 or 2
    32
    Hacking Camera Resolution/MP (More Options)

    More Options for Photo (Only work for Xperia 2011 & 2012 Snapdragon S3/Novathor)

    For Xperia 2012 Snapdragon S4 and 2013/2014 doesn't work, need to be removing some code in smali, i'm still looking for it :)

    1. Go to res/value

    open arrays.xml using text editor/notepad++ then find this line

    For 12MP Camera
    Code:
    <string-array name="ux_recommended_resolution_array_main_12m">
         <item>TWELVE_MP</item>
         <item>NINE_MP</item>
         <item>TWO_MP</item>
         <item>TWO_MP_WIDE</item>

    add others line
    Code:
    <string-array name="ux_recommended_resolution_array_main_12m">
            <item>TWELVE_MP</item>
            <item>NINE_MP</item>
    	<item>EIGHT_MP</item>
    	<item>FIVE_MP</item>
    	<item>THREE_MP_WIDE</item>
            <item>TWO_MP</item>
            <item>TWO_MP_WIDE</item>

    For 8MP Camera
    Code:
    <string-array name="ux_recommended_resolution_array_main_8m">
         <item>EIGHT_MP</item>
         <item>SIX_MP</item>
         <item>TWO_MP</item>
         <item>TWO_MP_WIDE</item>

    add others line
    Code:
    <string-array name="ux_recommended_resolution_array_main_8m">
         <item>EIGHT_MP</item>
         <item>SIX_MP</item>
         <item>FIVE_MP</item>
         <item>THREE_MP</item>
         <item>TWO_MP</item>
         <item>TWO_MP_WIDE</item>


    More Options for Video (Work for all Xperia)

    1. Go to res/value

    open arrays.xml using text editor/notepad++ then find this line

    For 20MP Camera
    Code:
    <string-array name="ux_recommended_video_size_array_main_20m">
         <item>FULL_HD</item>
         <item>HD</item>
         <item>MMS</item>

    add others line
    Code:
    <string-array name="ux_recommended_video_size_array_main_20m">
         <item>FULL_HD</item>
         <item>HD</item>
         <item>FWVGA</item>
         <item>VGA</item>
         <item>QVGA</item>
         <item>MMS</item>

    For 13MP Camera
    Code:
    <string-array name="ux_recommended_video_size_array_main_13m">
         <item>FULL_HD</item>
         <item>HD</item>
         <item>MMS</item>

    add others line
    Code:
    <string-array name="ux_recommended_video_size_array_main_13m">
         <item>FULL_HD</item>
         <item>HD</item>
         <item>FWVGA</item>
         <item>VGA</item>
         <item>QVGA</item>
         <item>MMS</item>

    For 12MP Camera
    Code:
    <string-array name="ux_recommended_video_size_array_main_12m">
         <item>FULL_HD</item>
         <item>HD</item>
         <item>MMS</item>

    add others line
    Code:
    <string-array name="ux_recommended_video_size_array_main_12m">
         <item>FULL_HD</item>
         <item>HD</item>
         <item>FWVGA</item>
         <item>VGA</item>
         <item>QVGA</item>
         <item>MMS</item>

    For 8MP Camera FULL HD 1080p
    Code:
    <string-array name="ux_recommended_video_size_array_main_8m_full_hd">
         <item>FULL_HD</item>
         <item>HD</item>
         <item>MMS</item>

    add others line
    Code:
    <string-array name="ux_recommended_video_size_array_main_8m_full_hd">
         <item>FULL_HD</item>
         <item>HD</item>
         <item>FWVGA</item>
         <item>VGA</item>
         <item>QVGA</item>
         <item>MMS</item>

    For 8MP Camera HD 720p
    Code:
    <string-array name="ux_recommended_video_size_array_main_8m_hd">
         <item>HD</item>
         <item>FWVGA</item>
         <item>QVGA</item>
         <item>MMS</item>

    add others line
    Code:
    <string-array name="ux_recommended_video_size_array_main_8m_hd">
         <item>HD</item>
         <item>FWVGA</item>
         <item>VGA</item>
         <item>QVGA</item>
         <item>MMS</item>

    For 5MP Camera HD 720p
    Code:
    <string-array name="ux_recommended_video_size_array_main_5m_fwvga">
         <item>HD</item>
         <item>FWVGA</item>
         <item>QVGA</item>
         <item>MMS</item>

    add others line
    Code:
    <string-array name="ux_recommended_video_size_array_main_5m_fwvga">
         <item>HD</item>
         <item>FWVGA</item>
         <item>VGA</item>
         <item>QVGA</item>
         <item>MMS</item>

    Save it!!!
    29
    EXperimental hacking, Change format RGB_565 to ARGB8888

    I use ONLY on Xperia 2011

    1. Go to smali/com/sonyericsson/android/camera

    open CameraActivity.smali using text editor/notepad++ then find this line

    Code:
    sget-object v12, Landroid/graphics/Bitmap$Config;->[COLOR="Red"]RGB_565[/COLOR]:Landroid/graphics/Bitmap$Config;
    Code:
    sget-object v0, Landroid/graphics/Bitmap$Config;->[COLOR="Red"]RGB_565[/COLOR]:Landroid/graphics/Bitmap$Config;

    Change RED Color code to

    Code:
    [COLOR="Red"]ARGB_8888[/COLOR]

    2. Go to smali/com/sonyericsson/android/camera

    open ImageManager.smali then search for RGB example :
    Code:
    sget-object v0, Landroid/graphics/Bitmap$Config;->[COLOR="Red"]RGB_565[/COLOR]:Landroid/graphics/Bitmap$Config;

    change all code to
    Code:
    sget-object v0, Landroid/graphics/Bitmap$Config;->[COLOR="Red"]ARGB_8888[/COLOR]:Landroid/graphics/Bitmap$Config;

    3. Go to smali/com/sonyericsson/android/camera/device

    open CameraExtensionValues.smali then search for RGB example :
    Code:
    .field public static final POSTVIEW_FORMAT_RGB565:Ljava/lang/String; = [COLOR="Red"]"rgb565"[/COLOR]

    change to

    Code:
    .field public static final POSTVIEW_FORMAT_RGB565:Ljava/lang/String; = [COLOR="Red"]"argb8888"[/COLOR]

    save it!!!

    Enable inPreferQualityOverSpeed (I Use ONLY on Xperia 2011)

    1. Go to smali/com/sonyericsson/android/camera

    open CameraActivity.smali

    Code:
    [COLOR="Red"].local v11, opt:Landroid/graphics/BitmapFactory$Options;[/COLOR]
    [COLOR="Red"]sget-object v15, Landroid/graphics/Bitmap$Config;->RGB_565:Landroid/graphics/Bitmap$Config;[/COLOR]
    
    [COLOR="Red"]iput-boolean v6, v11, Landroid/graphics/BitmapFactory$Options;->inPreferQualityOverSpeed:Z[/COLOR]
    
    iput-object v15, v11, Landroid/graphics/BitmapFactory$Options;->inPreferredConfig:Landroid/graphics/Bitmap$Config;

    Look for RED Color it's should be like this
    Code:
    [COLOR="Red"]
    .local v11, opt:Landroid/graphics/BitmapFactory$Options;
    const/4 v6, 0x1[/COLOR]
    [COLOR="Red"]iput-boolean v6, v11, Landroid/graphics/BitmapFactory$Options;->inPreferQualityOverSpeed:Z
    
    iput-boolean v6, v11, Landroid/graphics/BitmapFactory$Options;->inDither:Z[/COLOR]
    
    [COLOR="Red"]sget-object v15, Landroid/graphics/Bitmap$Config;->ARGB_8888:Landroid/graphics/Bitmap$Config;[/COLOR]
    
    iput-object v15, v11, Landroid/graphics/BitmapFactory$Options;->inPreferredConfig:Landroid/graphics/Bitmap$Config;
    26
    Enable 12MP Superior Auto on Jelly Bean 4.3

    How to Install :

    - Download the file in attachment
    - Copy to system with root explorer etc
    - Set permissions to 644 (rw-r--r--)
    - Move the file to system>vendor>overlay
    - Reboot
    - After boot go to settings>apps>all
    - Clear data Camera & try open camera app

    Enjoy :laugh:

    Credits :
    Thanks to SONY Mobile that made all this possible
    Thanks to my old friend @Xperia-Ray for helping me from beginning