Click to open network menu
Join or Log In
Mobafire logo

Join the leading League of Legends community. Create and share Champion Guides and Builds.

Create an MFN Account






Or

's Forum Avatar

Android 5.0 L(ollipop?) - new camera API, focus...

Creator: Searz June 30, 2014 3:01pm
1 2
Searz
<Ancient Member>
Searz's Forum Avatar
Show more awards
Posts:
13418
Joined:
Jun 6th, 2010
Permalink | Quote | PM | +Rep June 30, 2014 3:01pm | Report
It seems fairly probable that it'll be called Lollipop, but who knows, Google might surprise us. This could be a hint at the name.

There are developer preview builds for Nexus 5 and Nexus 7 (2013) if you're interested in testing the new version in an unfinished state.

In Android 5.0 we'll be seeing the accumulation of years of work that Google has been putting on the software development.
We're getting:
  • ART (Android RunTime) aka PBT (Performance Boosting Thing) - A new runtime that runs a different compiler that improves performance significantly and improves battery life a little. How big the performance gain is depends on the app. Apps that are developed using the NDK probably won't see that much of a gain, but many apps will see 20-100% increases in performance. ART also multithreads far better, which means that it's no longer pointless to have more than 2 CPU cores in an Android phone.
  • New design-language: Material Design - A design-language with focus on a more tactile interface that reacts more to your input and elements that flow into each other rather than between each other.
  • New Camera API - With functions like precise hardware control, increased performance, RAW support, HDR-video and burst-mode photography in 30FPS(30pictures a second, which is higher than most professional cameras. 30FPS means that you take one picture literally every 0.03s. Google planned on releasing this API with Android 4.4, but it wasn't finished. Now it looks like it'll be done in time for Android 5.0.
  • Battery-saving functions - Functions that can turn off animations, radios(Bluetooth/Wi-Fi) and switch to a governor (it takes care of how the CPU clocks up and down on demand) that prioritizes battery life over performance.
  • And loads of minor updates like increased audio-fidelity, reduced audio-encoding latency, advanced colorblind settings and the ability to write Wi-Fi passwords to NFC-tags.

I hope I got all the most important parts. This looks like the huge update. Likely the biggest one in the history of Android.

This will likely be arriving in November on the Nexus devices that will support it. And a few months later on most other phones.

xIchi
<Member>
xIchi's Forum Avatar
Show more awards
Posts:
1806
Joined:
Oct 19th, 2010
Permalink | Quote | PM | +Rep June 30, 2014 3:14pm | Report
I watched the stream, man I can't wait. Too bad I have a Xiaomi phone -_- still using 4.1 zzz
Latest Legend
<Member>
Latest Legend's Forum Avatar
Show more awards
Posts:
3039
Joined:
Dec 7th, 2012
Permalink | Quote | PM | +Rep June 30, 2014 3:15pm | Report
( *grumble* I'm still missing the reason for having that runtime in the first place to be honest. Why don't they just add some decent compiled language support? Or at least support a different language decently at all... *grumble* )

Anyway, can't be worse than what it's now I guess. I hope they don't turn it into a big party and set back the upcoming competition. My Google fever is acting up every time I see my phone since I was forced to android again(Whatsapp...).

I'm interested in that camera API though. Raw support seems really awesome. I'm terrible with hardware, but shouldn't the shutter speed be determined by the camera instead of the API?
********'s a pretty good fertilizer
Searz
<Ancient Member>
Searz's Forum Avatar
Show more awards
Posts:
13418
Joined:
Jun 6th, 2010
Permalink | Quote | PM | +Rep June 30, 2014 3:36pm | Report

( *grumble* I'm still missing the reason for having that runtime in the first place to be honest. Why don't they just add some decent compiled language support? Or at least support a different language decently at all... *grumble* )

Erm.. For a great number of reasons. Among which is mainly that 80% of all apps in the play store are written in Java.
Improve performance for Java and suddenly 80% of all apps run a lot faster.
Why stay away from Java? Isn't that one of the better languages, with the main problem of being kinda slow?
If they optimize it to the point of being fast then what's the problem?..

Also, there is already support for other languages in Android. The NDK runs on C, I believe, and most of the system is compiled in C too.
Quoted:
I'm interested in that camera API though. Raw support seems really awesome. I'm terrible with hardware, but shouldn't the shutter speed be determined by the camera instead of the API?

It is.. What made you think otherwise?
""Toshabi took thy **** and strucketh Hotshot in his face 'thou art no god'" Toshabi 3:16" - Toshabi

"And then, TheJohn said something so Brazilian that it made all the Brazilians in Brazil turn to look at him" - Toshabi

"abloobloo ur triggering me" - Toshabi
Latest Legend
<Member>
Latest Legend's Forum Avatar
Show more awards
Posts:
3039
Joined:
Dec 7th, 2012
Permalink | Quote | PM | +Rep June 30, 2014 4:28pm | Report
Well, I'm not a programmer, but I don't see any reason for using Java here. For things like web applets and scripting, especially for a wide range of platforms, it's understandable, but to use it as the only option on a mostly single-architecture platform that is based on local apps is something I don't understand. Of course it's a very popular language and supporting it is a good idea, but I don't see why there shouldn't be decent support for at least one compiled language. There's a reason for most games being written in a compiled language.

It'll simply always be slower than a compiled language as long as there's an interpreter behind it, theoretically speaking. The fact that most of the system is compiled proves this to me.

I didn't know of the NDK though, in that case there's no real problem indeed. Opened my mouth to quickly.

Searz wrote:
It is.. What made you think otherwise?
Never mind then. I got confused because don't see why there should be a major change to the API for shooting 30 fps instead of one fps as long as the hardware supports it.
********'s a pretty good fertilizer
Searz
<Ancient Member>
Searz's Forum Avatar
Show more awards
Posts:
13418
Joined:
Jun 6th, 2010
Permalink | Quote | PM | +Rep June 30, 2014 5:31pm | Report

Well, I'm not a programmer, but I don't see any reason for using Java here. For things like web applets and scripting, especially for a wide range of platforms, it's understandable, but to use it as the only option on a mostly single-architecture platform that is based on local apps is something I don't understand. Of course it's a very popular language and supporting it is a good idea, but I don't see why there shouldn't be decent support for at least one compiled language. There's a reason for most games being written in a compiled language.

It'll simply always be slower than a compiled language as long as there's an interpreter behind it, theoretically speaking. The fact that most of the system is compiled proves this to me.

Well first off, Android is trying to branch out to x86.
And you're not in the know about how ART works, are you?
Upon installation ART pre-compiles (AOT compilation) the code that is normally compiled on-the-fly while the app is running (JIT compiler).
With AOT compiling there is no ongoing compilation when the app runs, which significantly speeds up the execution.
The only problem is that the code will take 10-20% more space and that the installations will take longer. And the code of an app itself only takes a fraction of the total space an app takes up. In the standard 25MB app the code only stands for roughly 5MB. So 5*1.2 + 20 = 26MB, the app gets 1MB (4%) larger from ART.
Quoted:
Never mind then. I got confused because don't see why there should be a major change to the API for shooting 30 fps instead of one fps as long as the hardware supports it.

Well, it's been supported by the hardware since the Galaxy Nexus, which was back in 2011.
The problem is that Google set up a really simple and rigid (hard to modify) camera API that it has been running ever since Android 1.6, I believe. It was a simple system that only allowed for single pictures and video, and the pipeline was horribly inefficient.
They finally decided to get off their ***es and turn it into a competent API, and boy does it seem like they're doing work.
Other manufacturers that have implemented burst photography have been doing so through their own modified APIs, but so far I've seen none that have come close to the 30FPS seen here. Google has a lot of talented devs.

The reason why smartphones can do these 30FPS while not even professional cameras can is because the smartphones have significantly faster flash storage and RAM in the gigabytes.
"If I had asked people what they wanted, they would have said faster horses." - Henry Ford

"I contend we are both atheists, I just believe in one fewer god than you do. When you understand why you dismiss all the other possible gods, you will understand why I dismiss yours." - Stephen F Roberts
Searz
<Ancient Member>
Searz's Forum Avatar
Show more awards
Posts:
13418
Joined:
Jun 6th, 2010
Permalink | Quote | PM | +Rep July 3, 2014 5:13am | Report
Here's a nice summary of what was said on Google I/O about ART, the new runtime:
http://www.anandtech.com/show/8231/a-closer-look-at-android-runtime-art-in-android-l

You should give this a read if you're interested in the details Latest Legend.
"If I had asked people what they wanted, they would have said faster horses." - Henry Ford

"I contend we are both atheists, I just believe in one fewer god than you do. When you understand why you dismiss all the other possible gods, you will understand why I dismiss yours." - Stephen F Roberts
Latest Legend
<Member>
Latest Legend's Forum Avatar
Show more awards
Posts:
3039
Joined:
Dec 7th, 2012
Permalink | Quote | PM | +Rep July 3, 2014 6:50am | Report
Thanks for the link. I didn't know ART is compiling AOT.

Pics or it didn't happen, but the graph shows it'll probably work well so performance won't be an issue anymore I guess. Looks like Android is moving in the right direction. Still, I think they could've just promoted compiled languages more to begin with xD Or they could've went the HTML5 way like Firefox OS etc. for the cross-architecture code.

I'll refrain from making claims without checking the facts from now on. At least on this thread :P
********'s a pretty good fertilizer
Searz
<Ancient Member>
Searz's Forum Avatar
Show more awards
Posts:
13418
Joined:
Jun 6th, 2010
Permalink | Quote | PM | +Rep July 3, 2014 7:01am | Report

Thanks for the link. I didn't know ART is compiling AOT.

Pics or it didn't happen, but the graph shows it'll probably work well so performance won't be an issue anymore I guess. Looks like Android is moving in the right direction. Still, I think they could've just promoted compiled languages more to begin with xD Or they could've went the HTML5 way like Firefox OS etc. for the cross-architecture code.

Not sure if you read the entire thing, but another major benefit of the Java language and ART runtime is that all apps will be immediately compatible with 64bit architecture. So the moment a 64bit SoC runs with Android 5.0 it will mean 85% of all apps run 64bits natively. Meanwhile iOS will have to struggle for years to reach that number, and Windows Phone doesn't even have 64bit support in the works as far as I know.
"I love the dirty bomb tag because i get either

a) posts about the game

b) current world affairs" - steel-sentry
Latest Legend
<Member>
Latest Legend's Forum Avatar
Show more awards
Posts:
3039
Joined:
Dec 7th, 2012
Permalink | Quote | PM | +Rep July 3, 2014 7:47am | Report
I read the whole thing. Android uses the Linux kernel. They could just pick an well tested and supported compiler for that platform and compile to all sorts of architectures, with all sorts of languages. As long as they create decent libraries for the GUI and stuff instead of whatever platform they have now. Now they find themselves with a homemade Java compiler(and all the **** that comes with it).

They're acting like compiling things once is one of the latest and greatest innovations :D

EDIT: Of course it isn't as simple as that, but I hope you get the idea.
********'s a pretty good fertilizer
1 2

You need to log in before commenting.

League of Legends Champions:

Teamfight Tactics Guide