Android :: Using DispatchDraw(Canvas) To Obtain Subsection Of Video Preview
Jul 29, 2010
The following is the overriden dispatchDraw in a subclass of SurfaceView. I'm trying to change the parameters of the Surface(getting only a subsection of the video preview.
CODE:......
Why does the above code not alter the dimensions of the SurfaceView at all?
View 1 Replies
Nov 16, 2010
I want to get the current bitmap associated with my canvas so I can perform operations on it. I can't see how to do this though.
I've seen some examples where you create a bitmap and set the canvas to use this bitmap, so obviously you can then access it later, but I'm using the canvas returned from a SurfaceHolder so there's no constructor.
For instance, examples often show this kind of thing:
CODE:...........
So at this point I can see bmp.
In my case, the canvas is obtained by:
CODE:......
So how can I get the bitmap for c?
In short, my aim is to capture the current canvas contents where I have drawn "stuff", and make a copy of it, reversed, to put underneath. Like a reflection. The example of this that I found performed it all via bitmaps, so I assumed I needed to somehow capture the current canvas to a bitmap to then use it.
View 1 Replies
View Related
Jun 22, 2009
I have tried 1.5 video API. I could not make it work. It even can't do preview. Following is my code:
private boolean initializeVideo() { Log.v(TAG, "initializeVideo");
if(Common.mRecordedVideo!=null && Common.mRecordedVideo.exists ()) Common.mRecordedVideo.delete();
File sDir = Environment.getExternalStorageDirectory();
String baseDir = sDir + Common.BASE_DIR;
File sampleDir=new File(baseDir);
if(!sampleDir.canWrite()) // Workaround for broken sdcard support on the device.
sampleDir = new File("/sdcard/sdcard");
try { Common.mRecordedVideo = File.createTempFile(PREFIX, EXTENSION, sampleDir);
} catch(IOException e) { AlertDialog.Builder ab = new AlertDialog.Builder (VideoRecord.this);
ab.setTitle("Error"); ab.setMessage(" can't write audio data to storage");
ab.setIcon(R.drawable.error); ab.setNeutralButton("Close", new DialogInterface.OnClickListener()
{ public void onClick(DialogInterface dialog, int whichButton) { } } );
ab.show(); return false;
} Intent intent = getIntent(); releaseMediaRecorder();
if (mSurfaceHolder == null) { Log.v(TAG, "SurfaceHolder is null");
return false; } mMediaRecorder = new MediaRecorder();
mMediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mMediaRecorder.setVideoSource (MediaRecorder.VideoSource.CAMERA);
mMediaRecorder.setOutputFormat (MediaRecorder.OutputFormat.THREE_GPP);
mMediaRecorder.setMaxDuration(MAX_RECORDING_DURATION_MS);
mMediaRecorder.setOutputFile (Common.mRecordedVideo.getAbsolutePath());
// Use the same frame rate for both, since internally
// if the frame rate is too large, it can cause camera to become
// unstable. We need to fix the MediaRecorder to disable the support
// of setting frame rate for now.
mMediaRecorder.setVideoFrameRate(20);
mMediaRecorder.setVideoSize(352,288);
mMediaRecorder.setVideoEncoder (MediaRecorder.VideoEncoder.H263);
mMediaRecorder.setPreviewDisplay(mSurfaceHolder.getSurface());
try { mMediaRecorder.prepare();
} catch (IOException exception) { Log.e(TAG, "prepare failed for " );
releaseMediaRecorder(); // TODO: add more exception handling logic here
return false; } mMediaRecorderRecording = false;
return true; } private void startVideoRecording() {
Log.v(TAG, "startVideoRecording"); if (!mMediaRecorderRecording) {
// Check mMediaRecorder to see whether it is initialized or not.
if (mMediaRecorder == null && initializeVideo() == false ) {
Log.e(TAG, "Initialize video (MediaRecorder) failed."); return;
} try { mMediaRecorder.setOnErrorListener(this);
mMediaRecorder.setOnInfoListener(this);
mMediaRecorder.start();
// Recording is now started } catch (RuntimeException e) {
Log.e(TAG, "Could not start media recorder. ", e); return;
} mMediaRecorderRecording = true;
mRecordingStartTime = SystemClock.uptimeMillis();
updateRecordingIndicator(true);
mRecordingTimeView.setText("");
mRecordingTimeView.setVisibility(View.VISIBLE);
mHandler.sendEmptyMessage(UPDATE_RECORD_TIME);
setScreenTimeoutInfinite();
} }
View 2 Replies
View Related
Aug 20, 2009
Can anyone share or point me to working example of "video capture" with preview?
View 2 Replies
View Related
Jul 2, 2009
I have created a CapturePreview class and CameraManager class the following way:
CapturePreview:
CODE:...
The video preview works fine this way until the sub-activity starts in the main activity. When sub-activity starts the CaptureView.surfaceDestroyed(SurfaceHolder holder) is called and the video preview stops. Then when the sub-activity closes the CaptureView.surfaceCreated(SurfaceHolder holder) is executed, but the video preview doesn't start.
Does anyone know how to fix the problem in order to successfully restart video preview after surfaceDestroyed(SurfaceHolder holder) is executed?
View 2 Replies
View Related
May 9, 2009
A number of previous posts imply that attempts to apply bespoke image processing on a Camera preview are hamstrung by a buggy API and will in any event run extremely slowly due to the need to manually decode the preview buffer. Can anyone comment on whether it is possible to use the video recorder as an alternative means of achieving this?
View 2 Replies
View Related
Feb 3, 2010
I have not found an example yet with a solution to the following task.
I have a SQLite database with two tables- BOOK and AUTHOR. I execute a query on the DB that uses a join and results in a cursor that looks like this. code...
New authors and books can be added to the database at any time, and I also need the user to be able to remove books, hence the [ ] checkboxes.
So i have two row layouts, row_author.xml & row_book.xml. I detect when I need to show a row_author subheading by seeing when the current author has changed compared to the previous row. But I have realized that the rendering of an Author Row will then move the cursor forward one row and jump over their first book.
Can anyone suggest a good approach to presenting data like this? Is there a much better way to do this?
View 2 Replies
View Related
Jun 29, 2010
Short video preview of the Epic 4G by Engadget. YouTube - Samsung Epic 4G preview
View 1 Replies
View Related
May 22, 2010
Videos - Free video downloads and streaming video - CNET TV
View 2 Replies
View Related
Aug 9, 2009
I am building a camera app, where videos are continuously being captured and saved to the SD card. The videos are short (few minutes), and their length are preset with setMaxDuration().
The whole process works fine, while the main activity is in the foreground. But, when I go to another activity (e.g. settings), the video recording works in the background only until max duration is reached. The file is saved, but a new sequence can not be started
because prepare() fails, apparently because setPreviewDisplay() doesn't like not having a proper surface to attach to.
I tried to use a dummy Surface, a dummy SurfaceHolder, lockCanvas(), and various other tricks, but nothing works. Is there a way to initialize MediaRecorder without a valid surface?
View 3 Replies
View Related
Jul 7, 2010
My loadMap() method generate a canvas.throwIfRecycled exception when i try to load a new map.
When i start the game, the initial map loads and work fine though,
its only when i try to load a new map that i get the exception ..
How can i "reset" canvas and the bitmap i use to draw into, so i can startover fresh with them ?
here's what i use to create and draw my maps:
CODE:.........
So basicaly once i created and used picDest and canvas, i cannot figure how to reset it all for when i want to load a new map..
View 1 Replies
View Related
Mar 27, 2009
Specifically I want to know if one can give me better performance. I want to draw the whole surface myself as I am scrolling a large bitmap. Basically I am trying to figure out how things like ListView / GridView do smooth scrolling (see thumbnails in picture viewer app) and writing custom views (even using surface views) seem to be flicker a lot.
View 2 Replies
View Related
Jul 11, 2009
Is there a way to obtain a virgin map with the Google Map Api or other API (no city and country names, i want only country borders)?
View 6 Replies
View Related
Aug 23, 2010
I would like to write an app on Android to upload my GPS location to an external website once every 5 minutes. This needs to have as minimal an impact on battery life as possible, but it also needs to work without any user interaction. (Background: I'm competing in an Ironman triathlon which will take me about 14 hours to complete, and want to broadcast my location in near-real-time but without having to worry about fiddling with my phone.) So my initial thought is to write a Service which uses LocationManager.requestLocationUpdates() with a minTime of 5 minutes, but will this actually wake the device up every 5 minutes for my service to do its job?
It sounds like I would also need to use AlarmManager.setInexactRepeating() to make sure my service is awake while it completes its task but how does that play with requestLocationUpdates()? Should I instead set minTime=0 on requestLocationUpdates() but then go back to sleep as soon as the next update is obtained? Any general guidance on how to design this. I'm a competent Java programmer & will be using Google Maps on the server to plot my location, but am pretty new to Android development so I'm basically looking for a high-level plan on how to architect the client app.
View 2 Replies
View Related
Jun 26, 2010
I'm trying to obtain an instance of ServiceState in my Activity. But how am i supposed to do this? There is no static method to obtain an instance or any method on any service that returns an ServiceState instance.
There is the TelephonyManager.listen() call. But i want to get the ServiceState instance when i want, not when android calls my listener because something changed.
The documentation of ServiceState can be found here: http://developer.android.com/reference/android/telephony/ServiceState.html
View 2 Replies
View Related
Jun 9, 2009
I wish to obtain the frequency of an input signal from the mic. Can anyone send me some pointers on how this may be accomplished.
View 2 Replies
View Related
Jan 18, 2010
I'm trying to obtain the battery temperature, the battery voltage and the battery current. The return value of the code (see below) for voltage and batteryTemperature is always 0 while the others work. I would like to know if there's any other way of obtaining this information and how. Finally, I couldn't find anything in the API for accessing the battery current... Is there any method to know its value? Code...
View 3 Replies
View Related
Jul 28, 2009
I have different text packaged into my app for different locale. The Resource.getString(int resid) method automatically returns me the string for the CURRENT locale of the phone. Is there a way I can specifically obtain resources while passing in a locale? For example, there isn't such method as: Resource.getString(int resId, Locale myLocale);
View 3 Replies
View Related
Jun 25, 2010
I'm developing an image editor for android. In the main activity, I get to show all images by viewing the thumbnails to make the process faster. The problem it's that I need to process the image later and I would get the normal image ID (with the original size, which I think is in MediaStore.Images.Media). I can't get the form of the query. The code that I have is the following but I can't obtain the real image ID (in the IDImage variable) code...
View 4 Replies
View Related
Jul 28, 2010
In the licensing documentation the android developers mention an easy way to more or less securely identify an android device. They are using android.Settings.Secure.ANDROID_ID.
They say they query the system settings for this. But they don't explain this any further.
How do I obtain the android_id and do I need special permissions for doing so?
View 1 Replies
View Related
Aug 27, 2010
I have setup 2 test contacts in my emulator.
I'm running the following query, it should pick them both out, populate my domain object, and add to a list. The output at the bottom should therefore be 2, but it is 5, why is this? (cursor.getCount() is 5 instead of 2)
I have stepped through each iteration of the while loop and it is retreving the same contact multiple times, but with different values for POSTCODE, such as the phone number
CODE:..................
View 1 Replies
View Related
Oct 1, 2010
My program will show data based on selection from two spinners (month and year). Based on month and year, it will query DB and displays the content in listview.
I created two spinners and populate with array string. Then I created two spinner views, two arrayadapters and set onItemSelected listeners and set adapter to the views. Then I use cursor to get query from DB, then put the result into simple cursor adapter and put them into list adapter. Finally I use list view to add this listadapter. Result shows properly. It is OK when the queries is not too much. But when there are lots of queries, it is difficult to see. So I want to implement paging for my program. For example: I get 100 queries, and I want to show them like 10 or 20 queries per page. I can control how many records per page via another spinner.
But the main problem is that I don't know how to get subset data or subview from return queries (listview).
Are there any methods in listadapter or android can do that ? I'm still new in android. I also read some documents about getView(), I don't understand and not sure whether it can help on my purpose.
View 1 Replies
View Related
Mar 11, 2010
I am porting a Python application to Android and, at some point, this application has to communicate with a Web Service, sending it compressed data. In order to do that it uses the next method:
def stuff(self, data): "Convert into UTF-8 and compress."
return zlib.compress(simplejson.dumps(data))
I am using the next method to try to emulate this behavior in Android:
private String compressString(String stringToCompress) { Log.i(TAG, "Compressing String " + stringToCompress);
byte[] input = stringToCompress.getBytes();
// Create the compressor with highest level of compression Deflater compressor = new Deflater();
//compressor.setLevel(Deflater.BEST_COMPRESSION);
// Give the compressor the data to compress compressor.setInput(input); compressor.finish();
// Create an expandable byte array to hold the compressed data.
// You cannot use an array that's the same size as the orginal because
// there is no guarantee that the compressed data will be smaller than
// the uncompressed data.
ByteArrayOutputStream bos = new ByteArrayOutputStream(input.length);
// Compress the data byte[] buf = new byte[1024];
while (!compressor.finished()) { int count = compressor.deflate(buf);
bos.write(buf, 0, count); } try { bos.close();
} catch (IOException e) { } // Get the compressed data byte[] compressedData = bos.toByteArray();
Log.i(TAG, "Finished to compress string " + stringToCompress);
return new String(compressedData);
}
But the HTTP response from the server is not correct and I guess it is because the result of the compression in Java is not the same as the one in Python. I ran a little test compressing "a" both with zlib.compress and deflate.
Python, zlib.compress() -> x%9CSJT%02%00%01M%00%A6
Android, Deflater.deflate -> H%EF%BF%BDK%04%00%00b%00b
How should I compress the data in Android to obtain the same value of zlib.compress() in Python?
View 2 Replies
View Related
Nov 24, 2010
I'm trying to read the available home screen widgets list.
I can populate a grid using the available applications list using
CODE:.............
And than iterating through each ResolveInfo. How can I do the same with available Home screen widgets? I'd like to populate a grid with the same list that appears keep touching the screen and choosing 'widget' from the appearing popup.
View 1 Replies
View Related
Aug 25, 2010
I had Sickipedia but had to restore phone. Now I can't get this app on the Market. Is there any solution for this?
View 1 Replies
View Related
Oct 26, 2009
I am developing an application in which a user keeps on scrolling and each view displays a single text. The views are not suppose to end. How can i achieve that?
View 4 Replies
View Related
Jan 13, 2010
I am trying to get the emails from a contact on Android (2.0.1). I canīt get the email. The code...
When I try to get the values of the columns, I get null. How can I obtain the emails? Maybe the CONTENT_URI is not correct or the data is stored in another table and I have to make a join.
View 3 Replies
View Related
May 20, 2010
Does anyone know how to obtain the rounded rectangle effect from this picture? http://developer.android.com/intl/de/resources/articles/images/list_f...
Is it somewhere in samples?
View 3 Replies
View Related
Jul 21, 2010
I am working on a little side project (program for Android platform)and I don't exactly have a problem, but I don't really know where to start. The project I am working on has to do with getting the info and manipulating a pixel's RGB values inside an image. I know this is a very basic program (not going to disclose all the information about the project), but I am a beginning android programmer.
View 1 Replies
View Related
Nov 24, 2010
How can I get crash data (stack traces at least) from my Android application? At least when working on my own device being retrieved by cable, but ideally from any instance of my application running on the wild so that I can improve it and make it more solid.
View 7 Replies
View Related