Android :: Threaded BitmapFactory Image Decoding

Oct 15, 2010

Our Android app does a lot of image decoding. We fetch a lot of images from the internet, local storage caches, etc. Up to now, these images are being decoded on the UI thread (using BitmapFactory.decodeX() methods). It's been causing some timeout crashes because the UI doesn't respond quickly enough to user input.

I could write a little AsyncTask that encapsulates decoding, but I'm not sure that's a good idea. Spawning threads is expensive, and that would be spawning and tearing down a ton of them. So what's the best way to put this on another thread? Do I need to go to the extent of writing a Service? That seems a little heavy-weight. Are there any solutions for this already out there?

Android :: Threaded BitmapFactory image decoding


Android :: Lossless Rotation Of A Jpeg Image Without Fully Decoding

Aug 23, 2009

I would appreciate to hear from you what would be the available options in Android to perform a lossless jpeg rotation of a jpeg image -> Rearranging the image data from landscape to portrait by rotation without ever fully decoding the image. My problem is that my device's camera always take the images in landscape mode and sometimes I would need to rotate the image to portrait to be used in my application. This takes time and memory if I need to do it in the standard way (decode the image, apply rotation operation to the pixels and encode again). Doing it without decoding the image would bring a significant improvement in performance. I have seen that in Android platform (Cupcake) jpegtran.c (which performs this operation beautifully) is available under /external/jpeg but this functionality is not available (a.f.a.k) on the application framework. How can I use this function? I guess I need to use JNI to be able to access this functionality, right? Other ways? Could you give me any hint on how I could do this or if there is another easier and quicker way to do it?

View 2 Replies View Related

Android :: BitmapFactory Image From ZipFile

Aug 8, 2009

basically what i'm attempting to do is place several images into 1 zip file, and then read the images back out of the zip file, and draw them onto a canvas using BitmapFactory. This is what my code looks like, but when i debug i only get a source not found error.

Code: try {..............

View 2 Replies View Related

Android :: Image Scaling By BitmapFactory.decodeResource()

Sep 17, 2009

I can't wait to try out the new 1.6 goodies, but first I'm retargeting my existing applications, and I decided to start with Daisy Garden. Changing to android:targetSdkVersion="4" caused the application to segfault on startup and discovered that the BitmapFactory.decodeResource method now performs scaling based on screen density. In this case the behaviour is unwanted - I'm loading a set of masks that are scaled later during composition. So I've quickly inserted the following method, which seems to perfectly mimic the previous behaviour:

private Bitmap loadBitmap(int resId) { BitmapFactory.Options options = new BitmapFactory.Options(); options.inTargetDensity = 1; options.inDensity = 1; return BitmapFactory.decodeResource(context.getResources(), resId, options);
}

View 19 Replies View Related

Android :: BitmapFactory.decodeFile Returns Null Even Image Exists / Why Is So?

Aug 2, 2010

Saving the file code...

The last line gives a null pointer exception, why is BitmapFactory.decodeFile returning null? I can verify that the file is getting saved correctly as I can pull it using adb and see the png displaying properly.

View 1 Replies View Related

Android : Maximum Size That VM Allocate For Loading A Image With BitmapFactory?

Mar 1, 2010

Some of you may met the same problem, I was using BitmapFactory.decodeStream, and got this exception: Code...

I know the reason is because the BitmapFactory is trying to decode an uncompressed version of a big image(in my situation, jpg). I can use BitmapFactory.Options.inSampleSize to fix it. but my question is what's the maximum size that VM would like to allocate for loading a image with BitmapFactory? so I can do some scale before it loads.

View 2 Replies View Related

BitmapFactory - (decode Returned False) For Internal Image Files Extracted From Zip

Apr 19, 2012

Need to display images downloaded and extracted from a zip into the "/files" directory of the app. the images are getting in there properly as far as i can tell - i am able to extract them from the emulator and view/open them from my desktop. but every attempt, every variation of code i have found and tried so far has failed (Tag: skia / Text: --- decoder->decode returned false).

My latest construct, which does work for image files downloaded separately and uncompressed :

Code:

String imgFile = new File(getFilesDir(), "myImage.jpg").getAbsolutePath();
ImageView myImageView = new ImageView(this);
Bitmap bm = null;
try{
bm = BitmapFactory.decodeFile(imgFile);
myImageView.setImageBitmap(bm);
} finally{
mainLayout.addView(myImageView);
}

And here is the construct i am using to handle the zip extraction. I assume this is where the problem lies but i am clueless as to what i could possibly do differently and to what effect:

Code:
ZipInputStream zis = new ZipInputStream(fis);
BufferedInputStream in = new BufferedInputStream(zis, 8192);
ZipEntry ze;
while ((ze = zis.getNextEntry()) != null){
File dest_file = new File(getFilesDir(), ze.getName());

[code]....

View 2 Replies View Related

Android :: RTP Stream Video Decoding

May 24, 2010

Currently I am developing an application that will stream video using RTP and SIP. I have this mostly working with audio working fine both ways using Java (and native) codecs. I can stream out video also from the camera to a windows client.

The problem comes from when I want to receive and decode the video on the android platform. I understand at this stage that Mediaplayer only supports RTSP streams. Ironically it does what I need (by getting the SDP information from using RTSP SETUP call and using that RTP/UDP information to receive the stream). But I can't seem to access this functionality, all it takes as input is a RTSP url. If you are unfamiliar the difference between RTSP using RTP and SIP using RTP. You can read about the differences here<http://www.cs.columbia.edu/~hgs/rtsp/faq.html#rtsp_sip> .

What I need to do is take an RTP stream encoded with h.263-1998 and somehow pass it to the mediaplayer (or even a lower level api if somebody can provide an example).

The only way I can think around this is to write another service to receive the RTP stream and provide an RTSP interface... but this is a really ugly solution.

View 10 Replies View Related

Android :: Decoding High Resolution Pics

May 5, 2009

I want to decode high resolution pics something like 8 mega pixel images and view it. when I try to decode them I get out of memory exception. Decoding of single 8 mega pixel also fails . From the Imagamanager code and other post I could use BitmapFactory.Options inJustDecodeBounds I could get a scaled down version of the Image......................

View 3 Replies View Related

Android :: Pure Java Video Endcoding/decoding Libraries

Nov 18, 2010

Does anyone know of any video encoding/decoding libraries written entirely in java? Bonus points if it works on Android. I'm trying to write a video decoding application for android, where I have access to the frame level decoding functions (which is absent in the android API MediaPlayer class)

View 1 Replies View Related

General :: How To Use H/W Accelerated Video Decoding In Coding

Jul 7, 2012

Ways to implement H/W acceleration for video decoding(eg. H.264) in my own app for a long time, but got no clue.

I want to call H/W decoding based on NAL or frame level over raw bitstream, rather than setting up a media player for files.

View 1 Replies View Related

Android :: Non Threaded SMS?

Jun 14, 2010

Just got my HTC Desire and one of the things I'm really struggling with is threaded SMS. I can't find any way to go to regular view in the stock SMS program! That would be an unbelievable omission if it's not possible to use SMS in a normal fashion

It basically means my SMS inbox groups SMS by contact and each conversation has about 20 SMS in threads already and I've only been using it for a few days. I can see that ending up being in the hundreds within a couple of months. It also means you need many more screen taps to view the message you want to find. I can't find a way to view all the messages I've sent either, I have to go through each conversation................

View 8 Replies View Related

Android :: Threaded Web Service Call

Sep 26, 2010

I am requesting information from a web service in my android app. The web service returns a list of items, each item having a base64 image and some info

First method: simply access the web service and get the result. This means freeze of UI until data is downloaded. Not a good solution

Second method: put the data download in a thread, and display a progress bar with a message.

private void StartGettingData()
{
viewInfo = new Runnable(){
public void run() {
getData(); //from the web service.......................

View 1 Replies View Related

Android :: Decoding Encoded Audio Data On Android Without Playing It

Feb 25, 2010

Short version: What is the best way to get data encoded in an MP3 (and ideally in an AAC/Ogg/WMA) into a Java array or ByteBuffer that I can then manipulate?I'm putting together a program that has slowing down and speeding up sound files as one of its features. This works fine for WAV files,which are a header plus the exact binary data that needs to be sent to the speaker, and now I need to implement it for MP3 (ideally, this would also support AAC, Ogg, and WMA, but since those are less popular formats this is not required). Android does not expose an interface to decode the MP3 without playing it, so I need to create that
interface.

View 1 Replies View Related

Android :: Threaded Horizontal Scrolling Text

May 9, 2009

Its been a while since I've done any coding, I'm new to android, and unfortunately my first job is rather tricky. My program need to display horizontally scrolling text and images, but it need to set the scroll speed quiet finely. Now I've been looing at some examples with TextView and some also use android.widget.Scroller.

Now I'm pretty sure I'll have to write this from scratch, but what i want to know, is there a clear way that i should use in creating the class. I could try expanding on the TextView class and use its methods. Or should I just write a class to treat text and images the same?

View 2 Replies View Related

Android :: OutOfMemoryError From BitmapFactory

Apr 28, 2009

Like many others here I'm getting OutOfMemoryError from BitmapFactory when decoding multiple bitmaps. I am sure I am not leaking memory. Here is the system log from a crash:............

View 23 Replies View Related

Android :: Use BitmapFactory Optimisation

Nov 5, 2010

In my app, I am creating a bitmap from its colors code like this :

CODE:...............

And often I get the outofmemoryerror: So how can I use the BitmapFactory optimisation to avoid this problem? because I don't have an input stream or a file, I only have an array containing my pixels.

View 1 Replies View Related

Android :: Turn Off Threaded Messaging And Revert To More Classic Look?

Mar 27, 2010

I have the original T-Mobile G1 and am generally fond of it, actually so fond im on the verge of getting myself the HTC Desire when it hits the stores here. There are however a few things that "bug" me at present.

1: Is it possible to install and use programs directly from the memory card, or does programs still have to be installed to memeory with the newest release of Android OS?

2: Isn't it possible to turn of threaded messsaging and revert to the more classic look?. Either directly through the native client or through a 3rd party text messaging client?

3: And what about saving some of your texts?. Cause you know once in a while you recieve a text thats worth saving, and at present I don't seem to be able to find that option in 'Droid. So is that not supported or does that "just" require 3rd party software.

4: And have they finally fixed the forced google sync?. Where you can ONLY get contacts and stuff to your android device through gmail. Because im honestly a bit concerned with the fact that Google "owns" everything on gmail.

View 8 Replies View Related

Android :: Multi Threaded Http Requests Cause Exception

Jan 27, 2010

I have an app making an https post on one thread while performing a file download on another thread. For some odd reason, I am getting a ClientProtocolException saying that "The server failed to respond with a valid HTTP response". The error goes away if everything is run on a separate thread. Oddly if I run the two server requests in serial, the error goes away. It seems there's a bug that happens when two requests are made at the same time.

Important note: The post occurs to a different server than the download so the servers themselves should not be causing the problem. The code is simple. Here's the file download code:.............

View 9 Replies View Related

Android :: OutOfMemoryError At BitmapFactory.decodeByteArray

Jun 9, 2009

I get a OutOfMemoryError at BitmapFactory.decodeByteArray when bitmap size is large; Following is the code snippet:

BitmapFactory.Options options = new BitmapFactory.Options(); options.inSampleSize = 8; Bitmap bitmap = null; bitmap = BitmapFactory.decodeByteArray(data, 0, data.length, options);..........

View 3 Replies View Related

Motorola Droid :: Disable Threaded Conversations In Gmail On Android

Sep 29, 2010

Google has provided the ability to disable (Turn Off) conversation view for the web-based version of Gmail. See Turn off Gmail�s conversation view - Official Gmail Blog for more details. My take is they're only half way there if your an Android user like myself. Has anyone heard if this feature will be making its way to the Gmail app for Android?

View 2 Replies View Related

Android :: Will Threaded Resource Loading Improve Throughput - Or Just Responsiveness

Oct 13, 2010

Are there any Android phones that are multi-processor (multi-core/ cpu), where application threads execute concurrently on different processors?

There doesn't seem to be any explicit way of doing asynchronous file I/ O or asynchronous resource loading. So, suppose I put BitmapFactory.decodeResource() or Resources.openRawResource() into a separate thread. Will those methods play nice with the other threads, yielding during blocking I/O operations so those other threads can run?

If those methods rely on the thread scheduler to forcibly suspend them, then the separate resource-loading thread isn't going to help me get my application started any faster (although it will help it to be more responsive to user input).

View 5 Replies View Related

Android :: Single Threaded GL - Exchange Events Between View And Renderer

Oct 9, 2009

I was using for sometime now OpenGL initialization code from Api demos and it was quite hard to exchange events between View and Renderer. So, I read pieces of documentation from GLES, EGL from jsr239 and finally made the single threaded GL initialization code which is much simpler than in ApiDemos. Here it is:

import javax.microedition.khronos.egl.EGL10; import javax.microedition.khronos.egl.EGLConfig; import javax.microedition.khronos.egl.EGLContext; import javax.microedition.khronos.egl.EGLDisplay; import javax.microedition.khronos.egl.EGLSurface; import javax.microedition.khronos.opengles.GL10;

import android.app.Activity; import android.os.Bundle; import android.os.Handler; import.................

View 2 Replies View Related

Android :: BitmapFactory.decodeStream Returns Null

Oct 3, 2009

I have an activity which performs an image search, the results (URLs of thumbnails on the web) are rendered in a GridView. My GridView adapter class delegates creating the actual Bitmaps to an AsyncTask that loops to sequentially fetch the image content from each URL using HTTPClient, and creates the Bitmaps using:

BitmapFactory.decodeStream(entity.getContent()).

I found that the above method sometimes returns "null" silently instead of creating a Bitmap. The occurrences appear to correlate with larger stream sizes (I check this by logging entity.getContentLength()). However, if I put a breakpoint just prior to the decodeStream call & then resume immediately every time I hit it (i.e. pause briefly on each iteration), the Bitmaps are created perfectly every time. All the images are quite small (most <10K), so the download & decodeStream happens fairly quickly. There are never more than 10 images processed in one AsyncTask.

View 6 Replies View Related

Android :: BitmapFactory.decodeStream Thread Safe?

May 7, 2010

Is the BitmapFactory.decodeStream method thread safe?

View 2 Replies View Related

Android :: BitmapFactory.decodeByteArray Gives Pixilated Bitmap

Jan 30, 2010

I am working on an app that displays photos which are downloaded from Flickr. I obtain a Bitmap object from a byte array, which in turn is read from the relevant Flickr URL, as follows: Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0, data.length); The problem is that the resulting bitmap is pixelated and I can't figure out why. To demonstrate, here is an example of a picture created via BitmapFactory.decodeByteArray versus the original picture obtained directly from the relevant Flickr URL:...

View 6 Replies View Related

Android :: Out Of Memory Error In BitmapFactory.decodeFile

May 22, 2009

I was reading in some other posts that some developers have the same Problem, but till now, no solution. its about the gallery: I have a string array with photos, but when the gallery does show the 2nd Picture it crash with:...............

View 7 Replies View Related

Android :: BitmapFactory.decodeByteArray() Returning NULL

Jul 26, 2010

I am using the previewCallback from the camera to try and grab images. Here is the code I am using

private Camera.PreviewCallback mPrevCallback = new Camera.PreviewCallback()
{
public void onPreviewFrame( byte[] data, Camera Cam ) {
Log.d("CombineTestActivity", "Preview started");
Log.d("CombineTestActivity", "Data length = "
+ data.length );
currentprev = BitmapFactory.decodeByteArray( data, 0,
data.length );....................................

View 1 Replies View Related

Android :: BitmapFactory.Options - Exceeds VM Budget

Nov 5, 2010

I've been reading about performance issues decoding Bitmaps and have received the OutOfMemoryError "Bitmap exceeds VM budget" issue when I would expect to not be out of memory and read online that this is a common problem referred to as a bug in the framework by many devs. Typically, I get the error mentioned above on my second pass. Let's say I load a somewhat sizable Bitmap successfully and then recycle it and even set the ref to null. When I call this same method a second time that does the work of loading my Bitmap(s) into memory...

I've read on previous posts here and elsewhere online that there are a few things that can be done with BitmapFactory.Options (for instance, providing an input buffer explicitly). But, before proceeding blindly in using what I've found, I'm hoping someone with more knowledge of these classes can shed a little more light...........

View 1 Replies View Related

Android :: BitmapFactory.decodeByteArray Returns Null

Aug 18, 2010

In my application I am converting base64 string to image.For that I initially converted base 64 file to byte array and later am trying to convert to images.
To convert to Images I am using the below code

File sdImageMainDirectory = new File("/data/data/com.ayansys.Base64trial");
FileOutputStream fileOutputStream = null;
String nameFile="Images";
try {.......................

View 1 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved