Welcome to XDA

Search to go directly to your device's forum

Register an account

Unlock full posting privileges

Ask a question

No registration required
Post Reply

[DEV][PROJECT][APP][PORT] The Real WALKMAN Portable NWZ-ZX1 SoundEnhancement

OP Rizal Lovins

1st June 2014, 06:20 AM   |  #1  
Rizal Lovins's Avatar
OP Recognized Developer / Recognized Themer / Recognized Contributor
Flag Bandung - The Girl Next Door
Thanks Meter: 15,007
 
1,469 posts
Join Date:Joined: May 2012
More
DISCLAIMER
Code:
#include <std_disclaimer.h>
/*
* Your warranty is now void.
*
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this PORT
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*/
Introduction
Dear all Developer

I'm with @BPaul trying to port this Equalizer/SoundEnhancement from WALKMAN Portable NWZ-ZX1 but we get stuck and we need for your help

If you can contribute, please do it here. Let's work together on this PORT, so we could finally get it to work. That's what XDA is all about.

Please don't spam this thread. It will be way easier for real developers and other people that could share some useful info or their attempts to get WALKMAN NWZ-ZX1 SoundEnhancement working on Xperia Devices Running JB4.1+
Equalizer Features :
• SoundEnhancement from WALKMAN NWZ-ZX1
• Clear Audio+
• Clear Phase
• Clear Phase on Headphones
• Clear Bass
• xLOUD
• DSEE (Sound Enhance)
• Matrix in VPT Surround
• Other things like stock Xperia EQ

SOURCE ARCHIEVE DOWNLOAD for DEV

Flashable.zip Sound Enhancement
http://d-h.st/gG4

Framework Source (Decompiled)
http://d-h.st/tnm
KNOWN ISSUE :
• Always reboot after a few second in homescreen but if you are fast you can open SoundEnhancement and you will see it's working
• Or bootloop
NOTE :
• PLEASE DON'T POST ANY USELESS POST this is for Developer that can test what is wrong
• I will not answer/support question that not related to this development

CREDITs
• Thanks to Sony Mobile
• Thanks to Sony Corporation
• Thanks to @BPaul for everything in this project
Last edited by Rizal Lovins; 1st June 2014 at 08:38 AM.
The Following 28 Users Say Thank You to Rizal Lovins For This Useful Post: [ View ]
1st June 2014, 06:21 AM   |  #2  
Rizal Lovins's Avatar
OP Recognized Developer / Recognized Themer / Recognized Contributor
Flag Bandung - The Girl Next Door
Thanks Meter: 15,007
 
1,469 posts
Join Date:Joined: May 2012
More
How to Edit framework.jar

STEP 1 :

• Download Baksmali tool http://d-h.st/g0W (Please use this baksmali because i decompile with this baksmali version)
• Download Framework Source
• Extract Framework Source (Already decompiled)
• Extract baksmali tool & classes.dex from your framework.jar and framework2.jar (if available) with the same directory
• Drag & drop classes.dex to Quick-Baksmali

STEP 2 :

• Copy folder "com/sony/walkman" from framework source to your framework.jar or framework2.jar
• Now open AudioEffect.smali in folder "android/media/audiofx" from your framework.jar or framework2.jar

Add this RED line to your AudioEffect.smali in framework.jar or framework2.jar

Code:
.field public static final EXTRA_AUDIO_SESSION:Ljava/lang/String; = "android.media.extra.AUDIO_SESSION"

.field public static final EXTRA_CONTENT_TYPE:Ljava/lang/String; = "android.media.extra.CONTENT_TYPE"

.field public static final EXTRA_PACKAGE_NAME:Ljava/lang/String; = "android.media.extra.PACKAGE_NAME"

.field public static final EXTRA_SONY_ICON_ENFORCEMENT:Ljava/lang/String; = "com.sony.walkman.intent.EXTRA_SONY_ICON_ENFORCEMENT"

.field public static final EXTRA_SONY_PANEL_ENFORCEMENT:Ljava/lang/String; = "com.sony.walkman.intent.EXTRA_SONY_PANEL_ENFORCEMENT"

.field public static final EXTRA_SONY_PREEFFECT_SETTING_ID:Ljava/lang/String; = "com.sony.walkman.intent.EXTRA_PREEFFECT_SETTING_ID"

.field public static final NATIVE_EVENT_CONTROL_STATUS:I = 0x0

.field public static final NATIVE_EVENT_ENABLED_STATUS:I = 0x1

.field public static final NATIVE_EVENT_PARAMETER_CHANGED:I = 0x2

.field public static final SONY_PANEL_BYPASS_BLUETOOTH:I = 0x4

.field public static final SONY_PANEL_EQ_PRE_POST:I = 0x0

.field public static final SONY_PANEL_POST:I = 0x1

.field public static final SONY_PANEL_ROOT:I = 0x2

