2013-07-13 24 views
6

Resim 10 API kullanılarak alındığında kendi sesim olmasını istediğim özel bir camera uygulamasına sahibim. play my sound'u içeren aşağıdaki kod var, ancak aynı zamanda varsayılan kamera sesini de iyi, sadece kamera sesimi çalmam ve varsayılan olanı değil. onShutter() sonra aşağıdakileri yapın onPictureTaken() daha sonra onShutter()Özel obtüratör sesine sahip fotoğraf makinesi

üzerinde media.start() aramadan önce

//takes picture 
    mCamera.takePicture(myShutterCallback, myPictureCallback_RAW, myPictureCallback_JPG); 

    ShutterCallback myShutterCallback = new ShutterCallback() { 

    @Override 
    public void onShutter() { 
     MediaPlayer.create(SecondCamera.this,R.raw.camera_click).start(); 
    } 
}; 

cevap

7

bu deneyin,

if (android.os.Build.VERSION.SDK_INT>=android.os.Build.VERSION_CODES.JELLY_BEAN_MR1){ 
     camera.enableShutterSound(false); 

} 
else{ 
     AudioManager audio= (AudioManager)this.getApplicationContext().getSystemService(Context.AUDIO_SERVICE); 
     currentVolume=audio.getStreamVolume(AudioManager.STREAM_SYSTEM);    
     audio.setStreamVolume(AudioManager.STREAM_SYSTEM, 0, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE); 
     MediaPlayer media= MediaPlayer.create(SecondCamera.this,R.raw.camera_click); 
     media.setAudioStreamType(AudioManager.STREAM_NOTIFICATION); 
     isVolumeChanged=true;   
    } 

yukarıdaki yapın. Bu yardımcı olur

public void onPictureTaken(byte[] data, Camera camera) { 


     if (isVolumeChanged){ 
      audio.setStreamVolume(AudioManager.STREAM_SYSTEM,currentVolume,AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE); 
     } 
    }  

Umut !!!!!

+0

Paylaşım için teşekkürler, şimdi deneyeceğim – kabuto178

+0

Bu hile yapmak gibi görünüyor, işaretçi için teşekkürler – kabuto178

İlgili konular