[GUIDE] Volume Boost for all applications including in-call volume [ROOT REQUIRED] - Huawei MediaPad M2

Q: Dear beast.in.black,
I bought my M2 with a lot of great expectations, but I am bitterly disappointed by the lack of volume on the phone speakers; a sparrow's fart is louder than the in-call volume even with my volume controls at maximum.
Due to this issue, I am unable to have dirty phone conversations with my significant other while I am in a crowded place because I am unable to hear what's going on even if I enable the speakerphone and set it at max volume.
Also, my heavy metal music playlist has turned into easy listening elevator music because I can't play it loud enough to make my eardrums bleed like I used to on my old phone, and now all the ear bandages I bought are useless.
I am unable to get used to the feeling of nonbleeding ears and this may cause me and me and me to develop another psychiatric disorder before too long.
Please help me.
(Signed: A desperate M2 user)
A: Dear desperate M2 user,
I too feel your pain because I have been in a similar situation with my M2.
Luckily for me (and now for you), I was able to figure out a way to boost the volume on the phone to allow the max possible volume (as far as I currently know) - if you set the volume control to max - for all applications including call volume.
No volume boost apps are required for this technique!
*** DISCLAIMER *** The procedure required to boost the volume on the phone to the max allowable (at max value of the volume control sliders) requires your phone to be rooted, and involves messing with a critical system file called build.prop, so if you're not comfortable with voiding your warranty and the possibility of damaging your phone, walk away now!
If you choose to continue, you will be solely responsible for any and all consequences and outcomes of your actions - I disavow all responsibility and accountability for you, your phone, your actions, your life and your sanity (or potential lack thereof).
No offense meant. Just standard CYA
Short Answer (for those who know what they're doing):
Edit the file /system/build.prop and comment out the line which starts with ro.config.hw.security_volume so that it looks like this (note the # symbol at the beginning of the line - this is what turns it into a comment instead of an active line of configuration info):
Code:
#ro.config.hw.security_volume=6
Note that the number after the equals sign may be different for you; the above value is what I had on my M2-802L.
You can even delete the line entirely if you're feeling particularly brave - it doesn't seem to have affected anything else on my phone.
Long Answer:
Rambling introduction:
OK, we need to go into some history here.
In days of old, phones had decent volumes if they were manufactured with decent hardware (DSPs, speakers etc), and all was well on this green Earth.
However, some idiot (probably at Apple, they love to do idiotic things in the name of "courage") decided that a phone which you could actually hear stuff out of was gauche, proletarian and unrefined, and that it would be oh-so-much-more upmarket, refined and sophisticated (meaning: "Goshdang! We can charge people a boatload more money and become filthier richer!") if people couldn't actually hear anything out of a device whose primary raison d'être is, you know, communication.
So phones (especially the ones from the more pretentious manufacturers) started artificially limiting their volumes in software even if the hardware was perfectly decent and was actually capable of melting your ears. And thus arose the burgeoning plethora of volume boost apps -some good, some indifferent, some downright nasty.
"But beast.in.black," I hear you cry desperately, "what does all this have to do with me? I just want my phone volume to be loudererer! Enough with the Verbal Kint schtick!! Get to it already!!!"
Well, geez!
Ok then!
Here's what you need to do:
Prerequisites:
Your phone needs to be rooted.
If you're not yet rooted but would like to do this, follow the Rooting guide if you are feeling adventurous and really want this (see DISCLAIMER above).
You need to have a good file explorer on your phone.
I can heartily recommend MiXplorer - it's an open source fully-featured file manager (check out the XDA thread in my link), and is developed and maintained by XDA member HootanParsa. It has a bunch of capabilities including native SMB client support to connect to a share on a Windows machine, and has an inbuilt text editor (which will shortly become rather important, as you'll see).
You need to have a text editor on your phone.
If you install the MiXplorer file manager like I recommended above, it comes with an inbuilt text editor which is more than adequate for the job.
Since I use the vim editor in life, I also personally like to use it on Android phones in its VimTouch avatar. If you don't know what vim is, I suggest that you not find out right now; save it for a more leisurely occasion. Install some other text editor from the play store - whichever one grabs your fancy and can get the job done.
Method:
Using your file manager of choice, navigate to your /system directory.
In the /system directory, you should find a file called build.prop. Select this file in your file manager and open it in a text editor (your file manager should give you various options to open the file, one of which should be the appropriate text editor app).
After the text editor has opened the build.prop file and you can see its contents, search for a line which starts with the following text (I have not shown any text on that line which comes after the word security_volume):
Code:
ro.config.hw.security_volume
*** CAUTION *** Many entries in this file look very similar to each other, and it is very possible that you can end up inadvertently choosing a line of text which is not the correct line. Make doubly sure that you are on the correct line by making certain that the line contains the text security_volume.
Changing the wrong line could lead you to soft-brick your phone, and trust me when I say that dealing with a bricked Huawei phone (especially when Huawei, just to make your life more difficult, has pulled the ROM for your particular model from all their support sites) is a gigantic migraine headache that you most definitely don't want to experience if you can possibly avoid it.
After ensuring that you've found the line of text in the build.prop file which starts with ro.config.hw.security_volume, comment it out by placing a # symbol at the beginning of the line so that the start of the line of text looks like this (note the # symbol at the beginning of the line - this is what turns it into a comment instead of an active line of configuration info):
Code:
#ro.config.hw.security_volume
Note that you can even delete this line entirely if you're feeling particularly brave - it doesn't seem to have affected anything else on my phone. However, since you're following this long version of the answer, I would recommend that you just comment it out for now.
After commenting out the above line of text, save the changes you made (I certainly hope that you didn't change anything else) to the build.prop file.
After making sure that your change to the file was saved correctly, exit the text editor app.
Restart your phone.
Enjoy your new face-melting, ear-blood-inducing, heavy-metal-rocking volume levels :highfive:
Extra fun and profit for experts:
I haven't yet experimented with this myself, but I think that it may be possible to set a custom max volume threshold by varying the numeric value of the ro.config.hw.security_volume config parameter.
On my phone it was set to 6, and I think that perhaps the absolute max value it can take is 10 (denoting full hardware phone volume), although that is a guess (albeit a logical guess) and we need to experiment find the actual range of values that this parameter can take.
Once the range of values is determined, then it would be possible to write an app that could set a custom max volume threshold by varying the value of this parameter as requested by the user.
Enjoy! :cyclops:

I had a the same problem with call volume. In the end the problem was Huawei's obscure software. During a call press the speaker button on the button left. It will double the speaker volume. Simple, but hard to find.
beast.in.black said:
Q: Dear beast.in.black,
I bought my M2 with a lot of great expectations, but I am bitterly disappointed by the lack of volume on the phone speakers; a sparrow's fart is louder than the in-call volume even with my volume controls at maximum.
Due to this issue, I am unable to have dirty phone conversations with my significant other while I am in a crowded place because I am unable to hear what's going on even if I enable the speakerphone and set it at max volume.
Also, my heavy metal music playlist has turned into easy listening elevator music because I can't play it loud enough to make my eardrums bleed like I used to on my old phone, and now all the ear bandages I bought are useless.
I am unable to get used to the feeling of nonbleeding ears and this may cause me and me and me to develop another psychiatric disorder before too long.
Please help me.
(Signed: A desperate M2 user)
A: Dear desperate M2 user,
I too feel your pain because I have been in a similar situation with my M2.
Luckily for me (and now for you), I was able to figure out a way to boost the volume on the phone to allow the max possible volume (as far as I currently know) - if you set the volume control to max - for all applications including call volume.
No volume boost apps are required for this technique!
*** DISCLAIMER *** The procedure required to boost the volume on the phone to the max allowable (at max value of the volume control sliders) requires your phone to be rooted, and involves messing with a critical system file called build.prop, so if you're not comfortable with voiding your warranty and the possibility of damaging your phone, walk away now!
If you choose to continue, you will be solely responsible for any and all consequences and outcomes of your actions - I disavow all responsibility and accountability for you, your phone, your actions, your life and your sanity (or potential lack thereof).
No offense meant. Just standard CYA
Short Answer (for those who know what they're doing):
Edit the file /system/build.prop and comment out the line which starts with ro.config.hw.security_volume so that it looks like this (note the # symbol at the beginning of the line - this is what turns it into a comment instead of an active line of configuration info):
Code:
#ro.config.hw.security_volume=6
Note that the number after the equals sign may be different for you; the above value is what I had on my M2-802L.
You can even delete the line entirely if you're feeling particularly brave - it doesn't seem to have affected anything else on my phone.
Long Answer:
Rambling introduction:
OK, we need to go into some history here.
In days of old, phones had decent volumes if they were manufactured with decent hardware (DSPs, speakers etc), and all was well on this green Earth.
However, some idiot (probably at Apple, they love to do idiotic things in the name of "courage") decided that a phone which you could actually hear stuff out of was gauche, proletarian and unrefined, and that it would be oh-so-much-more upmarket, refined and sophisticated (meaning: "Goshdang! We can charge people a boatload more money and become filthier richer!") if people couldn't actually hear anything out of a device whose primary raison d'être is, you know, communication.
So phones (especially the ones from the more pretentious manufacturers) started artificially limiting their volumes in software even if the hardware was perfectly decent and was actually capable of melting your ears. And thus arose the burgeoning plethora of volume boost apps -some good, some indifferent, some downright nasty.
"But beast.in.black," I hear you cry desperately, "what does all this have to do with me? I just want my phone volume to be loudererer! Enough with the Verbal Kint schtick!! Get to it already!!!"
Well, geez!
Ok then!
Here's what you need to do:
Prerequisites:
Your phone needs to be rooted.
If you're not yet rooted but would like to do this, follow the Rooting guide if you are feeling adventurous and really want this (see DISCLAIMER above).
You need to have a good file explorer on your phone.
I can heartily recommend MiXplorer - it's an open source fully-featured file manager (check out the XDA thread in my link), and is developed and maintained by XDA member HootanParsa. It has a bunch of capabilities including native SMB client support to connect to a share on a Windows machine, and has an inbuilt text editor (which will shortly become rather important, as you'll see).
You need to have a text editor on your phone.
If you install the MiXplorer file manager like I recommended above, it comes with an inbuilt text editor which is more than adequate for the job.
Since I use the vim editor in life, I also personally like to use it on Android phones in its VimTouch avatar. If you don't know what vim is, I suggest that you not find out right now; save it for a more leisurely occasion. Install some other text editor from the play store - whichever one grabs your fancy and can get the job done.
Method:
Using your file manager of choice, navigate to your /system directory.
In the /system directory, you should find a file called build.prop. Select this file in your file manager and open it in a text editor (your file manager should give you various options to open the file, one of which should be the appropriate text editor app).
After the text editor has opened the build.prop file and you can see its contents, search for a line which starts with the following text (I have not shown any text on that line which comes after the word security_volume):
Code:
ro.config.hw.security_volume
*** CAUTION *** Many entries in this file look very similar to each other, and it is very possible that you can end up inadvertently choosing a line of text which is not the correct line. Make doubly sure that you are on the correct line by making certain that the line contains the text security_volume.
Changing the wrong line could lead you to soft-brick your phone, and trust me when I say that dealing with a bricked Huawei phone (especially when Huawei, just to make your life more difficult, has pulled the ROM for your particular model from all their support sites) is a gigantic migraine headache that you most definitely don't want to experience if you can possibly avoid it.
After ensuring that you've found the line of text in the build.prop file which starts with ro.config.hw.security_volume, comment it out by placing a # symbol at the beginning of the line so that the start of the line of text looks like this (note the # symbol at the beginning of the line - this is what turns it into a comment instead of an active line of configuration info):
Code:
#ro.config.hw.security_volume
Note that you can even delete this line entirely if you're feeling particularly brave - it doesn't seem to have affected anything else on my phone. However, since you're following this long version of the answer, I would recommend that you just comment it out for now.
After commenting out the above line of text, save the changes you made (I certainly hope that you didn't change anything else) to the build.prop file.
After making sure that your change to the file was saved correctly, exit the text editor app.
Restart your phone.
Enjoy your new face-melting, ear-blood-inducing, heavy-metal-rocking volume levels :highfive:
Extra fun and profit for experts:
I haven't yet experimented with this myself, but I think that it may be possible to set a custom max volume threshold by varying the numeric value of the ro.config.hw.security_volume config parameter.
On my phone it was set to 6, and I think that perhaps the absolute max value it can take is 10 (denoting full hardware phone volume), although that is a guess (albeit a logical guess) and we need to experiment find the actual range of values that this parameter can take.
Once the range of values is determined, then it would be possible to write an app that could set a custom max volume threshold by varying the value of this parameter as requested by the user.
Enjoy! :cyclops:
Click to expand...
Click to collapse

motchamotcha said:
I had a the same problem with call volume. In the end the problem was Huawei's obscure software. During a call press the speaker button on the button left. It will double the speaker volume. Simple, but hard to find.
Click to expand...
Click to collapse
If you mean the button with the speaker icon on it, that's actually the speakerphone function. Yes, it does make the call volume louder, but I've found that on a stock ROM it is unfortunately not loud enough to be used as an actual speakerphone especially if there is the slightest bit of noise in the environment

Related

[App][Beta] ACR – Auto Call Recorder – Version 1.2.4

WARNING!!!
These applications are not legal in all countries/states. Check first before you use this software as you could get into serious trouble in some countries/states. (Wikipedia Reference)
Note: these programs requires .NET Compact Framework 3.5 Redistributable to work. Please install this first if it is not already on your device.
Also if you've just blown in here to download ACR and run, its in Post #3
ACR HD
This program was written for the Touch HD. If your device is not 480 pixels wide or WM6.5+ then I would not recommend you waste your time with this program. This version is for testing/comments only.
This version is for anyone who doesn't mind testing the application at the risk of their device. While I seriously doubt it would harm your device I still feel I need to ward off thoses that are under the impression this application was written with any sort of care or support.
Thiis program currently requires a contact with the FileAs name of Unknown to work properly/with Outlook Importer.
ACR – Auto Call Recorder
SETUP
Once installed go to your programs folder and you will see a new Icon for Auto Call Recorder. Click on the Icon and the options for Auto Call Recorder will be displayed. Once you have chosen your options click the Enable Recording button on the File Tab and close the Options Program. That’s it you are now automatically recording any calls your device has.
OPTIONS
There are two tabs of options to choose from. Most of these you will not need to use at all but where included to provide a better experience for some users who have different requirements such as limited memory, no use to record all calls and such.
File Tab
Folder to save calls in
From the top of the file tab, first we have a textbox showing where the files will be saved. On the right of this textbox is a button. This button when pressed will open a window so that you may change where ACR saves the files.
Ask to save Call
This checkbox when checked will make ACR prompt you with a choice to save the call once the call has finished. Note that even if you choose no you will still have the option to retrieve the last call up until you receive another call. The file Lastcall.wav is only overwritten when you receive another call.
Record Incoming Calls/Record Outgoing Calls
These checkboxes is pretty self explanatory, if you want ACR to record your incoming calls then check this box, if you don’t then uncheck this box. The same goes for Record Outgoing Calls.
Write to Debug File
Only use this option if you are having problems. At the moment the debug is very limited. When you have this option check ACR will write debug messages to a file ‘debug.txt’ in the installation folder.
Recording Tab
The recording tab contains the setting for the file to be recorded. First is the Wav format. This is either PCM or GSM6.10 PCM is a ‘raw’ wav format that will use about 1MB per minute. I have included this format for devices that do not support GSM6.10. The other format GSM6.10 is a ‘compressed’ Wav format and consumes approximately 30kB per minute. Obviously this is the preferred choice.
Bits per channel are either 8 or 16 bits. 16 bits is the preferred choice but I have also included 8 bits for slower devices.
Samples per Second are the number of samples taken each second. This is a matter of preference/device capability. The choices are 8000, 11025, 16000, 22050, 32000, 44100, 48000, 96000 and 192000Hz. If you have a slow device then you are better starting from the bottom and working your way up by testing to see which the best is for you. If you have a newer device then it is more a choice of how much space you want to use as the higher the number the more space the file will use. Also your device may not support the higher frequencies so I recommend starting with something like 48000Hz. If you set the frequency to high you will get gaps in your recordings.
DEVICES
This program will work on a number of devices at different degrees of success. Below is a few lists of devices and there reported success. If your device is not listed then try it anyway and don’t forget to report back you amount of success. If your device don’t match up to whats reported then please do
Devices known to work ‘Out of the box’ both ways
ASUS P835 (Stock ROM)
Touch HD (Stock ROM 6.1/WM6.5)
HTC Touch Diamond 2 (Stock ROM)
HTC FUZE (updated stock ROM)
HTC TYTN 2 (Stock ROM)
HTC Touch Pro 2 (Stock ROM)
Mio A702 - Not bad for 200Mhz
HTC Rhodium (Stock ROM)
HTC Touch 3G
HTC Trinity - P3600 (Stock ROM)
HTC Touch Cruise (Stock ROM)
HTC Prophet (WM 6.1)
HTC Herald - T-Mobile Wing (Stock ROM)
HTC Touch Elf (Stock ROM)
Samsung i780 (WM 6.1)
Samsung Omnia i900
Samsung Omnia 2
Plam Treo Pro (Stock ROM)
HTC Advantage 7501 (WM6)
HP iPAQ 614c
Devices that require registry setting to work both ways
HTC Touch Diamond – deep_purple reported that after installing GSM610 Codec he could use GSM6.10. Thanks mate.
HTC Touch Pro (EnergyROM / TIR 13R Lite ROM / RRE 6.5 Servies 6 v4)
HTC Blue Angel (Cooked ROM)
Devices that only work one way
Touch HD2
HTC XDA2
Xperia X1
Devices that don’t work
HTC Snap
HTC Vogue
HTC TyTN
HTC Gene
HP iPAQ 614c
TIPS AND FIXES
This is a condensed form of the previous thread and this thread. I will cover all the fixes found by the great folk at XDA.
Enable MicAGC. Its in Settings/System. Its not required by all devices though.
“I only hear my voice, the other party is very soft?” This is because you device is not setup to record both the incoming and outgoing voices. This can also be because your device is only ‘half-duplex’. To solve this try the suggestions in the Devices Post.
“ACR only records the first minute of the call?” This is because you have ‘fast sleep’ enabled on your device. Try something like Advanced Configuration Tool to disable fast sleep.
“I can’t see if it’s working?” ACR has no interface when it’s running. It was designed like this to keep memory usage to a minimum. If you are having troubles with this then I suggest you use the ‘Ask to save call’ option so you know it’s worked after the call. You can also see it running in a task manager program when you choose to show ‘view processes’.
DISCLAIMER / LICENSE / EULA
Please read carefully the terms and conditions of this End User License Agreement ("EULA") before installing ACR software ("Software"). This EULA provides a license agreement between authors of ACR ("Licensors") and you (person) ("Licensee") to use the Software and contains warranty information and liability disclaimers. By installing and using the Software you accept and agree to the terms of this EULA. If you do not agree with these terms and conditions, you must cancel the installation or, if the Software is already installed on your device, promptly uninstall it.
OWNERSHIP
The Licensee acknowledges and agrees that the Software is a product of the Licensors. It is protected under international copyright law. All copyrights are exclusively owned by Slothie.
LICENSE GRANT
The Software is freeware. However, the Licensee may use it only and exclusively for testing in either private personal or commercial usage, and only under conditions which do not contradict the restrictions noted below. If you want to use Software for anything else, you must contact the Licensors. Software may not be bundled or distributed with any other package without written permission of the Licensors.
NO WARRANTIES
The Software is distributed "as is" WITHOUT WARRANTY OF ANY KIND. The Licensee uses the Software at his own risk. The Licensors shall not be liable to the Licensee for any kind of consequences, which occur or not occur while installing, using or uninstalling the Software.
RESTRICTIONS
In accepting the EULA granted by Licensor, Licensee agrees that he shall not
1. Sublicense, sell, lease, rent, permit use of, give, or lend the Software
or any copy or portion thereof;
2. Decompile, disassemble, reverse engineer, analyse, or otherwise attempt to
discover the source code of the Software;
3. Use or incorporate the Software or any portion thereof in any other product
without the prior written permission of the Licensor;
4. Remove, alter, or obscure the copyright, trademark, proprietary, or other
notices from the Software or any of its components.
Licensee is allowed to edit existing or create new language layouts, and share them with other users. Licensee is allowed to edit existing or create new graphic elements, but only with respect to copyright and trademark notices.
DISTRIBUTION
The Licensee may NOT redistribute the Software by any mean (CD, DVD, Web site...) without permission from Licensors.
TERMINATION
The Licensee may terminate the EULA at any time. Also, the EULA will terminate automatically if Licensee fails to comply with the restrictions described above. Upon termination of the EULA, the Licensee shall remove all copies of the Software from his (her, its) device and all storage media.
Credits and Thanks
mskip for providing his registry settings from the 2 way recording Cab. Without these settings most devices would only be recording one side of the conversation so if you feel like buying him a beer you can here.
A big thanks to Rozenthal for letting me steal his legal stuff from FingerKeyboard.
A big thanks to Biker1 for helping all the lost people in this thread. You should get more credit than me.
Also thanks to [germany]merlot and deep_purple for testing.
Menneisyys for this great thread here.
Also all the people that reported device Successes/Failures/Tweaks/Registry Setting.
CHANGE LOG
Version 1.2.4
Extended Beta period.
Version 1.2.3
Fixed 12/24 hour time issue if the filename.
Version 1.2.2
Changed the file save format to include the date/time.
Version 1.2.1
Added Choose Folder Dialog.
Added code to stop Windows from shutting down the application in the background.
Added option to record Incoming Calls.
Added option to record Outgoing Calls.
Added Debug to File option.
Removed Readme Tab.
.
OUTLOOK IMPORTER
Outlook Importer is for both ACR and ACR HD. It will import all your saved calls into Microsoft Outlook on your PC. Calls are imported into the Journal.
This version is for anyone who doesn't mind testing the application at the risk of their device. While I seriously doubt it would harm your device I still feel I need to ward off thoses that are under the impression this application was written with any sort or care or support.
Oh yeah currently this app does not import call from the last day. I will hopefully expand on this to be an option but currently its the last 24 hours.
thanks a lot for the update dude
but where is the changelog ? What is new in this version
Great Work!
Waiting for changelog!
Hmmm what did I change?
I added a 'choose folder' for everyone that couldn't put a \ on the end of the path. I added a cancel statement to form closing so CE wouldn't close the app silently in the background. I added a couple of options to choose what calls are recorded. I added a crappy debug file function. I removed the readme tab. Oh and I added an option to save the call after its finished. I changed the file save to include the date. I still don't know why I did this? Hmm what else, don't know I've got the flu so I'm not really that switch on at the moment. Mostly I concentrated on the bugs from version 1.1. If your happy with version 1.1 I wouldn't bother changing if I was you.
oki doki !!
thanks dude
Thanks Slothie, very nice job
still, Record Outgoing Calls it's not working for me
it's unchecked all the time
eac said:
Thanks Slothie, very nice job
still, Record Outgoing Calls it's not working for me
it's unchecked all the time
Click to expand...
Click to collapse
Ok you'll have to help me out here? What is the device you are using? Also what ROM. So if you check record outgoing calls it unchecks itself?
I downloaded v1.2 and the following issues occur:
1) Record outgoing calls box is ticked but then unticks itself. I finally got it to stay ticked but no outgoing calls being recorded.
2) unable to delete recorded calls. Message pop up says System File, Access Denied.
When I first downloaded v1.2, outgoing calls were being recorded than above issues started occurring.
Downloaded v1.2 due to the Record Call Yes/No option.
Will download v1.1 for now.
I have a Diamond (cdma)
-------------
Slothie said:
Ok I'll fix this just as soon as I shoot the people that tested this. In the mean time I would recommend trying to set this in the registry directly if you can't wait until tomorrow. The setting are in Local Machine\Software\Inta\ACR and the value should be set to 'True'. With a capital T.
Click to expand...
Click to collapse
What caliber do you need? j/k
I will try the registry change.
Do you know why I cannot delete recorded calls?
Thanks and welcome back.
Hope your daughter is ok.
Scratch that! I think I found the problem. I just uploaded a newer version. Cheap and nasty style as I'm sick as a dog.
Oh thanks Biker, she is fine now except we all now have the swine flu as the hospital was overrun with infected patients. Little price to pay though as she is now walking again!
Can't delete recorded calls? As in they are read only?
Slothie said:
Ok I'll fix this just as soon as I shoot the people that tested this. In the mean time I would recommend trying to set this in the registry directly if you can't wait until tomorrow. The setting are in Local Machine\Software\Inta\ACR and the value should be set to 'True'. With a capital T.
Click to expand...
Click to collapse
I have set the value to 'True', but I still doesn't work. I saw that version 1.1 was removed, could this be reupload?
Thanx.
It's obvious but just in case, the registry value change to "True" is done to "RecordOut."
Slothie said:
Scratch that! I think I found the problem. I just uploaded a newer version. Cheap and nasty style as I'm sick as a dog.
Oh thanks Biker, she is fine now except we all now have the swine flu as the hospital was overrun with infected patients. Little price to pay though as she is now walking again!
Can't delete recorded calls? As in they are read only?
Click to expand...
Click to collapse
As they say, if you wanna get sick, go to the hospital!
Good to hear about your daughter. She will now have to take care of you
I can play back recorded calls but I cannot delete them.
Says System File. No Access.
Thanks.
Btw, made the registry change but box still unticks itself.
UPDATE:
v1.2.1 is working fine
Corrected the Record Out and box stays ticked.
In regards to not being able to delete any recorded calls, the following occurs:
I go to delete and and it asks me if I want to delete the call? I then click Yes. I get the Pop Up Message that says System File, still want to delete? I click Yes. I then get a message saying Access Denied.
BUT
when I exit the call log screen and I go back to the call log screen, the recorded calls that I could not delete ARE deleted
Edit:
I went to delete recorded calls but this time when the Pop Up asked if I want to delete specified call, I clicked Yes (as I did before) and when the System File pop Up appeared I just exited the screen.
When I returned to the call log screen, the calls were deleted as before.
Sorry for any redundancy but I want to be as specific as I can to help solve the problem.
Thanks.
thanx 4 rthat piece of soft...
will test on my diamond touch 2 now ;-)
Tested! Works fine even with both the incomming/outgoing calls and the final confirm!
Only two things:
In portrait mode would be useful to have a scroll bar since I can't see all the options in main page!
Can you put an "OK" in the low bar instead of use "X" in upper right corner to exit???

Programatically update today screen image

Hi all,
First a little background into what I'm attempting...
On my PC, I have a self created program which swaps the desktop image to one selected at random from a predetermined directory. There's lots of nifty features, such as image resizing to fit desktop, support for different images on different monitors in a multi monitor setup. etc.
But enough about that, as it's not really windows mobile related. What is related is the fact i'm trying to implement something similar on my Xperia X1.
Obviously I want it so I can have different images for the today screen when it's in landscape and portrait mode - like the built in themes do. I have to admit i'm fairly miffed that this feature isn't supported nativly in a nice easy non-theme related way. it's nigh-on impossible to find an image that looks good in both aspects.
Anyway, I did have something working. A small program which creates a stwater_480_800.bmp and stwater_800_480.bmp by selecting a random image from one of two predetermined directories, and then plonking said images in the windows directory. (Replacing the two bmp images put there by the theme i was using) No resizing of images or anything fancy, just a straight file copy.
This line of code:
SendMessage(HWND_BROADCAST, WM_WININICHANGE, 242, 0)
forces the today screen to update to the lovely new images after the files have been replaced.
All was well until I installed gtrab's excellent pure windows mobile 6.5 update (http://forum.xda-developers.com/showthread.php?t=588882). And although the app still works for the main part, i.e. it picks an image, and changes the background for the today screen, i have encountered a bug.
The image behind the updated start menu doesn't get refreshed - it stays as whatever the image was when the phone was last reset (Think it's specifically a hard reset? i.e. holding power button down the rebooting with sony ericsson logo etc).
Here's the code i'm currently using (Apologies for lack of comments, despite being employed as a vb.net programmer, i'm self taught and not commenting is a bad habit i've never gotten out of.)
Code:
Public Shared Sub SwitchBG()
Randomize()
Dim curdir As New IO.DirectoryInfo(SharedVars.LandscapeDir)
Dim imagefiles As IO.FileInfo() = curdir.GetFiles("*.bmp")
If imagefiles.Length > 0 Then
IO.File.Delete("Windows\stwater_800_480.bmp")
IO.File.Copy(imagefiles(Math.Floor(Rnd() * imagefiles.Length)).FullName, "Windows\stwater_800_480.bmp")
Else
MessageBox.Show("No Landscape Images!", "BGSwitcherPPC", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1)
End If
curdir = New IO.DirectoryInfo(SharedVars.PortraitDir)
imagefiles = curdir.GetFiles("*.bmp")
If imagefiles.Length > 0 Then
IO.File.Delete("Windows\stwater_480_800.bmp")
IO.File.Copy(imagefiles(Math.Floor(Rnd() * imagefiles.Length)).FullName, "Windows\stwater_480_800.bmp")
Else
MessageBox.Show("No Portrait Images!", "BGSwitcherPPC", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1)
End If
SendMessage(HWND_BROADCAST, WM_WININICHANGE, 242, 0)
End Sub
I'd love to know what I have to do to force the start menu image to refresh. I've googled for a while with no joys.
Incidentally, I did discover that i can use .jpgs for the background (makes sense really). Not sure if that will have any bearing, but i'll be changing the code to accept both bmp, jpgs, and probably gifs. Can't see that it will affect my specific problem, but thought it would be worth mentioning.
Once i've got this sorted, i'll be ready to tackle the next stage, which is implementing some form of schedule so i can wake up to a new today screen image every day.
Thanks in advance to anyone with any pointers.
Matt.
Sorry, just realised I should have posted this in the windows specific forum.
Still, any help much appreciated!
Okay, I've managed to do this. Via a hacky work-around.
Basically, I realised after a bit of playing, that if you set a "normal" wallpaper, all it does is create a registry key. But, rather handily, the start menu and lock screens (lock was also affected by this bug) would see this change, and update their pic.
Also, rather handily, if you set the registry to an image that doesn't exist, the image then defaults back to the appropriate stwater
so the workaround is as follows...
Every time i run the switch code, I write an incrementing value to the HKCU\software\windows\today\wall registy value. This can be anything, providing it's not a "real image"
when you next open the start menu, it looks for this "new" image, can't find it, so loads the appropriate stwater image.
I'm gona stick the program in an Xperia forum for some feedback/suggestions.
edit: link to app: http://forum.xda-developers.com/showthread.php?t=594763

Transparent controls in native WM apps

Hey all,
I've been searching for techniques people use to make transparent controls. The problem with windows mobile is that windows always have the CLIPCHILDREN window style set. So you can't grab the contents of the parent window (in WM_ERASEBKGND for example) because it isn't there.
One technique would be to have the parent pass the handle of the background DC it uses to the child control but that involves having a memory DC around all the time. And if the child control is covering any sibling controls you'd be out of luck as well.
Another solution I've read about is to temporarily hide the child window so the parent window is forced to redraw the parts that would normally be obscured by the control. I personally do not like this approach. (the drawbacks are also discussed on some MS forum, i'm not allowed to post outside links yet, google for "Rounded Buttons : Does any one see any problems with this method" and you will find it)
So, there are ways to achieve what I'm looking for but they are far from optimal. Just wondering what everybody else is doing to achieve this.
The responses in that thread are pretty much spot on (funny to find I know over half the posters in that thread by reputation).
If you want to do this well, you really need to draw your own stuff, making a complete custom UI.
There is no proper way to do this in Windows Mobile (without runtime kernel patching, that is ).
Chainfire said:
The responses in that thread are pretty much spot on (funny to find I know over half the posters in that thread by reputation).
If you want to do this well, you really need to draw your own stuff, making a complete custom UI.
There is no proper way to do this in Windows Mobile (without runtime kernel patching, that is ).
Click to expand...
Click to collapse
What do you mean by "drawing your own stuff"? I am drawing everything myself now in all control i made using AlpheBlend() where needed. But that still doesn't resolve the background issue. Or are you referring to just drawing everything in a single WM_PAINT handler and only having one screen DC?
PegNosePete said:
What do you mean by "drawing your own stuff"? I am drawing everything myself now in all control i made using AlpheBlend() where needed. But that still doesn't resolve the background issue. Or are you referring to just drawing everything in a single WM_PAINT handler and only having one screen DC?
Click to expand...
Click to collapse
Well the method I use in my own new UI's is indeed per form (excluding WinAPI controls like edit boxes and such) draw using only one DC.
The problem is that any 'windowed' control, the parent will not draw to the DC if a 'windowed' control overlaps. Due to CLIPCHILDREN all data drawn to that position is simply lost.
Now, handling WM_PAINT you can get the entire update region, which tells you which parts of your form have to be redrawn. You must use this information, because blitting the entire form is very slow!
In essence, to do this right you well end up faking most of the GDI system, including your own 'fake' child windows, invalidating and revalidating portions, calculating the intersections of your 'fake' invalidated regions of the screen with the update region you get in WM_PAINT and redrawing those parts.
There are several different strategies to go about this, one is to redraw on demand, another one is to use double buffering.
I personally mostly use the double buffering technique, as this easily provides every 'fake' control with a bitmap of it's own region. A child control can then alphablend using the parent's buffer as one of the alphablend sources.
You can of course combine this with keeping state information whether a child, grandchild, etc is using alpha / transparency and this with an algorithm deciding which control needs double buffering or can draw on-demand, which can give both speed and memory use advantages. In a lot of situations you can then suffice with only double buffering the 'top' component (form) and a select number of child components.
Of course two drawbacks of per-control double buffering are speed and memory use. You can eliminate the complete-form double buffer with some smart coding and calculating. This will give you a slight speed and memory advantage. Memory use is high because many of your controls will have a copy of their current state.
This can be as complicated, feature-filled, fast and efficient as you are willing to make it. The better you can design the code the better it will work, but it is not a trivial task. There are many ways to go at this, no one way is definitely better than the other ways. It depends on what your applications does with it's display, how simple you are drawing (are you making a simple white background, or a background based on images for example gradient?), which method is more efficient.
The other method is getting the update region and actually perform redrawing of those invalidated sections (instead of copying from buffer). I can tell you from experience that if you are using image backgrounds and alphablend calls, this will be _much_ slower than double buffering (if done right).
I know all of this probaby makes little sense, I'm not a hero with explaining things ... you really have to figure this out for yourself, I guess.
Other advantages of building your own UI system are that if you do it smartly and buffering, it is very easy to port to directdraw, and possibly even GL. But I must warn you, on far the most devices actually using directdraw for this stuff is not much faster, it is in fact hardly noticable. If you manage to make a GL port, that can especially on older HTC devices (pre-HD2) be much faster.

