Page 1 of 2

64-bit Neutron version

Posted: Sat Jul 07, 2012 7:24 am
by dmitrykos
Neutron is built on top of own advanced audio engine which initially supported 64-bit audio rendering. Now 64-bit audio rendering core is unlocked for Neutron too.

Along with unlocking 64-bit audio rendering core there was possibility to increase precision of MP3 decoder to 64-bits.

What are the pros of using 64-bit Neutron?
  • Higher audio quality when active:
    • Resampling (if you have non 44.1 kHz music)
      Equalizer
      Surround
      Crossfeeding
What are the cons?
  • Higher CPU consumption. Currently ARM NEON SIMD supports only 32-bit floating point numbers thus there is no possibility of to accelerate performance due to parallel calculations done by NEON. Only VFP CPU unit (math co-processor) is used for math and it may be the case that different CPU models will deliver different performance even having same cache and frequency, all will depend on how well VFP is designed by CPU producer.
Even though NEON instructions are not used for audio rendering they are used for visualization of spectrum analyzer, AGP and some other things. So, NEON helps to compensate increased CPU usage.

There is also non-NEON version for Tegra 2 users and those whose CPU does not have NEON SIMD implemented.

Download: http://neutronmp.com/downloads

64-bit version increases quality but you shall decide for your self whether you really need 64-bit processing when using Neutron on mobile device running on battery. If you have charger nearby or keep device constantly connected to external power supply then 64-bit Neutron is always recommended.

If you are using high-quality external speakers and amplifier then you will notice difference between 32 and 64 bit processing. It is also true for high quality car audio system. May be somebody has very precise hearing then 64-bits are also for you.

Re: 64-bit Neutron version

Posted: Sat Jul 07, 2012 5:00 pm
by Nashman
Amazing work Dmitry! Music sounds even clearer than before. Wow! Best player just got even better! Thx for your amazing piece of software!

Re: 64-bit Neutron version

Posted: Sat Jul 07, 2012 7:20 pm
by dmitrykos
Thanks! :) With 64-bit audio rendering I think we approached to the best possible results. Now we need Android OS support 24 and 32 bit audio samples for output to hardware to approach the ideal SNR and dynamic range.

Re: 64-bit Neutron version

Posted: Sun Jul 15, 2012 10:39 pm
by 6macko
Hi Dmitrykos!

What a great news! I have a couple of questions here:

1. I have mainly ogg files in my playlist. And you wrote that the precision of mp3 decoding core was improved. Does it mean that playing ogg files, I will hear no improvement at all using the 64-bit version? And what improvement are we talking about here? Is it clearer sound, better instrument separation, higher dynamic range or something else?

2. And secondly, will I hear any improvement even when I dont use any of the stated functions: Resampling, Equalizer, Surround or Crossfeeding?

3. You wrote that the battery consumption will increase. But by how much? Have you made some measurements which you can state? For example how many hours could you play a reference file using the classic 32-bit version and how many hours using the new 64-bit (NEON preferably)?

4. Lastly, somewhere you stated that when the wakelock is active, the player doesnt quit its service. Well, I have Galaxy S3 and even when i turn the wakelock OFF and dont open Neutron for more than 5 minutes, the CPU load of Neutron always floats around 0,5 % (checking using the stock ICS task manager). Is that OK? Should not a 0% CPU load be stated? Or can the CPU load be caused by the Neutron widget that i have on my homescreen? Or is it the case that when i turn the display of the phone on, Neutron service starts again? (Naturally, the option to not quit the service is turned OFF in Neutron)

Thank you very much for your response.

Martin

Re: 64-bit Neutron version

Posted: Mon Jul 16, 2012 1:16 pm
by acr
a big step forward. excellent

Re: 64-bit Neutron version

Posted: Thu Jul 19, 2012 8:40 am
by dmitrykos
Hi Martin!

> Does it mean that playing ogg files, I will hear no improvement at all using the 64-bit version?
In terms of decoding, yes, you won't feel difference for OGG.

> And what improvement are we talking about here?
Decoders are using filters, FFT and many other means of reverting encoded signal to its close to original form. So, in two words, the higher the precision of calculations the better the results. "Is it clearer sound, better instrument separation..." - yes, in the long run it affects these areas.

> will I hear any improvement even when I dont use any of the stated functions: Resampling, Equalizer, Surround or Crossfeeding?
Not really. In such case I advise to use 32-bit NEON version (if NEON SIMD supported by CPU).

> You wrote that the battery consumption will increase. But by how much? Have you made some measurements which you can state?
If Android OS was based on a couple of devices, like iOS, then it would make sense. But Android OS is installed on big variety of hardware. Final results will depend on how well math co-processor (VFP) of CPU is handling 64-bit floating point numbers and how big is CPU cache. I expect Tegra 2..3 family be a winner here.

> always floats around 0,5 %

For example on my devices process showing 0%. But I wasn't using widgets. Actually, Android widget is additional load on CPU/Memory for any Android app, so if you do not really need it I advise to have it removed - this is because of how widget functionality is designed in Android OS. Also to make more precise estimation of consumption it is better to connect to device through developer's console ADB SHELL and use command line command TOP to measure CPU consumption.

Best regards,
Dmitry.

Re: 64-bit Neutron version

Posted: Thu Nov 21, 2013 4:05 pm
by dmitrykos
Good news for owners of Android devices based on new Intel CPUs (http://ark.intel.com/ru/products/series/71260). Known devices are Samsung Galaxy Tab 3 10.1, Lenovo K900. There will be no performance penalty on 64-bit Neutron starting from 1.76. 1.76+ versions will support x86 natively. Intel CPU's SSE2 instructions provide hardware support for double precision math, unlike the 32-bit ARM CPU's NEON (except newest ARM64).

Re: 64-bit Neutron version

Posted: Fri Nov 07, 2014 10:23 pm
by dmitrykos
Even though you have 32-bits in Playing Now screen all audio processing is done in 64-bits if 64-bit mode is selected. The bits on Playing Now screen are related to the resolution of the source file.

Re: 64-bit Neutron version

Posted: Sun Mar 12, 2017 6:24 pm
by Jazz81
Hello Dimitry,
It is an amazing player you have created!
Im however as a newbie audiophile confused about the 64 bit processing in the root menu and the 32 bit output to device you can select in the Audio Hardware menu. For the highest quality should I activate both?
I have a Samsung Galaxy S6.

Thank you!
Jazz81

Re: 64-bit Neutron version

Posted: Mon Oct 08, 2018 5:24 am
by janemanny
dmitrykos wrote:Even though you have 32-bits in Playing Now screen all audio processing is done in 64-bits if 64-bit mode is selected. The bits on Playing Now screen are related to the resolution of the source file.
The 64 bit computers can run both 32bit programs and 64 bit programs. 32 bit computers cannot run 64 bit programs, because the bit sizes are fundamentally different. Latest Laptops with pre-installed Windows are usually x64 i.e. 64 Bit, old Desktops and Laptops could be having Windows x86 which means 32 bit.