Advice, developing a high end video compression codec on Shield Android TV for Camera - Shield Android TV General

Advice, developing a high end video compression codec on Shield Android TV for Camera Acquisition and HQ video.
Hi
Aims
I am researching doing a high end streamlined video compression/decompression codec that can be installed and registered under Android, and be available to third party camera, editing and video apps.* Shield seems like a good top end development target.* I am hoping it will be able to compress 4k+ video streams, with small file sizes and reduced processing overheads.
Even though it is meant to be more for high end camera acquisition on Android in general, it also has other uses on the web.
I am trying to find out general, and detailed, information to see what I need to address.* I'm a newbie to all this, from back in the days that C++ was new and untaught in my college. I'm going to have to reteach myself programming, but have a lot of knowledge on the design side due to previous work.
Codec Programming?
So basically, I need advice on broad programming info on programming and registering a codec on Android and gp-gpu use?
But with Android things seem a bit more complicated to get performance due to the way things are structured:
Backend Camera Streamlining?
Previous high level camera projects have failed due to the underlying restrictions of the android camera interface and customisations from phone to phone, but also Android's slow nature. This is an attempt to bypass this with a high performance codec section.* L and M, reportedly address the deficiencies somewhat, but for the codec I realise the data rate of video data coming in might be poor, and* I might have to write a back end to acquire the frames from the hardware to the codec quick enough, which I don't want to do, but if I can't get frame data delivery fast enough I will have to look at it. I want to use mainly the GPU or other processing units instead of the main processor, for power efficiency and speed, but realise nothing is simple. All that sort of stuff that you have to do because it was not done right in the first place. So, avoiding going through slower high end camera interfaces as much as possible. I understand it is all based on a standard Linux camera API. If the camera software does not have to be rewritten and it can deliver frame data at streamlined timely speeds to a codec, then I can avoid much of this. So, I probably need advice in these things too.
Backend Storage Streamlining?
Now, on the other side we have storage**Hopefully the data rate can be small enough to avoid issues, but that is unlikely on a 4k-8k frame and would need advice on this too.
JavaScript to Android, Android to JavaScript transportability?
I actually want to develop the core of it within JavaScript primarily, for transportable use on the web and Firefox OS, so will have to find out the best way to transfer it to Android for compilation? As I know next to nothing about these new languages, it will be an uphill learning curve. As I understand, JavaScript syntax is separate from Java, and not a even a logical subset, which makes life hard.
----------
Anyway, it is a shame we don't have a kick starter like funding scheme, to pay a good programmer to do most of the background stuff, and upgrade the Linux code and drivers, so anybody can use the new code with any codec and camera app combination. My main interest is my own codec, not all the other stuff, that is really fixing Android and Linux camera code, which would help everybody.
This is not an official project start, just implementation research.

If anybody knows of anybody that can contribute, please direct them here?
Thanks.

Stevio2 said:
Advice, developing a high end video compression codec on Shield Android TV for Camera Acquisition and HQ video.
Hi
Aims
I am researching doing a high end streamlined video compression/decompression codec that can be installed and registered under Android, and be available to third party camera, editing and video apps.* Shield seems like a good top end development target.* I am hoping it will be able to compress 4k+ video streams, with small file sizes and reduced processing overheads.
Even though it is meant to be more for high end camera acquisition on Android in general, it also has other uses on the web.
I am trying to find out general, and detailed, information to see what I need to address.* I'm a newbie to all this, from back in the days that C++ was new and untaught in my college. I'm going to have to reteach myself programming, but have a lot of knowledge on the design side due to previous work.
Codec Programming?
So basically, I need advice on broad programming info on programming and registering a codec on Android and gp-gpu use?
But with Android things seem a bit more complicated to get performance due to the way things are structured:
Backend Camera Streamlining?
Previous high level camera projects have failed due to the underlying restrictions of the android camera interface and customisations from phone to phone, but also Android's slow nature. This is an attempt to bypass this with a high performance codec section.* L and M, reportedly address the deficiencies somewhat, but for the codec I realise the data rate of video data coming in might be poor, and* I might have to write a back end to acquire the frames from the hardware to the codec quick enough, which I don't want to do, but if I can't get frame data delivery fast enough I will have to look at it. I want to use mainly the GPU or other processing units instead of the main processor, for power efficiency and speed, but realise nothing is simple. All that sort of stuff that you have to do because it was not done right in the first place. So, avoiding going through slower high end camera interfaces as much as possible. I understand it is all based on a standard Linux camera API. If the camera software does not have to be rewritten and it can deliver frame data at streamlined timely speeds to a codec, then I can avoid much of this. So, I probably need advice in these things too.
Backend Storage Streamlining?
Now, on the other side we have storage**Hopefully the data rate can be small enough to avoid issues, but that is unlikely on a 4k-8k frame and would need advice on this too.
JavaScript to Android, Android to JavaScript transportability?
I actually want to develop the core of it within JavaScript primarily, for transportable use on the web and Firefox OS, so will have to find out the best way to transfer it to Android for compilation? As I know next to nothing about these new languages, it will be an uphill learning curve. As I understand, JavaScript syntax is separate from Java, and not a even a logical subset, which makes life hard.
----------
Anyway, it is a shame we don't have a kick starter like funding scheme, to pay a good programmer to do most of the background stuff, and upgrade the Linux code and drivers, so anybody can use the new code with any codec and camera app combination. My main interest is my own codec, not all the other stuff, that is really fixing Android and Linux camera code, which would help everybody.
This is not an official project start, just implementation research.
Click to expand...
Click to collapse
I wish you all the luck in your endeavour, as this sounds really interesting, and different........
Saying that, i dont think your suppose to post anything in the dev thread that is'nt an actuall work, im just giving you a heads up, incase a moderator might come along............also i could be wrong, if this has changed recently
Your best bet i reckon, is to post in this thread
http://forum.xda-developers.com/general/general
Its the main general thread of the entire xda, so you'll have more eyeballs.........and maybe a better chance of getting a "start in the right direction" from someone knowledgeable
Ive also read many android technical question being asked at the "stackexchange" website, by devs working on their projects, so that might be another avenue to explore if your unlucky here
Anyways, wish you luck with this

Development Forums (ones with the word development in the title) - For Developers to post release threads e.g. ROMs and Kernels including modifications to kernels, bootloaders, ROMs, etc., as well as R&D development discussion threads designed with an end goal
Click to expand...
Click to collapse
Thanks. From forum discussion rules. I mistook this to mean development research discussion as well. If it actually should, then I'm happy for it to be moved to general.

Stevio2 said:
Thanks. From forum discussion rules. I mistook this to mean development research discussion as well. If it actually should, then I'm happy for it to be moved to general.
Click to expand...
Click to collapse
The Shield is based on the Nvidia X1 chip. Nvidia also just released the Jetson TX1 development board which is similar. If you register as a developer with nvidia (which is easy) you get access to all the dev docs (including video codec docs) for the TX1, which boots Ubuntu. That should be a good start.

Sounds good, it was an andriod development related question though (using shield hardware under android so it can be shared with different platforms, you just can do more on the shield hardware. Maybe there is a Linux overlap with andriod in codec support but I doubt it isva full story. I am interested in dealing with 8k content too. There is a way to do a 8k over HDMI 2, but muchntoo involved at this stage, the display has to also be modified or an adaptor made to interface to a future 8k interface.
I have just realised the shield might be good for touch table work (not so good on the software side as there are no established software base to work on). I located a new good cheap fine grained more transparent touch surface overlay technology a little while ago that is being used to do cheap touch tables in Asia. Using a 4 subpixel screen I can do a semi 8k display out of a 4k (though you can't directly access the white pixel through hdmi, which is useless). There is also now 6 color pixels. A firmware change might allow a display to sub pixel address. However, you can get panel frames without the internal section and get direct access to the internal panel interface (why hdcp is probably useless). Anyway, 8k would yeild 16k, a nice minimum for a 80 inch table, with OLED, or projector. Reprogramming a display to use display port/thuderbolt interfaces on a display would be more useful. I tried to negotiate access to a 16k projector chip once to connect up to a low powered processing array, but got nowhere. Henceforth I've been dealing with embedded machine code level concerns for decades off and on and let the newer high level language and OS stuff (like C# and Linux) go, due to health issues.
Another intetesting thing that can be done with a shield, is it can be hooked up to a camera head and rigged up to be a camera (or the next version). Problem is that USB 3 is useless compared to Thuderbolt 3 etc (though camera head computet interface standards take a while to catch up). My codec could be used for recording. We used to do this with PC's but the Shield offers a much better power consumption. There is Linux software around to do this, but the development board is half powered and expensive.

Bump

Well, when I said bump, I didn't really mean to move it to a third subforum
Seriously, I want to do a less than 20mbit/s 8k visually lossless codec. But at the moment I'm waiting to get checked out for dementia, which explains a lot about the last few decades and my decreasing amount I can do (beta amyloid in particular builds up for 10-20 years with low grade symptoms before it gets seriouse enough that it is can be picked up on older scanning, by then it has permanent problems. Apart from other types of dementia). At this stage I can't do much much of the time.
Anyway, as the thread has skipped to a second forum in two days, any more short cut advice is welcome.

Related

Touch Pro 2 Internal Hardware Discussion (Chainfire please read)

Hi Chainfire,
Thank you for the clarification in the last thread on the different Qualcomm processor variants.
Admittedly I am still a little dubious about your specs because I'm sure I saw a datasheet for the 7200a that stated it was 90nm - however I know that you have been in this game for while (ROMs et al) so I will accept them and verify them when I get a moment)
I also agree that the TP2 did feel snappier than the TP1.
However your argument concerning the TP being a repackaged Tytn2 is a very weak one for the reasons you specified and many others.
The TP is clearly a different class of device in comparison to the Tytn 2 and definitely doesn't feel repackaged.
Also the phones have not simply been repackaged over the last few years, I've had most of them with considerable improvements in each until we reached the Qualcomm era pre snapdragon...
Also I'm not a fan for the 7200 series qualcomm processors for all types of video related reasons.
The snapdragon (also qualcomm) demonstrates innovation and shows promise as well as potential.
On another tangent I'm really loving the snapdragon capabilities they've demonstrated runing android in the netbook market at the moment too (720p hardware encoding and decoding according another engadget and gizmodo.
As usual - Time will tell - it never lies!
Question - Doesn't anyone else feel a little betrayed at the rate of hardware/software innovation in WM products at the moment?
I surely can't be the only one.
I've used these devices for ages and after seeing things like the Palm Pre and IPhone I feel a little frustrated.
qazzi76 said:
Hi Chainfire,
Thank you for the clarification in the last thread on the different Qualcomm processor variants.
Admittedly I am still a little dubious about your specs because I'm sure I saw a datasheet for the 7200a that stated it was 90nm - however I know that you have been in this game for while (ROMs et al) so I will accept them and verify them when I get a moment)
I also agree that the TP2 did feel snappier than the TP1.
However your argument concerning the TP being a repackaged Tytn2 is a very weak one for the reasons you specified and many others.
The TP is clearly a different class of device in comparison to the Tytn 2 and definitely doesn't feel repackaged.
Also the phones have not simply been repackaged over the last few years, I've had most of them with considerable improvements in each until we reached the Qualcomm era pre snapdragon...
Also I'm not a fan for the 7200 series qualcomm processors for all types of video related reasons.
The snapdragon (also qualcomm) demonstrates innovation and shows promise as well as potential.
On another tangent I'm really loving the snapdragon capabilities they've demonstrated runing android in the netbook market at the moment too (720p hardware encoding and decoding according another engadget and gizmodo.
As usual - Time will tell - it never lies!
Question - Doesn't anyone else feel a little betrayed at the rate of hardware/software innovation in WM products at the moment?
I surely can't be the only one.
I've used these devices for ages and after seeing things like the Palm Pre and IPhone I feel a little frustrated.
Click to expand...
Click to collapse
Why has this been brough back to life? DaveShaw closed the last thread, can't you respect that and leave it for a bit?
No clearly I can't.
While the TP2 isn't that bad a device - if all else fails I will probably end up with one - There is an underlying issue here that needs to be discussed and addressed that isn't only applicable to the Touch Pro 2.
And further more I'm not offending anyone I'm encouraging discussion that needs to be encouraged.
I've been here since 2004 and been using these devices before 2004 and am seriously wondering what's happening with WM in the industry lately.
- WM7 promised the world but has yet to see the light of day.
- We still don't have properly implemented VGA recording in our devices
- Rich application experience is only available through 3rd party programs and pluggins when it should be available at the OS level.
- Why on earth do some programmers know how to manipulate the hardware at OS level better than Microsoft, the people that make the OS (Example Point UI)
Seriously what is going on here?
Have you seen the Palm Pre?
Have you seen the Iphone?
Have you seen Android Cupcake?
What do we have?
Microsoft has given us a half a hearted attempt at an OS refresh (6.5) and embarassingly all our rich app experiences are provided by third parties.
Why couldn't HTC release Rhodium level hardware with Android?
As for processor specs:
From the MSM7200A datasheet that I "absolutely don't have":
7200: 90 nm CMOS (15 x 15 x 1.4 mm)
7200A: 65 nm CMOS (15 x 15 x 1.4 mm)
Some more interesting changes in non-A vs A are that the A has 24bpp display support for EBI2, and the memory is clocked at 166mhz instead of 128mhz (aside from the obvious 528mhz (533 officially) addition) and also uses a different GPS core. I assume all the latter is also in the 7201A but I cannot verify that, so...
As to the repackaging thing, perhaps you misunderstood me. I do not feel like the TP is a repackaged TyTN II, nor do I really feel the TP2 is a repackaged TP. But, if you say the latter you should also say the former - the thread starter only did the latter. Even if for one you may feel instinctively that it isn't repackaged and for the other you do, it's either both or neither, from my viewpoint.
I agree there have been many improvements, but most of them were not in the 'bare' hardware. And that was the discussion point of the thread starter, who stated in one of his posts that we were not talking about software. Obviously, casing, screens, etc have improvements as well as the software.
Again, I love the TP2. The first time I played with one was love at first sight.
As for video, the 7200 series is more than capable - just not supported very well. With fully optimized drivers and software, video playback should be much better than it is right now. Its the old trick of unleashing a little bit more potential with every device release to get people to upgrade. Sound business model, but obviously us techs frown at it.
As for snapdragon, I agree it has got awesome capabilities, but there are some caveats (note that I already played with snapdragon devices and it felt really fast to me... much faster than TP2).
Caveat #1: How will it stack up versus the Tegra? I've also seen Tegra (test) devices in action up close (no touching, though, and it was bigger than my pocket) and it did seem extremely awesome.
Caveat #2: It's still Qualcomm. While HTC is partially to blame for the whole mess the past few years, so is Qualcomm. Both of these companies continuously let us down performance-wise. Will the old dogs learn new tricks? Will major corporations ever actually care about their customers? Will they ever deliver what they promise? We are talking about HTC and Qualcomm here, and due to past experience I wouldn't put the chances of that very high.
Of course, Microsoft also has a big role to play in optimizing WM. It's a dog. But it's improving... I do have high hopes for WM7.
Do I feel betrayed? I don't think that's the correct word, but yes, I am disappointed (even if I do love the TP2 ). I think over time things will get better though. WM being the slow dog that it is, with the latest hardware and some effort it should still be technically possible to top iPhone performance by a large margin.
I can easily understand your frustration though. I am myself heavily invested in WM (my livelyhood actually depends on it) so I am also frustrated. It can be much better!
Hi Chainfire,
Oh - I see... Got you.
So the A supports higher bit resolution displays and has faster memory!
Ok I stand corrected about the MSM7200 series processors.
Somehow I'm not surprised the hardware is capable of good Video - I just haven't experienced it.. yet.. - But I also put that down to poor colaboration (possibly deliberately) on MS, HTC and Qualcomms part)
I also have been wondering about the Tegra but I see it taking ages to come to market based on NVidia's PDA GPU efforts before which eventually materialised in Dells axim x51v (PDA) initially and then imates 6150(Phone) ages after anouncement.
Obviously this could change.
I agree the Tegra is a worthy force to be reckoned with if implemented correctly - I unfortunately have only seen working examples of the Tegra on Youtube but what I have seen has been very very impressive GUI wise.
The Snapdragon looks kinda crazy too with its 1.3ghz potential when its already flying at 1ghz on the TG01 and the whole netbook angle/implementation of snapdragon.
I guess we'll have to wait and see what WM7 has to offer although I imagine it's must be a little difficult for you at the mo with the whole Android and apple app store gaining ground and making their mark in industry.
Anyhow I wish you good luck with your WM based business projects/ventures.
Maybe tp2 use msm7201A http://forum.xda-developers.com/showthread.php?t=522460
That would be interesting, it is listed as 7200A everywhere on the net. But as some people already have one, perhaps they should check the about screen?
Mine still not in...
EDIT: Checked FCC pics, that one indeed seems to have 7201A. Wonder if the EU version will also have this or have 7200A. We'll know soon enough I guess!
Chainfire said:
That would be interesting, it is listed as 7200A everywhere on the net. But as some people already have one, perhaps they should check the about screen?
Click to expand...
Click to collapse
UK version 7200A-528MHz, according the the About screen.
Hmm, that makes it likely the US versions will be MSM7201A and the rest of the world will get MSM7200A... Interesting!
out of interest im in uk and mine has the 7200A...

What We Want In Next Windows Phone Handset

Windows Phone 7 has been a fresh change from the millions of rows and columns of icons we have seen in smartphones in the recent past. Although the operating system is super fast and effective, it does lack in a few areas, when compared to Android and iOS. Here’s what we would love to see in the next Windows Phone 7 handset.
Guest Mode
Everybody has personal stuff on their phone. From stored passwords, to ‘logged-in’ social networks, to credit card details, to personal images and documents. There’s a constant fear of spilling out ‘classified information’ when somebody wants to view your new smartphone. What do you do then? Enter guest mode.
I’ll quickly explain this once, if you’ve not understood it already. Guest mode allows you to hide your personal data like e-mail, social networking updates, files and login info. You have two passwords on your smartphone. Password A enables guest mode, while password B enables your normal phone functionality. It’s an extremely simple to implement feature, but somehow hasn’t been included. No longer do you have to stay worried about showing your latest WP7 handset to your friends, as you’ll have guest mode! C’mon Microsoft, please do this for us and everybody else.
Media formats and Zune
The single most irritating feature in Windows right now is Zune and how it greatly limits media formats for your smartphone. Why do all videos have to be transcoded by Zune? It’s similar to iTunes for iOS devices, but we’d have loved a free approach by Microsoft. Anyway, all is still not over and removing Zune dependency would definitely be a ‘feature’ we’d all love to have. And while we’re at it, more media format support out of the box would definitely be a brilliant addition. After all, they’re all ‘smart’phones, aren’t they?
No more Zune!
To think of it, everything in their user interface is slick and fast. From sending emails to updating your Facebook status, to clicking pictures, to accessing music - the whole experience is a breeze. Why doesn’t the same outlook have to be carried over to connectivity to the PC, data transfer and playback? Playing any video format is definitely on our priority list and transferring music files using mass storage is an easier task to accomplish as well. Even phone updates currently require you to connect your phone via Zune, whereas OTA it's quicker, faster and sexier!
More UI customization
Not particularly happy with the look of the user interface? Too bad, you can’t do a thing about it. Like iOS, WP7 is a closed system and while i ain't particularly complaining out here, how you feel about the interface from the word go, will clearly decide your overall experience and satisfaction with the phone. WP7 is as rigid as iOS. The best you can do at the moment is change tiles, add or remove them or simply change the background and tile colour.
I’ll reiterate this again, we aren’t complaining about the user interface. There’s absolutely nothing wrong with the UI, but sometimes you might want that slight amount of customization that might alter the look and feel of your phone. A desktop wallpaper, an alternate launcher, or simply minor tweaks in the layout mean that you’ll never get tired of the tile interface and you’ll have one more option to choose from.
1080p recording support
So, the UI is fluid, the phone can do all your basic tasks efficiently without too much of a hassle. But, for WP7 to stay in the hunt for the top spot, it’s the ‘small’ things that need to be maxed out, starting with 1080p video recording. Take, for example, the Nokia Lumia 800. It’s one of the top smartphone offerings, it competes with the likes of the HTC Sensation and the Atrix 2, two relatively older phones. The 800 can do ‘only’ 720p, while the other two are capable of ‘1080p’. True, this isn't a major deal, because on a screen that small, there’s absolutely no visible difference. but hey if you’re paying big bucks for your smartphone, you might as well get the best of everything!
This could also be due to the fact that Microsoft has been extremely restrictive with OEMs so far. Single core CPUs, max 480 x 800 pixel resolutions are frustratingly low-end specs. That may change however, but we’re hoping the transition is quicker than their updates!
External memory card support
Another simple addition that we definitely would want in the next Windows Phone 7 device is support for an external memory card. Depending upon your phone, you may either get 8 or 16 gigs of storage, and that is definitely enough for a lot of people, but as of now, most of the handsets don’t have a microSD card slot, with a few exceptions like the Samsung Focus.
How difficult is it?
There’s a certain trend with the increasing use of cloud services and the elimination of memory card slots, and there are chances that more and more devices in the near future would come with ‘just’ the internal memory. For personal reasons, ease of use and poor operation of cloud services in the country at the moment, we’d definitely want the next-gen devices to have an external memory card. It’s just - convenient and easy! For the record, even the Nokia Lumia 900 isn’t going to have an external memory card slot, just like the Galaxy Nexus and the Sony Xperia S. With cloud becoming more and more popular, can you see the trend? Give us back our ‘microSD card support up to 32GB’ spec!
NFC support
In the year 2012, 100 million NFC-enabled smart-phones are going to be sold, according to a study. We can bet that most of them won’t be Windows Phone 7 devices. Why? Because NFC hasn’t still come to Windows Phone 7 devices. According to a Microsoft spokesman, “While NFC is not currently supported on Windows Phone 7.5, it is coming. We expect NFC-enabled Windows Phone devices to ship within the next year.” This statement was recorded in 2011, so hopefully we will get to see NFC this year.
100m in 2012, none will be WP7??
Though NFC is still in its nascent stages here, it’s quite the future of a lot of mobile related services. So, for the love of those of us who don’t change our devices for a long, long time, could you please have that option in your next WP7 phone, Microsoft ? At the moment, it’s not up to the OEMs to include or exclude this feature, so we know who’s got to buck up.
TV Out
Want to show your videos and photos from your WP7 device on your swanky new HDTV? Well, it’s not easy as 1 - 2 - 3. You’ll have to get them onto your laptop or another device and then showcase it to your friends and family. TV out via HDMI or MHL is definitely an option we would love to have. Nokia Play To is coming soon, so that limitation might have a workaround in the future, but not all HDTVs are equipped with Wi-Fi or an Ethernet port.
Well I would say more freedom to devs so better apps can be made possible.
Thanks A Lot Sir For Your Opinion
lamborg said:
Well I would say more freedom to devs so better apps can be made possible.
Click to expand...
Click to collapse
Thanks Sir,
Agree
I think they should improve the software of the camera. Lumia Nokia 800 has a great sensor, but the picture quality leaves much to be desired
davidwar said:
I think they should improve the software of the camera. Lumia Nokia 800 has a great sensor, but the picture quality leaves much to be desired
Click to expand...
Click to collapse
but, it's been claimed by WPcentral the Titan 2 has a much better sensor than ever the Lumina 900 and pictures have been great (read into the reviews on WPcentral)
As with the OP.
UI customisations- YES !! No question, the option for simple but, advanced features.
1080p recording- No brainer, everyone else is doing it but, a 1080p camera that actually looks like a 1080p recording (a good quality lens and sensor standard)
NFC and TV out, sure that would be nice.
I would also like
1. New battery tech so devices can last a TRUE 4-5 days with out a charge (I'm dreaming)
2. Better graphics upgrade TO take gaming to the level of Android and the iPhone. Just compare the videos of Spinter Cell for WP7 and look at Rage for the iphone (and that's not a new game), you'll see what I mean. They are not even in the same class. To take the Xbox Live brand serious...

Overlooked Mobile Application Testing Condition

Testing iOS and Android software presents unique challenges that require unique test conditions.
Testing iOS and Android software presents unique challenges. As easily portable devices, smartphones and tablets are used in a variety of settings, and wireless connectivity may widely fluctuate and acutely affect the performance of any applications in use. Unlike with PCs that have wired connections, dev/test teams cannot assume relatively stable network conditions when crafting a mobile game, messaging client or news reader.
Moreover, despite enormous leaps forward in CPU and GPU design since the iPhone’s debut in 2007, mobile hardware still is considerably less capable than desktops or laptops, especially when it comes to device memory. In practice, this can means suboptimal performance when working with mostly interpreted languages such as JavaScript (in contrast, PCs often have RAM to spare and can accordingly overcome flaws in language design), as well as frequent crashes.
Still, the difficulties of have not discouraged shops from trying their luck. There are more than 1 million apps in both the Apple App Store and Google Play, and Microsoft has revealed that the count for the Windows Phone Store is now at 300,000. With the market moving toward mature software that takes advantage of increasingly powerful endpoints and addresses functionalities once reserved for PCs, will be instrumental for fostering collaboration and coordinating both manual and automated tests.
How can developers and QA engineers deal with so many mobile devices and platforms?
Creating software for mobile devices has never been simple or easy. In the early days, there were incredible constraints on hardware as well as relatively few APIs and toolkits for expediting development. Over the years, some of these challenges have been overtaken by new ones surrounding sustainable monetization and consistency across a wide range of platforms.
Teams have to address users who may delete an app if it crashes even once, but how can they do so when there are so many device/OS combinations to account for? Native vs. HTML5 development is a conversation for another time – let’s look at how an application developed with either of these methodologies might be tested. Many of the issues that apps face in the wild originate from overlooked mobile testing conditions, which if implemented may have produced a more polished product. Here are a few to keep in mind:
Too much manual testing: Manual tests aren’t bad – they’re critical to many QA workflows. But teams can easily become over-reliant on them, which doesn’t scale well given how fragmented the mobile ecosystem is. Android KitKat, for example, only runs on 20 percent of Android devices as of August 2014. Automated processes are needed.
Insufficient simulation of real-world conditions: As discussed earlier, smartphones and tablets don’t exist in a vacuum. They’re carried inside buildings with poor reception, or packed along into remote regions with only 2G or 3G coverage. Tests have to account for these realities as well as limitations on memory, screen resolution and battery life.
Low attention to region/language settings: This one flies under the radar since many developers target only specific sets of users. For apps with an international or multilingual audience, it is important to see if the platform in question has a translation option and whether app performance is affected by switching from setting to another.
Overall, mobile testing is about scalability for many devices and consistency despite constraints. A blend of automated and manual tests is usually the best way forward.
“Manual testing is a definite need, however, there are so many devices and combinations in the market today that it is necessary to use automated mobile tools as well,” stated a software engineer from CallFlow, in a post on LinkedIn. “User expects (sic) the application to stay on, connected, and perform at all times. To meet these expectations, the mobile testing strategy should include real device testing under various real world conditions. That includes various signal strengths, networks, speed and more.”
The stakes for mobile testing: Even big companies can miss bugs as apps scale
Facebook, with its 1 billion users, is obviously an outlier in the software world, but its recent battle with a bug in its iOS app illustrates how mobile testing requires tremendous time and effort as well as top-notch tools. The social network’s engineers were noticing an issue related to the Apple CoreData System, but due to the size and rapid evolution of the Facebook codebase, parsing the crash reports proved a monumental undertaking.
“[C]ertain fundamental programming challenges inevitably become more difficult with scale,” explained Slobodan Predolac and Nicolas Spiegelberg, engineers at Facebook. “Debugging, for example, can prove difficult even if you can reliably reproduce the problem – and this difficulty increases when debugging a highly visible but nondeterministic issue in a rapidly changing codebase.”
Ultimately, the Facebook team was able to identify the issue through close collaboration and a focus on programming fundamentals. The fix may have reduced the app’s iOS crash rate by 50 percent.
Users often have little patience for app crashes, so this is an important development. While most other shops won’t operate at Facebook’s scale, they’ll still have to deal with similar performance issues that could manifest due to adverse real-world conditions and/or other flaws in the code. A test management solution enables developers and software testers to scale their workflows and find defects early and often at low cost.

[Project][WIP] The multi-user machine at a much lower cost than before

Note: This is a migration of a discussion from Medium to here.
Do you remember seeing this from Linus Tech Tips last year?
https://www.youtube.com/watch?v=LXOaCkbt4lI
$30,000 is not cheap by any standards. Nor does someone really need 7 gamers on one PC. But given a average household of 2 adults, 2.5 children… 3 might be a good in-home run. And even if we divide that by half, $15,000 is out of the reach of most people.
Thankfully in the past 18 months much has changed in the world of PC hardware. Intel Core X and AMD’s Threadripper offer more than enough CPU horsepower to drive an effort like this. New GPUs, despite the mining craze, can be found at great deals if willing to wait. And while we are waiting to see what the end solution will be for Intel’s high end of Core X we can certainly do it with what’s out today for far cheaper.
So the plan is this: An AMD Threadripper 1950X, 64GB of RAM, 3 m.2 SSDs and SSD storage to divide amongst the users. At the time Linus used the Fury X — this year we have Vega on AMD or anything at or above a GTX 1070 on NVIDIA. We’ll use Hyper-V to allow a local session and then provide 2 others — great since it’s free and has a friendly user interface for setting up.
The awesome part about this? While the concept here is gaming for demanding applications, there is absolutely no reason that no other environment couldn’t be similarly virtualized. For example — this household currently uses 5 PCs on a regular basis. Each one of those ran a minimum of $500. What if I could take all of that and put it in one PC — for slightly more cost but a heck of a lot easier to build and maintain? Want a build machine in Linux while running Windows? Shoot — we can already do that with Ryzen 7!
So here’s the start of the build list. Yes, it’s a bit expensive — but far less than both Linus’ build last year and the build AVADirect built for GTC earlier this year. The pricing here can also be easily tweaked a little bit in each direction to either build a better overall system or make it within your needs/budget.
Well, the concept is the easy part. Now it’s time to see what can be done to make this a reality. Virtualization in the consumer space has been waiting for the right catalyst — and it seems we may finally have it. Again… now it’s time to prove that.
I wanted to share some additional details. First, I've been told that several forum members on Level1Techs have been working on this on Fedora.
One of their writers shared the progress, looks like it's limited to Vega on the Radeon side and requires some fixes.
I'm going a different direction, trying to get this going through Ubuntu and Xen. Hyper-V didn't support direct GPU passthrough so it's out.
I'm trying to get a link for the Fedora discussion and I'll post my own progress here. At the moment though it's on hold until we get a CPU.

Not very much out there on the 3d Scan capabilities. Resolution? Export formats?

Not very much out there on the 3d Scan capabilities. Any info available about resolution or export formats? Is it even working currently?
it is working sort of, after update it doesn't work for people and faces anymore, it's also very finicky about light, angles etc., but it can be done with patience. According to specs it supposed to be VGA and VGA should be 640x480??, but who knows in reality. It's a new tech, so I'm hoping for 3rd party apps in few months. When I did couple proper scans, it actually looked pretty good and you could probably export the data to other programs for more processing, maybe even 3D builder or 3D paint in Win10, but I haven't tried it yet. Personally I think it has potential, but it will take some time to develop software to take full advantage of it. There is also laser based distance measuring app based on TOF sensor on 10+, but again it has some limitations like max distance and reliability. Bottom line, doesn't bother anything by being there even if never used, but it could be useful in ways difficult to predict right now, so we will see.
Any update on this?
O4karitO said:
Any update on this?
Click to expand...
Click to collapse
I've used it with success to create a 3d scan of a vehicle part that I had mocked up, exported to obj to push/pull points, then offloaded the g code to my cnc.
That's actually quite impressive
Thanks

Categories

Resources