.field public static final SONY_PANEL_SE_DIRECTLY:I = 0x3

.field public static final SONY_PREEFFECT_SETTING_ID_0:Ljava/lang/String; = "_id_0"

.field public static final SONY_PREEFFECT_SETTING_ID_1:Ljava/lang/String; = "_id_1"

.field public static final STATE_INITIALIZED:I = 0x1

.field public static final STATE_UNINITIALIZED:I = 0x0

.field public static final SUCCESS:I = 0x0
STEP 3 :

In this step is very hard, you need to copy all code from framework source

List file from framework source :

AudioManager.smali
AudioRoutesInfo.smali
AudioService$2.smali
AudioService$AudioHandler.smali
AudioService$VolumeStreamState.smali
AudioService.smali
AudioSystem$ErrorCallback.smali
AudioSystem.smali
IAudioService$Stub$Proxy.smali
IAudioService$Stub.smali
IAudioService.smali

You need to open one by one, and copy all code with tag walkman, or wmport, or sony, or icx to your framework.jar or framework2.jar(please DON'T COPY that list file but COPY All CODE to your framework.jar with tha same name smali file)

Example :



Last edited by Rizal Lovins; 1st June 2014 at 07:40 AM.
The Following 7 Users Say Thank You to Rizal Lovins For This Useful Post: [ View ]
1st June 2014, 06:21 AM   |  #3  
Rizal Lovins's Avatar
OP Recognized Developer / Recognized Themer / Recognized Contributor
Flag Bandung - The Girl Next Door
Thanks Meter: 15,007
 
1,469 posts
Join Date:Joined: May 2012
More
BUILD.PROP WALKMAN NWZ-ZX1
Code:
# begin build properties
# autogenerated by buildinfo.sh
ro.build.id=icx1240_H110
ro.build.display.id=icx1240_H110
ro.build.version.incremental=002.1.10
ro.build.version.sdk=16
ro.build.version.codename=REL
ro.build.version.release=4.1.1
ro.build.date=Thu Mar 20 23:09:42 JST 2014
ro.build.date.utc=1395324582
ro.build.type=user
ro.build.user=walkman
ro.build.host=build01
ro.build.tags=release-keys
ro.product.model=WALKMAN
ro.product.brand=Sony
ro.product.name=icx1240_002
ro.product.device=icx1240
ro.product.board=icx1240
ro.product.cpu.abi=armeabi-v7a
ro.product.cpu.abi2=armeabi
ro.product.manufacturer=Sony Corporation
ro.product.locale.language=en
ro.product.locale.region=US
ro.wifi.channels=
ro.board.platform=omap4
# ro.build.product is obsolete; use ro.product.device
ro.build.product=icx1240
# Do not try to parse ro.build.description or .fingerprint
ro.build.description=icx1240_002-user 4.1.1 icx1240_H110 002.1.10 release-keys
ro.build.fingerprint=Sony/icx1240_002/icx1240:4.1.1/icx1240_H110/002.1.10:user/release-keys
ro.build.characteristics=nosdcard
# end build properties
# system.prop for blaze tablet
# This overrides settings in the products/generic/system.prop file
#
# rild.libpath=/system/lib/libreference-ril.so
# rild.libargs=-d /dev/ttyS0
com.ti.omap_enhancement=true
#com.ti.omap_enhancement_s3d=false
keyguard.no_require_sim=1
ro.opengles.version=131072
wifi.interface=wlan0
# Define modem related settings
#ro.radio.use-ppp=no
#ro.config.nocheckin=yes
#define defaults for audio D/A mic and power mode
#omap.audio.mic.main=DMic0L
#omap.audio.mic.sub=DMic0R
#omap.audio.power=PingPong
#define a property for hdmi sink channel count
#dolby.audio.hdmi.channels=0
ro.sony.sound.enabled=true

#
# ADDITIONAL_BUILD_PROPERTIES
#
ro.com.android.dateformat=MM-dd-yyyy
ro.carrier=wifi-only
ro.sony.version=1.10
ro.sony.version.subrevision=01
ro.sony.version.gn=H
ro.sony.swid=03.01.H.1.00.01
ro.com.google.clientidbase=android-sony
ro.sony.usb.vid=054c
ro.opengles.version=131072
ro.sf.lcd_density=240
wifi.interface=wlan0
wifi.supplicant_scan_interval=15
media.aac_51_output_enabled=true
dalvik.vm.heapstartsize=5m
dalvik.vm.heapgrowthlimit=48m
dalvik.vm.heapsize=256m
ro.sony.usb.pid.msc=089A
ro.sony.usb.pid.msc_adb=089B
ro.sony.usb.pid.mtp=089C
ro.sony.usb.pid.mtp_adb=089D
ro.sony.usb.product_string=WALKMAN
drm.service.enabled=true
ro.sony.update.server=info.update.sony.net
ro.sony.update.category_id=PA001
ro.sony.build.incremental=2071100100
ro.sony.build.id=1.10
ro.sony.a2dp.bitpool.qual=53
ro.sony.a2dp.bitpool.conn=35
persist.sys.sony.a2dp.bitpool=35
ro.semc.xloud.supported=true
ro.somc.clearphase.supported=true
ro.config.notification_sound=Notification.ogg
ro.config.alarm_alert=Alarm.ogg
ro.sony.wm.hp.setting=false
ro.sony.wm.cp_hp.setting=false
ro.sony.wm.clearstereo.setting=false
ro.sony.wm.caplus.chsep.enable=false
ro.setupwizard.mode=OPTIONAL
ro.com.google.gmsversion=4.1_r6
ro.com.google.apphider=on
ro.sony.sku.upid=0020
ro.sony.sku.base=icx1240_0020
ro.sony.update.service_id=NWZ-ZX1_0020
ro.sony.walkman.model=NWZ-ZX1
dalvik.vm.dexopt-flags=m=y
net.bt.name=Android
dalvik.vm.stack-trace-file=/data/anr/traces.txt
Last edited by Rizal Lovins; 1st June 2014 at 07:29 AM.
The Following 6 Users Say Thank You to Rizal Lovins For This Useful Post: [ View ]
1st June 2014, 06:45 AM   |  #4  
TechExhibeo's Avatar
Senior Member
Flag Ropar
Thanks Meter: 294
 
822 posts
Join Date:Joined: Sep 2012
Donate to Me
More
android version?
i am having xperia mini pro and i m ready to test it on stock ,CM, AOSP or any other u want
1st June 2014, 07:03 AM   |  #5  
Is tjer eny easy way to install,, broo 😀😀😀

Xperia Z
1st June 2014, 11:51 AM   |  #6  
Account currently disabled
Thanks Meter: 660
 
501 posts
Join Date:Joined: Aug 2013
Donate to Me
More
Dear @Rizal Lovins
I tested my xperia sp bootlop.
This problem AudioEffectService.apk bootlop with your AudioEffectService.apk

Tapatalk-kal küldve az én C5303-el
1st June 2014, 01:16 PM   |  #7  
Rizal Lovins's Avatar
OP Recognized Developer / Recognized Themer / Recognized Contributor
Flag Bandung - The Girl Next Door
Thanks Meter: 15,007
 
1,469 posts
Join Date:Joined: May 2012
More
Quote:
Originally Posted by jancsessz

Dear @Rizal Lovins
I tested my xperia sp bootlop.
This problem AudioEffectService.apk bootlop with your AudioEffectService.apk

Tapatalk-kal küldve az én C5303-el

Hi mate

Do you copy AudioEffect.smali from framework source to your framework.jar? Please don't copy, just copy red line code in my post

This is still will make bootloop after you have done editing framework.jar, that's why i post here

if we remove (related icx) soundenhancement will not work, and if we add them we will get bootloop/always reboot after a few second in homescreen, but soundenhancement working :rollyes:
1st June 2014, 01:17 PM   |  #8  
Account currently disabled
Thanks Meter: 660
 
501 posts
Join Date:Joined: Aug 2013
Donate to Me
More
Upload my framework.jar you modofide to new mod?

Tapatalk-kal küldve az én C5303-el
2nd June 2014, 11:11 AM   |  #9  
BPaul's Avatar
Recognized Developer
Flag Astana
Thanks Meter: 7,763
 
2,161 posts
Join Date:Joined: May 2011
Donate to Me
More
@Rizal Lovins: Hi. You know about here? Check the icx audio_flinger service in framework

zx1\app\AudioEffectService.apk\smali\com\sonyerics son\audioeffectservice\AudioEffectService.smali (Is call icx audio_flinger service, is always shows in logcat and is problem what always reboot)


zx1\framework\semc_audioeffectif.jar\smali\com\son y\media\SonyAudioEffect.smali (Is call libicxaudioeffect_jni.so lib)


PS: in /system/bin/servicemanager
Last edited by BPaul; 2nd June 2014 at 11:16 AM.
The Following 2 Users Say Thank You to BPaul For This Useful Post: [ View ]
2nd June 2014, 06:47 PM   |  #10  
Rizal Lovins's Avatar
OP Recognized Developer / Recognized Themer / Recognized Contributor
Flag Bandung - The Girl Next Door
Thanks Meter: 15,007
 
1,469 posts
Join Date:Joined: May 2012
More
@BPaul hi bro yes i know about it, but didn't checked service manager, do you think if we change to normal audioeffectjni & audioflinger instead icx it will work like F800? I have no time to try since busy with my exams

Btw better to port ZX1 or F880? I'm just checked the 2 zip is the same just little different in framework

Post Reply Subscribe to Thread
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes