Skip to main content

How to create a thumbnail from a video in Android

Recently i had create a thumbnail from a video recorded in an Android Phone. I found out an easy way to create thumbnail using the ThumbNailUtils class.
Code for creating a thumbnail of a Video and saving it in a folder named "online" in the sdcard, in Android:



String path = Environment.getExternalStorageDirectory().getAbsolutePath()+"/online";
File mediaFile = new File(path);
if(!mediaFile.exists()){
 mediaFile.mkdir();
}
File file = new File(mediaFile, "/IMG_"+timeStamp+".PNG".toString());
Bitmap thumbnail1 = ThumbnailUtils.createVideoThumbnail( selectedvideopath,MediaStore.Video.Thumbnails.MINI_KIND );
if (file.exists())
 file.delete();

 try {
  
  FileOutputStream out = new FileOutputStream(file);
  thumbnail1.compress(Bitmap.CompressFormat.JPEG, 90, out);
  out.flush();
  out.close();
 } catch (Exception e) {
  e.printStackTrace();
 }
String fileimg=file.getAbsolutePath().toString();
//fileimg has the path of thethubnail created
ByteArrayOutputStream baos = new ByteArrayOutputStream();
thumbnail1.compress(Bitmap.CompressFormat.PNG, 100, baos);
byte[] imageBytes = baos.toByteArray();
String encodedImage = Base64.encodeToString(imageBytes,Base64.DEFAULT);
//encrypting the image using Base 64.

I hope this post was useful for you.....

Comments

Popular posts from this blog

How to record and save a video in Android

Let's record a video :). Check the code snippet. First need to give necessary permissions. So add these permissions to AndroidManifest.xml   <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />   <uses-permission android:name="android.permission.RECORD_AUDIO" /> MainActivity.java import java.io.File; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; import android.app.Activity; import android.content.Intent; import android.content.pm.PackageManager; import android.graphics.Color; import android.graphics.drawable.ColorDrawable; import android.net.Uri; import android.os.Bundle; import android.os.Environment; import android.provider.MediaStore; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.Toast; public class MainActivity extends Activity implements OnClickListener { Button btn_record; pu

How to create a flash light on Android

I always wonder the use of a flash light on a phone. This simple app is more useful than anything. So here is the code to build a flashlight app, MainActivity.java import android.app.Activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.content.pm.PackageManager; import android.hardware.Camera; import android.hardware.Camera.Parameters; import android.media.MediaPlayer; import android.media.MediaPlayer.OnCompletionListener; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.ImageButton; public class MainActivity extends Activity { ImageButton btnSwitch; private Camera camera; private boolean isFlashOn; private boolean hasFlash; Parameters params; MediaPlayer mp; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // flash switch button

How to implement a fragment in Android

 We can call fragment as a sub activity. By using fragment navigation will more easier and in tabs layouts look cool.Let us see an example..... Here we have 2 fragment class Details, and Detail2. MainActivity.java import android.app.Activity; import android.app.Fragment; import android.app.FragmentTransaction; import android.os.Bundle; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //Here we call the first fragment Fragment fragment = null; fragment = new Options(); FragmentTransaction fragmentTransaction = getFragmentManager() .beginTransaction(); fragmentTransaction.replace(R.id.frame1, fragment).commit(); } } Options.java import android.app.Fragment; import android.app.FragmentManager; import android.app.FragmentTransaction; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View