2010/11/20

カメラのシャッター音の無音化


Last update ; 17/Mar/2012

韓国版Galaxy S(show-m110s)のカメラのシャッター音を無音化しました。

【事前準備】

カメラのシャッター音を無音化する為には、以下のページでご紹介した方法でroot化した上に、PC側にはAndroid SDKを、Galaxy側にはBusyboxをインストールしておく必要があります。

■root化
 http://galaxy-shw-m110s.blogspot.com/2010/11/root.html (Android 2.2.1まで)

■Galaxy S Gingerbread(Android 2.3.3)公式版のroot化とLagfix (Android 2.3.3)
 http://galaxy-shw-m110s.blogspot.com/2011/05/galaxy-s-gingerbreadandroid.html

1)Android SDKのインストール

PC用のソフトウェアです。

下記からandroid-sdk_r07-windows.zipをダウンロードしてください。

■android developers
 http://developer.android.com/sdk/index.html

Zip形式で圧縮されていますので、解凍しておいてください。

2)Busyboxのインストール

Galaxy側にはマーケットからBusyboxをインストールしてLinuxコマンドを追加しておきます。

■Busybox
 http://jp.androlib.com/android.application.stericson-busybox-jqmqB.aspx

ここからの作業途中で何回かSUの権限を聞いてくる画面が表示されますので、都度、Rememberを選択した上でAllowをクリックしてください。


3)カメラ設定ファイルの作成

以下の手順で書き換えるカメラの設定ファイル(data/data/com.sec.android.app.camera/shared_prefs/com.sec.android.app.camera_preferences.xml)はカメラの設定を変更した際に作成されます。

出荷状態ではこのファイルは存在しませんので、一度、カメラの設定を、どの項目でも良いので、変更してから以下の作業を行ってください。

【無音化手順】

コマンドプロンプト([スタート][全てのプログラム][アクセサリ][コマンド プロンプト])から作業します。

adb.exeのあるフォルダに移動し、以下の作業を行います。

1)設定ファイルをPCにPull

$ adb shell
$ su
# cp /data/data/com.sec.android.app.camera/shared_prefs/com.sec.android.app.camera_preferences.xml /sdcard/
# exit
# exit
$ adb pull /sdcard/com.sec.android.app.camera_preferences.xml

2)設定ファイルをPC側で書き換える

PCにpullしたファイルの拡張子を「.txt」に変えてからエディタで開き、「<int name="pref_setup_shuttersound_key" value="0" />」を付け加えます。(この項目が既にある場合はvalueをゼロにします。)

<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map><int name="pref_setup_shuttersound_key" value="0" />
<int name="pref_camera_antishake_key" value="1" />
<int name="pref_setup_storage_key" value="1" />
<int name="pref_setup_review_key" value="1" />
<int name="pref_camera_autocontrast_key" value="1" />
</map>

3)変更したファイルの拡張子を「.xml」に戻し、以下の作業でpushしてGalaxyに戻す

$ adb push com.sec.android.app.camera_preferences.xml /sdcard/
$ adb shell
$ su
# cp /sdcard/com.sec.android.app.camera_preferences.xml /data/data/com.sec.android.app.camera/shared_prefs/
# exit
# exit

これで終了です。トライされる方は自己責任にてお願いします。

追記;

匿名さんからコメントにてご指摘頂いたように、docomo版のAndroid 2.2.1では、設定ファイルは、
/dbdata/databases/com.sec.android.app.camera/shared_prefs/com.sec.android.app.camera_preferences.xmlとなる様です。

一方、韓国版では、2.1、2.2.1、2.3.3 (Gingerbread)の全てで、
/data/data/com.sec.android.app.camera/shared_prefs/com.sec.android.app.camera_preferences.xmlのままとなっています。

また、Galaxy S2のカメラの無音化については以下をご参照下さい。

■Galaxy S2のカメラのシャッター音の無音化
http://galaxy-shw-m110s.blogspot.com/2011/07/galaxy-s2.html

■Galaxy S2(Android 4.0.3)のカメラの無音化 (AF音も無音化済)
http://galaxy-shw-m110s.blogspot.com/2012/03/galaxy-s2android-403.html

4 件のコメント:

  1. 参考にさせていただきました。
    ver2.2.1の場合には

    cp /dbdata/databases/com.sec.android.app.camera/shared_prefs/com.sec.android.app.camera_preferences.xml /sdcard/

    に設定が記録されるようです。
    ありがとうございました。

    返信削除
  2. >匿名さん

    ご報告ありがとうございます。docomo版のGalaxyは、2.2.1になって、設定ファイルの場所が変わった様ですね。
    韓国版のGalaxy SやGalaxy Playerは2.2.1になっても、設定ファイルは従来と同じ場所にあります。

    返信削除
  3. 「1)設定ファイルをPCにPull」の項目でPCにxmlファイルを持ってくる方法が分かりません。

    pullしてPC側の保存先はどうやって指定するのでしょうか?

    ご教授願います。

    返信削除
  4. >匿名さん

    adb pull /sdcard/com.sec.android.app.camera_preferences.xml
    ですと、adb.exeのあるフォルダにpullされます。

    ただ、一度、/sdcard/にコピーしていますので、SDKから操作しなくても、Storageとして端末をPCに繋げば、Windowsのエクスプローラ等でPC側に持ってくる事は出来ます。

    返信削除