[APP] Resident Mort - Scary Good, not Scary Evil

*Anyone get the reference? Haha*
Resident Mort
The Scripter's Companion​
Current News / Status:
Resident Mort is currently Under Development
Resident Mort is planned to be a background EXE that will extend the functionality of MortScript available to developers through the usage of the "PostMessage" function.
Resident Mort is planned to extend functionality by adding extra, possibly more complex, functions or even adding in the ability for more complex GUIs.
Features (Green = Implemented, Blue = In Testing, Orange = Planned, Red = Failed):
GetProcessList - Gets a list of Running Programs
GetRecentApps - Gets a list of Recent Apps (10)
CreateScript - Creates a MortScript with the provided info
MakeFile - Makes a file of any kind with the provided info
MakeFolder - Makes a folder at the specified location
RegToEvent - Registers a File to an event​
UnRegFromEvent - Unregisters a File from an event
IsIdEventRegistered - Checks to see if a File is registered to an event.
DispImg - Displays an Image to the screen [and gets where the user Presses]
MakeForm - The Initial call for setting up an 'advanced GUI' form
FormAddObject -A Call that will add one of the predefined objects to the form being created
DeployForm - The Final call for setting up an 'advanced GUI' form, displays it to the user
This application is being made for MortScripters, to possibly make some projects easier. Since I don't use MortScript so much any more, I do rely on you the developers who use MortScript, to tell me what you want in the program.
Since I have a good deal of Functions there, I will commence work on a primary release
Saved For Future Use - Features and Screenshots
like the idea! advanced guis would be very useful
so this is a compiler? I am not sure what this is about
-sorry
No, this is a Resident App, an EXE that is always running in the background. It will have certain functions in it which can be accessed by MortScripters.
All the functions can be called with PostMessage ( I will provide documentation on how to do so, when I make a first release ). Then the results will either be written in the REGISTRY, written to a FILE, or copied to the CLIPBOARD (depending on how the scripter wants to handle the task).
Does this clarify it a bit?
Thanks for sharing!
A small update:
I am using this 'decent' planning utility, to help me keep track of my growing projects. According to this utility, the program is close to 30% complete. Then again, this is just a 'decent' utility haha. I would say, in my estimation (since some Code is "Copy + Paste"), I am close to 60% to 75% done.
A small change in my plans:
While I originally had the intentions of making this program as simple as a PostMessage in MortScript, I found out the following two Limitations:
1) MortScript's PostMessage/SendMessage only support(s) sending Numbers in the wParam and lParam parameters...very disheartening.
2) Due to #1, I made an assistant EXE, which would be run instead of calling PostMessage [this way I could do it Natively in my own control], but it is MUCH harder to transfer data between two applications that I would have thought! Due to Virtual Stacks and Memory Allocation 'rules', I couldn't EASILY do this.
So Here is my change:
In order to use Resident Mort, scripters will have to do about 3 or 4 commands to run. The only real commands that need to be used are PostMessage and RegWriteString (Did I get those right?).
In any case, my Resident Mort will read the Registry for corresponding wParam and lParam values and use those [in the future I will attempt Clipboard integration, to avoid Registry Interfacing].
When I release this program to the public, I will try to include a MortScript file that shows how to use all the functions. I don't remember much of MortScript [unfortunately], but I was thinking it could be helpful to make a "Library" of MortScript functions so a script will only have to call that function. But that is if some kind dev. would like to help out later on
Anyways, Thats that for this update. Expect a result in the coming week.
That sounds interesting for adv. gui functions.
Cyclonezephyrxz7 said:
1) MortScript's PostMessage/SendMessage only support(s) sending Numbers in the wParam and lParam parameters...very disheartening.
Click to expand...
Click to collapse
That's not MortScript's fault, it is design of whole Windows CE kernel, more here
I'd go with background EXE, that would listen to messages WM_USER+somenumber, maybe even region (for different actions, so you'd have both lParam and wParam free for another parameters). If you need help with this part, drop me PM on MSN, I had to study this a bit in the PinchToZoom project myself.
@OndraSter : Yeah, I know that Windows CE has limitations, however it is not impossible. Such an ability could be implemented in a code-update to MortScript. I did my reseach (if you look at #2, I mention that I found it much harder to transfer data between exe's that I had hoped) and found that you can transfer data via SendMessage (the Synchronous method) using a TRANSFERDATASTRUCT and WM_COPYDATA. If MortScripts interpreter could identify a SendMessage with a String value in either wParam or lParam, then it would create such a structure and transfer it, the receiving app would HAVE to take care of deleting the data though, or you have mis-used RAM.
As for how it is going to work now, I did not consider using WM_USER + a value, mainly because my program won't be using other Messages, and will only act if the correct wParam/lParam are provided (preventing accidental execution if the System decides to post a message with the same ID). I have it mostly covered, and I am closing in on finishing (currently with Reg data retrieval only, no Clipboard yet). I have completed 3 of the 7 Proposed Functions (MakeFile, MakeFolder, CreateScript) and I would have finished RegToEvents, but I got sorta lazy hehe. DispImg shouldn't take me more than a few minutes when I get to it, and once I get the API calls for Processes and figure out how to read the MRU reg-entry, I will have the last 3 complete!
As for Clipboard data retrieval, unless I am using the entirely wrong API calls, MortScript has an interesting way of using the Clipboard...I tried copying simple strings like "hello world" to the clipboard using MortScript, then trying to retrieve them in my Resident Mort, but the clipboard always comes up empty... Any ideas anyone?
Thats that for now I am about ready to release....any other functions you want implemented?
As for how it is going to work now, I did not consider using WM_USER + a value, mainly because my program won't be using other Messages, and will only act if the correct wParam/lParam are provided (preventing accidental execution if the System decides to post a message with the same ID).
Click to expand...
Click to collapse
http://msdn.microsoft.com/en-us/library/ms644947(v=VS.85).aspx
Good idea, the only downside being that it will generate the Message Numbers each time it is run... It is not assured that the Post / Send Message MsgIDs will remain constant.
Thanks for the link however
Cyclone,
Sorry about taking so long to post here...
How about, when the BT is on, this reports what is "out there" based on what the BT stack is telling you.
That is, it should read the surrounding area, then report that is saw my BT dongle. In the car, it should report that it saw my BT GPS unit.
Then, I can use that information to change my profile. That is, when it sees the BT dongle, regular phone calls. When it sees the BT GPS unit, run speaker mode, or connect to the GPS unit for phone calls.
Thanks!
--Ironhead
P.S. it would need to support the Touch Pro 2, Rhodium (my understanding is that it is Widcomm BT stack)
I"ll see what I can manage. I am really 'grid-locked' in my work on a couple of projects already So a release of this may have to wait a while....Sorry
I wish I had caught you a little sooner...
AutohotkeyCE may be a better base to work from than Mortscript...
http://www.autohotkey.net/~Micha/AutohotkeyCE/html/index.htm
In fact... AHKCE should be able to cater to all of your needs without the separate resident app
Yeah, I have seen that before. This project is really just a little challenge for myself to expand upon MortScript [because I know it is widely used].
Thank you for the link/suggestion however
I've been playing with Mortscripts for a while, I'm really thinking I can do everything I want, right from there...
EXCEPT:
Actually getting the information from the BT stack. I just need to see if there are any registered BT devices around my phone (so I can tell if I am in my car, at home, at work, etc.).
--Ironhead
Bumpity bump!
Hehe...Yeah, sorry for the lack of work on this. Check out FFP_LockScreen. I am working on a new release. I have very little time now, and I can't manage more than just one or two projects at a time. Once I release FFP_LS 3.0, I can devote some time MAYBE to this project. It all depends on how quickly the XDA-Marketplace idea takes off.
Sorry =\
I you can add a tool to make an GUI... it s must be soo cool...

ROM Building: The Basics Part II

Welcome to Part II of the basics of ROM building.
If you have not had a chance yet, please check out this link. This should be followed after all of the "files" are gotten from the first part of this Trilogy of tutorials. Okay enough Lord of the Rings, the true trilogy (nerd reference may be criticized below, I preferred the matrix until the third one lol) I digress.
So, we have the files we downloaded them, Red bull/Rockstar/Monster/Bawls, whatever your legal poison. Let's set up working directories.
Organization is critical to the development process. I mean, I only realized this after I started modifying. I mean wow, it was so much easier once I started to record notes and logs.
To begin, always go to a root of a hard drive
Create a folder called
Rom
Tools and then create a new folder called Smali and APKTOOL
Multimedia and then create a new folder called Pictures and Sounds
So we have created 5 folders, do you need 5? No. Do you need 20? It doesn't matter, do what you are comfortable with. It is about staying organized.
Take the ROM you have selected from the first Basics Rom Tutorial. I assume for (hint hint) simplicities sake you chose a DeOdexed rom version of the Sprint S3 MD4 rom. Freeza Thank you. It will be in a zip file
Called: MD4_update_FULL_DeOdex.zip
Rename it to MD4.zip, feel free to call it whatever you want (remember feel comfortable). I will refer to it as MD4 from now on for simplicities sake.
So you have 7-zip installed right? Uh Oh, check, make sure that is ready to go before we start.
I cannot go into that tutorial because....well come onnnnnnn is it really that hard to press next 10 times or less ?
Extract all the files to MD4_Version_1
Oh yeah, we will be making hundreds of versions if you want. Trust me later down the line, after each mod is good, you can just continue naming them in increments. But version control should always be implemented in case you mess something up. So the logic is:
Make 1 mod or set of mods, try mod, if it works keep using that version as your base version and keep going until you are ready to try it again. Mind you it is time consuming but the only way you truly learn this backwards art of reverse engineering.
So lets look at this disaster. I mean it's overwhelming so do not think you are King of the Hill or Any hill. Maybe a mole hill because this a very complicated system in front of us.
Let's analyze the anatomy, BTW, I do not even know what everything does or is, but by all means, ask questions and we will find out. A forum is meant to voice opinions and feedback to those opinions.
The root folder has 2 folders and 2 files
META-INF
system
boot.img
installbusybox
The META-INF folder is extremely important. It contains useful information about signatures and is very necessary for android to" say its official software" remember the idea of this folder, not its contents. I do not mess with this META-INF but there are so many all over the place down the road that we will need to know it plays an important role.
The system folder has every file that we are going to modify, we will hit this folder harder than a head crab being hit by another "delay" at Valve.
The boot.img is an important file for booting up android. We will not be touching that right now. Can you? Sure but hell, don't bother with it for this tutorial. If you know all about ROM mods like some of our bad-ass developers ( yes Cyanogen all of you are badass), Stop reading get to better pastures.
The installbusybox should be there for tools for ROM modifications. It is basically a set of functions that makes Android have teeth. I will not be using it right now but we can keep going. The best tools collected into one so do not delete or modify
Lets get to the meat, the big shabang, the wholy mole(for my Latin friends), the kabosh(for whoever knows what that is)
System
The sub folders are:
app: Contains all the apps that come with the ROM. Remember android operates by utilizing apps for different functions. Modify the files in here can be good and bad, we can make the best tweaks ever here or ruin everything. Be very careful, I have had boot hangs happen to these files
bin: This folder appears mysterious but it contains important files, the binary files. Complexity gets checked right here. This folder is extremely sensitive, I have not modified this folder just yet but when I feel like bricking my phone like a gravity gun dropping combine soldiers, I will get to this asap.
cameradata: Contains important files for camera raw data to JPEG conversion, I do not mod this folder.
csc: This is a jewel, it contains Consumer Software Customization. It has multiple XML files that can be edited and modified critical settings for various functions. Very nice to start your ROM customization here, but not the easiest, lets ease in with another folder first.
etc: This folder contains critical data storage. It has things like the hosts file which will allows you to block ads(cough cough, youtube) and many other files. This folder can brick your phone. Lets not get crazy here...yet
fonts: Pretty obvious, fonts for the ROM, oh and it requires True Type Fonts so contact your local free repository for those.
framework: This folder is an important folder, almost just as important as the app folder
hdic: Language files they are based off the first 2 initials of the language. Not affecting anyone if we are not trying to pinch each ROM's size down to the bare minimum
lib: Library folder, this has files with extension .SO, they will contain libraries of information for different functions. For example, how to take a "Best Pose" picture mode would have functions in this folder as well as other areas of the rom.
media: Contains the most obvious of sounds and a prime location for android universal sounds and bootimages. The bootimages is a touchy subject, the files are Samsung proprietary which makes them useless to us for modification, but we can make the puppet dance one way or another. The sounds, however, are key as we can isolate sounds when the phone starts up, or mute certain camera functions here, we can even make it sound like all of your favorite games(Yes I did, Mechwarrior boot sounds are acceptable, F.E.A.R. sound effects and some DOOM noises added for ambiance and of course Half life 2 noises for complete nerdgasm)
T9DB: This folder contains T9 predictive text in I believe 3 languages: English, Spanish and Korean, can you get rid of 2 of these sure, but expect problems if you decide later you need them. I mean they are not that large in size but at the same time, everyone has their own way of doing things
tts: This folder houses the Text to Speech programs. They suck. I am sorry but they do, SVOX is better, I love IVONA personally. I always like a british women to wake me up and tell me I am late. But that's me.
usr: This folder is not really meant for us to modify as it has to do with the keyboard layout, grammar recognition and customization. Realistically though, I use Swiftkey and call it a day. So do not hate me if I do not bother with mucking around here. It is useful to some I am sure but nothing I want to dabble in. But by all means, it can be useful for setting well Settings.
vendor: Contains library and binary files for certain features from the vendor, I would say camera related but I do not care for this folder just like people really hated the HEV suit announcing all of its amazing features, are you kidding me that was the best part. Yes I fell 100 feet, please let me know about my fracture and how this suit somehow repaired it. It might have well said "Oww". Nothing wrong with that.
voicebargeindata: From my understanding, Svoice related. No need to bother, that feature is about as useful as a Crowbar in a Gun Fight.
vsc: Version Software Control
wakeupdata: Acoustic and Grammar models contains several languages as well
xbin: Has busy box and Super User, a useful tool to become well super.
build.prop: Very sensitive file that is magical and detrimental. There is a lot of false promises on performance with this one. We will dig through this one carefully.
CSCVersion.txt: Should have the model number of your phone
SW_Configuration.xml XML file with more model number configuration
Please feel free to let me know what is understood or not.
This run down allows us to attack the appropriate folders for the next parts
Before we even begin with the complicated mods, let's attack the basic mods first.
The media Folder then go to audio, there is 4 folders
alarms
notifications
ringtones
ui
The first 3 folders you can place anything you want inside. They each correspond to the default ringtones you would like in the phone. I recommend using .ogg files or .mp3 files, you can use Audacity to modify your sounds. Sometimes the length of the sound plays an important role. Short sounds should be kept short for a reason. If you play a noise and its barely half a second, do not make it 4 seconds long because it will sound ridiculous longer than what is meant to sound. Taking a picture while hearing Puff Daddy's Come with Me can be quite awkward but hey its all about your ROM, your choice, your likes. Who the hell is going to tell you that you cannot have a sound of a crowbar whacking a headcrab while in the middle of a busy subway.....besides the police. This works similarly to the situation of ringtones, keep them full blown songs and I have noticed some lag. Do not be discouraged, but most modern phones end the call after about 30 seconds. This time limit has to do with how long the phone is takes to find the phone and ping it. Of course, I safely recommend 45 seconds of your song to cover yourself.
Take note that there are 3 files in these folders that are set to default (ringtone, alarm and notification). We can change that with the build.prop but that's after we mess with the ui folder that contains the User Interface Sounds.
Alert_on_call.ogg: An Alert when you are on call. This should be subtle noise
Auto_focus.ogg: Tricky one, I modified this, still makes an auto focus noise. Clearly a trick has been devised
Auto_focus_error.ogg: Same as above
Call_Connect.ogg: When the call first connects
Cam_Start.ogg: Video Recorder start noise
Cam_Stop.ogg: Video Recorder stops noise
camera_click.ogg: Camera Click noise
Camera_click_short.ogg: Camera Click noise
Camera_empty.ogg: Camera related
camera_focus.ogg: Tricksie this one is, mute and still makes noise, will discuss where noise is coming from
Camera_Timer.ogg: Timer for camera countdown
Camera_Timer_2sec.ogg: 2 Second timer
Charger_Connection.ogg: When you plug in your phone to charging port
Dialer_new.ogg: Tricky one will get to later
Dock.ogg: When you put the phone on dock, useful to distinguish from charger_connection.ogg
Effect_Tick.ogg: I have heard it whilst changing pictures but not sure
Highlight.ogg: I Silenced it, and "I dont know whhhyyy"( Can you guess which comedian said this line and if you know it say it in his voice)
HoverPointer.ogg: I Silenced it, and "I dont know whhhyyy"( Can you guess which comedian said this line and, if you know it, say it in his voice)
Insert.ogg: Google Voice Noise
KeypressDelete.ogg: Default keyboard, I do not use this
KeypressReturn.ogg: Default keyboard, I do not use this
KeypressSpacebar.ogg: Default keyboard, I do not use this
KeypressStandard.ogg: Default keyboard, I do not use this
Lock.ogg: When you press the power button and it instantly locks. This noise will play. Mechwarrior noise here
LowBattery.ogg: Doom low amm noise here to indicate I should have brought a charger becuase my battery is low
New_chat.ogg: Chat software related, I got rid of that junk but thats for another tutorial
PowerOff.ogg: Most people silence this as it is the noise that powers off the phone, I got creative here but you do not have to.
PowerOn.ogg: Most people silence this as it is the noise that powers on the phone, I got creative here but you do not have to.
S_HW_Touch.ogg: The HW indicates Hardware touch, basically the buttons and any touch screen action
S_SIP_Backspace.ogg: Backspace stuff
Sent_chat.ogg: See New_chat.ogg
Shutter.ogg: Silence this for sure if you do not want noise but really silence everything camera related here and it wont be 100%. So just do it
Shutter_multiple.ogg: Burst shot related
TW_Battery_caution.ogg: Any TW has to do with TouchWiz related actions. This one is for battery
TW_Call_Disconnect.ogg: The tricky thing is, some of these are controlled by another piece of software, this one is one of them
TW_Error.ogg:
TW_Silent_mode_off.ogg:
TW_SIP.ogg: Sounds like the default tapping sound for the rom's built in keyboard
TW_Touch.ogg: The default TouchWiz touch noise. Tricky little one this was as I had to verify there was no other location for the droplet noise, it turns out there is, so stay tuned as we dig into the apps and locate where the rest of the sounds are
TW_Unlock_Glass.ogg: Gallery Noises for file management
TW_Unlock_Puzzle.ogg: Gallery Noises for file management, not sure why I heard these exact noises in the gallery app other than they are linked
TW_Volume_control.ogg: The volume rocker button on the side, i mean logically there is only one choice, the Half Life 1 Medical Bay MedShot sound, okay maybe too annoying sure, but bada$$
Undock.ogg: Removing the phone from the dock that so few of us get because you know it doesn't fit my big case, or expanded battery or whatever. You know what, custom solutions are too expensive but trust me people do make the docks that accommodate bigger cases
Unlock.ogg: When you type in your Pin/Password/Pattern, the sound that it makes to unlock
VideoRecord.ogg: Camera video start recording noise, of course, I silenced this one as well
So this takes care of some of the noises, the problem is, Samsung software actually hides the rest of the noises. They are actually hidden away in the APK files in the system/app folder. Do not worry, in future parts of this Discovery channel special on Black Mesa, we will be investigating why they detonated a nuke in the first place if it didnt do anything to stop the invasion. I mean future parts of this series
So where do we go now? Well modify the sounds you want or add the ringtones you want. But something that I felt was important was that certain noises be set when I reboot my rom by default. No I do not want that stupid Samsung whistle! NO ONE DOES SAMSUNG!.
Lets set the default sounds on ROM start up, we will need to modify the build.prop file
This file contains an amazingly large set of instructions for the start-up of the phone and features in the phone. it is therefore, very sensitive to screw-ups. Hopefully, notepad++ was installed.
Navigate in Windows to the working directory of your ROM in our case MD4/system/ there is a file there that says build.prop
Let's open that up in notepad++, we should see some intimidating pieces of code or more like lines of text that tell the phone what and when to do something.
A caution to all, the build.prop has been synonymous with words like "increase performance", "maximize battery life" and other claims that are unfortunately sometimes not always true, for every mod someone makes to this file, someone traces the code to a Gingerbread rom that is useless on Jelly Bean, or an old reference to ICS(Ice Cream Sandwich),
I would highly suggest we not dabble too much on this. XDA has some great people who have found great information about the build.prop file. This link, user Chris_84 has put a great Wikipedia together on this so I will not try and explain each one. But there are so many other links that can show a post of good tweaks and bad tweaks and useless tweaks that I will not go into. Let's instead focus on our start-up sounds
The build.prop code we will scroll to with the ctrl+f button should be enough for us to get started is
Code:
ro.config.alarm_alert=
ro.config.ringtone=
ro.config.notification_sound=
Each of these do have a word after the equal sign, which means if you configure the correct file in the correct folder(hint hint) alarm, ringtone,notification folders we talked about earlier, all you have to do is add the name of the file exactly as it appears, please only use .ogg files here. MP3 files also work but you know just do it okay. I don't ask Alex why she never made a move on me, I just know she cant have a meaningful relationship with a guy who doesn't even say hi, that's a little creepy but you know and I know she loves Freeman alright.
As an example, just in case my rant did not make any sense,
let's say you put the following sound in the system/media/audio/ringtones folder kick_push_lupe.ogg
you would put in the code the following
Code:
ro.config.alarm_alert=
ro.config.ringtone=
ro.config.notification_sound=[B]kick_push_lupe.ogg[/B]
And that's how simple that is.
So you say you have ranted on too long. Sure I have, but that's not going to be the end here. We will be modifying the rest of this rom business in the more difficult lesson which is part III, that will take the longest because we want to have fun. And I still have some Freduian issues with my role model Gordon Freeman that I need to bring out. Anyway
Also, before I go, you might ask, how do you execute TEST BATCH ALPHA-TRON!.
Go Back to your Home Folder MD4_Version_1/. You should see the folders we discussed earlier
META-INF
system
boot.img
installbusybox
Select all of those files and right click the mouse button to get a context menu from 7-zip or WinRAR and click Add to archive. Make a ZIP FILE ONLY. You can choose to compress the file if you want, I just click fastest compression options available and proceed.
When the zip file is in hand, I take the file and put it on the SD Card root directory. When it transfers(in about 5 minutes), you can open the CWM (clockworkmod) recovery or the TWRP recovery and install the ROM. Sure I did skip some steps here on how you get these recoveries and the like but this tutorial is about ROM modification and the sort not the super basics, you need those to even be reading these. If you need to get those going, let me know in the comments and we can spool that up in part III.
I do not know how many parts this will take, but it is time consuming, i have to research this stuff and recall my notes. I know the spirit of the guide is in the right place but please be patient. I will not fail you Krypton(YES I LIKED MAN OF STEEL, let the downvotes begin, oh wait not imgur).
I appreciate all feedback, do not get me wrong, and I will work whenever I am free to add as many of these parts as I can. I do want to help anyone out who has their own twist on what they want their ROM to do. It is the least I can do to payback this great community and assist one person or inspire one idea. That is all it took for me to get going, the next part will also have a very heavy hand in taking code from other people for examples of mods. I want to say from now, I did not do any of these codes, I used common sense to implement somehow into my own rom mods. They deserve all credit as they are amazing coders/crackers/hackers/whackers/ whatever you name it they truly deserve the praise. I am just compiling their logic into our ROM that we are building together. And has anyone seen the YouTube channel Vsauce, that channel is AWESOME.
Again, thank you. Very, very helpful.
-------------------------
Sprint Galaxy S3
Need Help? PM
Hit the "Thanks" button if I helped you!
This is great. Man u really put this down in a way that is really understandable!
Sent from my SPH-L710 using xda app-developers app
Appreciate it
Thanks guys, seems you are tracking my every word, I posted the other ones it seems you hit those up as well. Appreciate it and everyone, please let me know if something did not make sense, we got a great pool of people that can help out.

Categories

Resources