2016年5月29日日曜日

カセットテープデジタル化


Digi Fi No.15付属のDDCを使ってカセットテープをデジタル化する。
といっても、中断していたのを再開するだけ。

■録音
中断前にデジタル化していたファイルは

mobile@mobile-ThinkPad-X201s:~$ ffmpeg -i /media/mobile/FAT32/Sound/Tape/xxx.wav・・・
Input #0, wav, from '/media/mobile/FAT32/Sound/Tape/xxx.wav':
  Metadata:
    title           : SL
    album           : SL
    artist          : ''Y
    genre           : JPop
  Duration: 00:05:28.89, bitrate: 2304 kb/s
    Stream #0:0: Audio: pcm_s24le ([1][0][0][0] / 0x0001), 48000 Hz, 2 channels, s32 (24 bit), 2304 kb/s
とサンプリング周波数が48kHz、量子化ビットが24bit でキャプチャーできているが、今日はうまくいかない。最初からおさらいする。
mobile@mobile-ThinkPad-X201s:~$ cat /proc/asound/Olasonic/stream0
TOWA Electronics Olasonic at usb-0000:00:1a.0-1.2, full speed : USB Audio

Playback:
  Status: Stop
  Interface 3
    Altset 1
    Format: S16_LE
    Channels: 2
    Endpoint: 3 OUT (ADAPTIVE)
    Rates: 96000, 88200, 48000, 44100
  Interface 3
    Altset 2
    Format: S24_3LE
    Channels: 2
    Endpoint: 3 OUT (ADAPTIVE)
    Rates: 96000, 88200, 48000, 44100

Capture:
  Status: Running
    Interface = 2
    Altset = 1
    Packet Size = 243
    Momentary freq = 48000 Hz (0x30.0000)
  Interface 2
    Altset 1
    Format: S16_LE
    Channels: 2
    Endpoint: 2 IN (ADAPTIVE)
    Rates: 96000, 48000
  Interface 2
    Altset 2
    Format: S24_3LE
    Channels: 2
    Endpoint: 2 IN (ADAPTIVE)
    Rates: 96000, 48000
録音は arecord コマンドでやってみる(が今のところ、フォーマットの指定 -f S24_3LE あたりでうまくいかない)

まずは、録音デバイスの認識
mobile@mobile-ThinkPad-X201s:~$ arecord -l
**** ハードウェアデバイス CAPTURE のリスト ****
カード 0: MID [HDA Intel MID], デバイス 0: CX20585 Analog [CX20585 Analog]
  サブデバイス: 0/1
  サブデバイス #0: subdevice #0
カード 1: Olasonic [Olasonic], デバイス 0: USB Audio [USB Audio]
  サブデバイス: 0/1
  サブデバイス #0: subdevice #0
となっているので、このDDCを -D オプションで
arecord -c 2 -f S24_3LE -r 48000 -D hw:1,0 StardustRevue.wav
のように指定する。
Ubuntuのサウンドの設定で、「入力」ー「サウンドの入力元」にてこのDDCをデフォルトに選択していれば -D オプション は不要。


■サンプリングデータの正規化
サンプリングしたばかりのデータは正規化が必要なものもある。
こちらのサイトを参考にさせていただいた。
http://nico-lab.net/normalize_audio_with_ffmpeg/

 以下、シェルスクリプトにしているが ffmpeg の volumedetect というフィルター?で
ffmpeg -i $1 -af volumedetect -f null /dev/null
 を実行すると、あるデータでは
・・・
[Parsed_volumedetect_0 @ 0x148bea0] n_samples: 31573194
[Parsed_volumedetect_0 @ 0x148bea0] mean_volume: -18.4 dB
[Parsed_volumedetect_0 @ 0x148bea0] max_volume: -1.0 dB
[Parsed_volumedetect_0 @ 0x148bea0] histogram_1db: 835
[Parsed_volumedetect_0 @ 0x148bea0] histogram_2db: 4076
[Parsed_volumedetect_0 @ 0x148bea0] histogram_3db: 12005
[Parsed_volumedetect_0 @ 0x148bea0] histogram_4db: 27239
max_volume の -1.0db 分が正規化の余地あり。(と思う)
そこで、ffmpegの -af "volume=1.0dB" オプションを使う。

ffmpeg -i xxx.wav -af "volume=1.0dB" xxx-2.wav
で、volumedetectすると max_volume とともに mean_volume も 1.0dB 大きくなった。
[Parsed_volumedetect_0 @ 0x148dbc0] n_samples: 31573194
[Parsed_volumedetect_0 @ 0x148dbc0] mean_volume: -17.4 dB
[Parsed_volumedetect_0 @ 0x148dbc0] max_volume: -0.0 dB
[Parsed_volumedetect_0 @ 0x148dbc0] histogram_0db: 835
[Parsed_volumedetect_0 @ 0x148dbc0] histogram_1db: 4076
[Parsed_volumedetect_0 @ 0x148dbc0] histogram_2db: 12008
[Parsed_volumedetect_0 @ 0x148dbc0] histogram_3db: 27231
ただし、なぜか24bitが16bitになったようで、ファイルサイズも約2/3になっていた。
これでは折角24bitでサンプリングしたのが無駄になってしまう。
ffmpegでうまく処理できないか試したが
ffmpeg -i xxx.wav -af "format=S24LE|volume=1.0dB" xxx-2.wav
のように24bitの指定をしつつボリュームをあげようとするとエラーになる。
結局、正規化にはAudacityを使った。
  • メニューの「エフェクト」-「正規化」から最大振幅を0dbに
  • メニューの「ファイル」-「オーディオの書き出し」から、「その他の非圧縮ファイル」をとし、「オプション」から「ヘッダ」を「WAV(Microsoft)」、「エンコーディング」を「Signed 24bit PCM」
 としてやると、24bitのまま正規化できた。
今後、ffmpegでできないか調査する。


2016年5月22日日曜日

Zenfone2のバッテリー持続時間改善

使い始めてバッテリーの減りが物凄く速いのに気づく。

1. 自動起動アプリを少なくする
2. アプリの自動更新をOFFにする
3. CleanMaster ・・・どこかのサイトで紹介されていた。

効果があるか、様子を見てみる

2016年5月19日木曜日

引用の表示をレベルアップ

テスト
テンプレートタグのカスタマイズ。
カスタマイズ画面から「アドバンス」タグの一番下のCSSの追加に、試しのコードをそのまま貼り付けてみる

テスト

http://www.sunabox.net/2012/04/blogger.html


miniXP environment

Hiren's BootCD というliveCDに含まれている「Mini Windows XP」なるものが気になる
libreofficeで表を作って、こちらにコピペ


列1 列2です 列3もいけるかな
a Hiren's Boot CD Mini XP Environment
b 中略
c
右下のセル


後から消すのができない

2016年5月18日水曜日

2016年5月14日土曜日

USBメモリでマルチブート

ここの手順で成功(予定)
http://akkiesoft.hatenablog.jp/entry/20140724/1406191933


mobile@mobile-ThinkPad-X201s:~$ sudo fdisk -l /dev/sdb
Disk /dev/sdb: 1.9 GiB, 2013265920 bytes, 3932160 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xa83c860b

デバイス   起動 Start 最後から セクタ  Size Id タイプ
/dev/sdb1  *     2048  3932159 3930112  1.9G  b W95 FAT32

mobile@mobile-ThinkPad-X201s:~$ sudo dd if=/usr/lib/syslinux/mbr/mbr.bin of=/dev/sdb
0+1 レコード入力
0+1 レコード出力
440 バイト (440 B) コピーされました、 0.643777 秒、 0.7 kB/秒

mobile@mobile-ThinkPad-X201s:~$ sudo apt-get install grub2

mobile@mobile-ThinkPad-X201s:~$ sudo mount /dev/sdb1 /mnt

mobile@mobile-ThinkPad-X201s:~$ sudo grub-install --root-directory=/mnt --force /dev/sdb1
Installing for i386-pc platform.
grub-install: warning: File system `fat' doesn't support embedding.
grub-install: warning: Embedding is not possible.  GRUB can only be installed in this setup by using blocklists.  However, blocklists are UNRELIABLE and their use is discouraged..
Installation finished. No error reported.

mobile@mobile-ThinkPad-X201s:~$ sudo cp /media/mobile/FAT32/Tools/Linux/pmagic-6.7.iso /mnt/boot/iso
mobile@mobile-ThinkPad-X201s:~$ sudo cp /media/mobile/FAT32/Tools/Linux/INSERT-1.3.6_jp.iso /mnt/boot/iso

ライブCDの構成により、grub.cfg の設定内容も変わってくる
下記の設定は次のリンク先を参考にした
http://ubuntuforums.org/archive/index.php/t-1549847.html

sudo nano /mnt/boot/grub/grub.cfg

menuentry "PartedMagic6.7" {
set isofile="/boot/iso/pmagic-6.7.iso" → 変数にセット
loopback loop (hd0,1)$isofile
linux (loop)/pmagic/bzImage iso_filename=$isofile boot=live load_ramdisk=1 prompt_ramdisk=0 noeject noprompt → ①
initrd (loop)/pmagic/initramfs → ②
}
この設定はあらかじめISOファイルの内部の構成を確認しておく。下記でISOファイルをubuntuでマウントして

mobile@mobile-ThinkPad-X201s:~$ sudo mount -o loop -t iso9660 /media/mobile/FAT32/Tools/Linux/pmagic-6.7.iso /mnt/
/mnt 以下の構成を調べると先ほどのgrub.cfg のパスが確かに切られていた。

(loop)/pmagic/bzImage は確かに存在。それ以外のパラメータはよくわからん

(loop)/pmagic/initramfs も存在。

ひとまず、以上の手作業で PartedMagic のISOはUSBメモリでブートできた。

TED

会社の同僚がTEDを見ていた。
早速まねしようとムービーを集める。
Firefoxのプラグインではいつまでたってもダウンロードが始まらないので

https://ted2srt.org/
http://gigazine.net/news/20160122-ted2srt/

を試してみる。
ただ最終的にはFirefoxプラグインが効いた?また試してみることにする。

あと字幕ファイルはhttps://ted2srt.org/  からダウンロードし、MPCなどで再生できるとのこと

Blu-rayディスクへのデータ書き込み growisofs

ThinkpadのWindows7のリカバリデータをUSBメモリ(風のMicroSD)に作っていたのだが、USBメモリからは起動できなかったので、一旦そのデータをバックアップすることにした。
サイズが7.5Gぐらいあったので partimage を使ったりしたが、DVDには収まりきらなかったのでBlu-rayに焼くことにした。
UbuntuのBraseroではうまく動いてくれなかったので調べたところ「growisofs」コマンドを発見。

http://www.a21-hp.com/wp/?p=3749

Ubuntuにはインストール済みだったので


mobile@mobile-ThinkPad-X201s:~$ growisofs -dvd-compat -Z /dev/sr0=ThinkpadX201sWin7.img -use-the-force-luke=spare:none 
Executing 'builtin_dd if=ThinkpadX201sWin7.img of=/dev/sr0 obs=32k seek=0'
/dev/sr0: "Current Write Speed" is 6.1x4390KBps.
    2162688/8018460672 ( 0.0%) @0.0x, remaining 370:39 RBU 100.0% UBU   3.0%
   12976128/8018460672 ( 0.2%) @0.7x, remaining 102:49 RBU 100.0% UBU  97.0%
   29622272/8018460672 ( 0.4%) @1.1x, remaining 58:25 RBU 100.0% UBU 100.0%
   47579136/8018460672 ( 0.6%) @1.2x, remaining 44:40 RBU 100.0% UBU 100.0%
   64880640/8018460672 ( 0.8%) @1.2x, remaining 40:51 RBU 100.0% UBU 100.0%
   82247680/8018460672 ( 1.0%) @1.2x, remaining 36:59 RBU 100.0% UBU 100.0%
で実行できた。8GBで30分くらいかかったか。

出来上がったディスクを確認すると、上記のThinkpadX201sWin7.img ファイル1個が存在するだけかと思いきや、イメージが展開されてファイルシステムが構築されていた。予想外だったが growisofs コマンドなかなか面白そう。