Skip to main content

Turn off camera shutter sound programatically in android

Disable shutter sound while capturing image in android/turn off camera sound programatically/Disable camera sound/mute shutter sound of camera/stop camera  click sound

This can be achieved by mute audio while capturing image. Then enable audio after taking image
package com.example.picture;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import android.app.Service;
import android.content.Context;
import android.content.Intent;
import android.hardware.Camera;
import android.hardware.Camera.Parameters;
import android.media.AudioManager;
import android.os.IBinder;
import android.util.Log;
import android.view.SurfaceHolder;
import android.view.SurfaceView;

public class CameraService extends Service
{
       AudioManager mgr ;
      //Camera variables
      //a surface holder
      private SurfaceHolder sHolder
      //a variable to control the camera
      private Camera mCamera;
      //the camera parameters
      private Parameters parameters;
      /** Called when the activity is first created. */
    @Override
    public void onCreate()
    {
        super.onCreate();
     
        Log.d("Entered","dfdf");
       
    }
    @Override
    public void onStart(Intent intent, int startId) {
      // TODO Auto-generated method stub
      super.onStart(intent, startId);
     
       mCamera = Camera.open();
       SurfaceView sv = new SurfaceView(getApplicationContext());
       mgr = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
       mgr.setStreamMute(AudioManager.STREAM_SYSTEM, true);

     
       try {
                  mCamera.setPreviewDisplay(sv.getHolder());
                  parameters = mCamera.getParameters();
                   
                   //set camera parameters
                 mCamera.setParameters(parameters);
                 mCamera.startPreview();
                 mCamera.takePicture(null, null, mCall);
            
            } catch (IOException e) {
                  // TODO Auto-generated catch block
                  e.printStackTrace();
            }
       
       
       //Get a surface
         sHolder = sv.getHolder();
      
           
         //tells Android that this surface will have its data constantly replaced
         sHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
    }

     
     
    Camera.PictureCallback mCall = new Camera.PictureCallback()
    {
  
       public void onPictureTaken(byte[] data, Camera camera)
       {
             //decode the data obtained by the camera into a Bitmap
     
             FileOutputStream outStream = null;
                  try{
                      outStream = new FileOutputStream("/sdcard/Image.jpg");
                      outStream.write(data);
                      outStream.close();
                  } catch (FileNotFoundException e){
                      Log.d("CAMERA", e.getMessage());
                  } catch (IOException e){
                      Log.d("CAMERA", e.getMessage());
                  }
                  mgr = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
                  mgr.setStreamMute(AudioManager.STREAM_SYSTEM, false);
       }
    };


      @Override
      public IBinder onBind(Intent intent) {
            // TODO Auto-generated method stub
            return null;
      }
}
See more

Comments

  1. It's not work...in LG optimus G, Samsung. gallexy note 1, Samsung. gallexy 2 LTE,,

    ReplyDelete

Post a Comment

Popular posts from this blog

Custom Spinner in Android

Custom Spinner in Android/Spinner using custom adapter/spinner with icon and text  In this tutorial, i'll show you to customizing spinner in different methods.  To change the normal display of spinner view, add background image using the code " android:background="@drawable/myspinner_background" in the xml. You can also make it customizable by setting up an xml file in drawable folder Custom display with icon in the spinner   main.xml <? xml version = "1.0" encoding = "utf-8" ?> < LinearLayout xmlns:android = "http://schemas.android.com/apk/res/android"     android:orientation = "vertical"     android:layout_width = "fill_parent"     android:layout_height = "fill_parent"     >     < Spinner     android:drawSelectorOnTop = "true"     android:id = "@+id/spinner1"     android:layout_width = "match_parent"     and...

Capture image without surface view as background service in android

Capture image without user knowledge in android/Capture image as background service in android/Take photo without preview in android/ Camera without preview in android  package com.example.picture; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import android.app.Service; import android.content.Context; import android.content.Intent; import android.hardware.Camera; import android.hardware.Camera.Parameters; import android.media.AudioManager; import android.os.IBinder; import android.util.Log; import android.view.SurfaceHolder; import android.view.SurfaceView; public class CameraService extends Service {       //Camera variables       //a surface holder       private SurfaceHolder sHolder ;        //a variable to control the camera       private Camera mCamera ;   ...

Progressbar example in android

Progress bar In android, progress bar can be used to tell the user the task takes longer time to finish. Progress  bar displays a bar which represent how far the operations has progressed. Progress bar can be made indeterminate. In indeterminate mode, progress bar shows a cyclic animation without indication progress. In this tutorial, I’ll show how to display a progress bar  package com.example; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.widget.ProgressBar; import android.widget.TextView; public class ProgressbarExamplActivity extends Activity {       private ProgressBar bar ;       private TextView txt ;       protected boolean isRunning ;       /** Called when the activity is first created. */       @Override       public void ...