投稿

ボールペン 低粘度油性 三菱鉛筆 Jetstream

イメージ
ボールペンは三菱鉛筆のシグノRT1があれば十分だと思っているのだが、三菱鉛筆のJetstreamだけは並行して使うかもしれない。その理由は、なめらかな書き味と、油性ならではの速乾性にある。特に赤でチェックするときなどは、このなめらかさは捨てがたい。高速殴り書き用としては最強かも。 本体Jetstream スタンダード 0.7mm 定価150円(税抜) 実売129円(税込) リフィル0.7mm SXR-7 定価100円(税抜) 実売86円(税込) リフィルは想像以上に凝った作り オフィシャルにも解説はあるのだが、インクが切れたところで、その構造を眺めてみた。低粘度ゆえに、普通のボールペンにはない構造になっている。 インクの逆流防止対策には、ボールと金属板を使っている。あまり美しい仕掛けとは思えないのだが、これがもっとも安価な方法だったのだろう。 リフィル内径は同じではなく、ボールをせき止めるためのリブがあったりする。 下写真左が通常の使用時で、ボールは最大限下へ移動していて、インクは普通に下へ流れるようになっている。その際金属板がボールが一定位置より下がらないようにストッパーの役目を果たしている。ボールはゆがんで見えるが完全な球形。 そして右が逆流防止状態で、ボールペンを上に向けるとこうなる。インクの中をボールがゆっくり移動して、筒内の小さい穴を塞いで、インクの流れをせき止めている。 さらに先端のボールはスプリングで、インクが流れ出ないように常にロックしている。低粘度だから、通常のボールペンと同じように何もしないと、何かの拍子にインクが漏れてしまうのだろう。書き出すと、ボールが押し込まれて、インクが出てくるという仕組み。下の写真が分解したところ。スプリングは、かなり繊細で、取り出しはちょっとテクニックが必要。 ボールペンとシャープペンは粗品の定番。このJetstreamも貰って使い始めたという、いつものパターン。こういう優れたペンが貰えることもあるので、粗品も馬鹿にできないわ。 3年ほど使ってみた感想 150416 3年は使っていると思うが、今後も使い続けるかどうかは微妙というところ。 ゲルボールペンに比べ速乾性も優れているので、手軽に使うにはよいと思う。でも

古いダイナミックマイク SANYO

イメージ
実家から貰った古いダイナミックマイク。今はなきサンヨー製。実は、実家で、これを使って歌を録音するようなことを言い出したので、これでは高音質は望めないよと言って、Audixのダイナミックマイクを買った経緯がある。この使えそうもない古いマイクはそのまま引き取ってきたというわけ。分解するとダイアフラムまで見れたので、構造を知るにはよいサンプルだと思えたのだ。 子供のころに見たことのあるマイクなのだが、何かの付属マイクだったのかな? IMP.500Ωと書いてあるので、インピーダンスは500Ωということ。巻き線抵抗値をテスタで測っても482Ωと近い値だった。 通常ダイナミックマイクのインピーダンスは150から600Ωの範囲で作られていて、その違いは感度と音質の差となる。 プロ用のShure SM58などは150Ω(実効値300Ω)のローインピーダンスマイク。感度は低いが、しっかりした音質が得られやすい。ある程度の声量がないとよい結果を出せないマイク。この手のマイクは例外なくバランス出力。 一方カラオケなどの一般用マイクは500から600Ωのハイインピーダンスマイク。感度が上がるが、音質が犠牲になる傾向にある。機器との接続は標準プラグのアンバランス出力だが、マイク側はXLRとかになってるものもある。 重要なのはインピーダンスが違えば接続する機器も違ってくるということ。知識があればインピーダンスマッチングやら配線を細工することで使用することはできるが、この手の機器に詳しくなければ無理な話。にもかかわらず、世の中さまざまなマイクが流通していて、ろくな説明もないまま売られている。見た目だけでは違いが分からない。また接続するだけで壊れるようなものもあるので恐ろしい。 このマイク、JAPANと書いてあるので日本製。 ON/OFFスイッチ。配線は信号線とGNDだけ。トランスなどは入っていない。 ダイアフラムを直接見ることができる。 このマイクは構造的に無指向性。そういう意味では割りと距離に関係なく、素直な音が録れそうな気がする。 古い割りに損傷もなく、使えそうな雰囲気。 サンプル 電気的には問題がなさそうなので、ためしに録音をしてみることにした。ノートパソコンThinkPad

シャープ替芯 0.5mm
三菱鉛筆 Nano Dia (ナノダイヤ) 2B & B

イメージ
0.5mmシャープペンはほとんど使わないがよく貰う。 使わない理由は芯が気に入らないから。細いため折れやすいし、折れないようにポリマーで硬く作ってあるので、濃く書くには適していない。やわらかい芯を使うと、さらに折れやすい。また書くたびにキュッキュと音がして気持ち悪い。個人的には筆圧軽めで濃く書きたいのだ。 家の中には貰った使わない安物シャープペンがゴロゴロしているのだが、貰ったときに、試し書きぐらいはしている。最近uniの0.5mmを貰ったので、書いてみたら、芯が結構よい印象だった。普通HBが入っていることが多いと思うのだが、Bぐらいの濃さのような気がする。 良いと思えた点は、書いたとき音があまりしない。スムーズに一定の濃さで書ける。結構濃く書ける。またBにしては折れにくい印象。これなら使ってもいいかもと思える出来だった。ちなみに芯の硬さの表記(B,HBなど)と、実際書いたときに色の濃さは違うので注意が必要。 とりあえず2Bを買ってみる 三菱のシャープペンだから、当然自社の芯を入れているだろう。普及タイプの芯だろうから、ナノダイヤという芯だろうと予想してみる。シャープペンのBだとちょっと硬い印象があるので、2Bをチョイスしてみた。 三菱鉛筆 uni NanoDia 替芯 uni0.5-202ND 0.5mm 2B 長さ60mm 40本入 定価200円(税別) 購入価格税込 170円(2013年10月) 各太さの芯 定価200円(税別) 0.3mm 2H H HB B 2B 15本入 0.4mm 2H H HB B 2B 30本入 0.5mm 4H 3H 2H H F HB B 2B 3B 4B 40本入 0.7mm H HB B 2B 40本入 0.9mm H HB B 2B 36本入 シャープ替芯のケースって、無意味に凝っている。他にやることはないのだろうか? ケースのデザインがかっこいいと売り上げが上がるのだろうか? なんかちょっと無駄な感じはするが、ケース側面のねじれのラインはかっこいいとは思う。でもケースに惚れて買うことはないだろうけど・・・ 裏面はちょっとした説明がある。この日本語ちょっと違和感あるわ。食品関係と役所文書でも違和感のある文が多いのだが、メーカーはもう少し気を使った

7ヶ月振りにギターを再開してみる

昨年末にギターを始めた子供の話。今年の春休みぐらいまでは、コツコツ練習していたのだが、その後は勉強優先で、ほとんど触れなくなってしまった。たまに少し弾くこともあったのだが、無視してもよいぐらいの時間しか弾いていない。このままでは、今までの努力が無駄になりそうだ。また特技もあったほうがよいということで、練習を再開してみることに。 久々に練習してみると コードは意外と忘れていない。よほど難しいコードでなければ、大抵すぐに押さえられた。これは救い。また練習した曲のコード進行も結構覚えている。演奏は下手になっていない。う~ん。記憶力とか、大人とは違うかもしれない。これなら以前やったことを繰り返しやる必要はなさそうだ。先に進めそうなので、多少は安堵。重要なのはなるべく練習を続けることだわ。肝心な「やる気」は「中」というところか。自由自在に弾けるようになれば、やる気は上がって行くだろうか? とりあえず課題は以下のようなところ。小難しい技は一切やるつもりはない。コード弾き主体で、リズムを刻むことに集中したい。 課題1 テンポ 簡単なコード進行でいいので、一定のテンポで弾けるようにする。メトロノームを使って、ひたすらやるしかない。特に曲になると、盛り上がるところでテンポがアップしてしまう。 課題2 リズム 強拍と弱拍をパターンにして正確に弾くことで、リズムが生まれてくる。かなり微妙なコントロールが要求されるし、それを繰り返し再現し続けるのは簡単ではない。やらせてみると、どうも全体的に強く弾きすぎる傾向にある。強く弾くと音が濁ってやかましいし、音のバランスも崩れてしまう。本来は力を抜いて軽めに弾くことで、長時間安定した演奏ができるようになる。また楽器ごとに一番よく響く音量というのがあるので、それを知ることも重要。 とりあえず弱く弾く練習をしてみる。弱く弾いても結構聞こえるもの。最小の音量から一番よく響く音量までを組み合わせてリズムを作り出す。これは難しいなぁ。気長にやりましょう。 課題3 8分音符、16分音符、3連符 16分弾きはちゃんとやっていないので、この練習も始める。3連弾きは奥が深いので、まずはジャストを安定して弾く練習からかな。 課題4 単音弾き&アルペジオ ソロギターは今のところやるつもりはないが、アルペジ

基礎英語1の並無(ならむ)役は Diana Garnet さん?

イメージ
子供が基礎英語1を聞いているのだが、そのストーリーの中に、並無(ならむ)というキャラがいる。声になかなかインパクトがあるので、誰かな? と以前から思っていた。また声質から春野夢、猫のミッシーというキャラも演じている可能性あり。でも教材テキストにもオフィシャルにも声優が書かれていない。どういうことだ? NHK。かろうじてテキストに写真がある。手前の女性3人のうち誰かが並無役だが、右はキコなので、左か中央の女性となる。(調べ終わってから、よくよく見たらテキストに小さく書いてあった。何役かは定かではないが、Diana Garnett の名前を確認。ttになっているが同一人物だろう。) ネットにもストレートな情報はない。こうなると余計に知りたくなる。しばらくネットで情報収集。その結論としては、声質頼りに、おそらくDiana Garnetさんという人。テキスト写真の左の女性。知らなかったが、歌がうまい外国人としてかなり有名な存在になっているようだ。TVでグランプリに輝き、この10月にデビューも決定している。何曲か聽いてみたが、発声が半端なく凄くて、何を歌っても完璧。それに声質がやっぱりいいわ。それにオタクぶりもすごいなぁ。アニソンばかり。この発声で並無があったわけだ。春野夢のアニメ声もこういうところから来ていたのか。納得。 オフィシャルはここ。 http://www.dianagarnet.jp/

Audacity built-in effects
基礎的なDelayを作ってみる

イメージ
今回作ったディレイの内容は下のブロック図と同等。以前 LADSPAで作ったディレイ とほとんど同じ。ただDryはボリュームではなくチェックボタンによるON/OFFだけにした。またアルゴリズムは新たに考えて実装してみた。簡単なディレイではあるが、いろいろな考え方で作ることができるので、頭の体操にはよいと思う。試しに子供にもアルゴリズムを考えさせたら、数分で書き上げてしまった。今回載せているプログラム内容とは違うが、なかなか素晴らしいアルゴリズムだった。 このディレイはディレイタップ長のリングバッファを使ったオーソドックスなもの。ちなみにAudacityのEchoというエフェクトを覗いてみたが、随分と考え方が違うと思えたよ。人の真似をするのは面白くないので、今後もアルゴリズムはすべてオリジナルにしたい。 インターフェイスはシンプルで、数値を入力するタイプ。DecayはdBにした。Audacityの多くのエフェクトはリニア単位でどうも使いにくい。一般的にはdBだと思うのだが。 下は適用例。上段がオリジナルで下段がディレイを適用したもの。 ディレイの考え方はいろいろ。個人的にフィードバックは数ではなく、無限に繰り返すものとしたい。AudacityのNyquistは数指定が基本のようだ。これには違和感を感じる。また標準エフェクトのEchoはDecayとfeedbackが一緒に扱われてしまっている。あとDryをOFFにできないものも多い。以前 Javaで作ったディレイ は、欲しい機能を吟味したもの。今回も同じ内容で作ろうかと思って中見たら、複雑だったので断念。もう少しAudacityの仕様について学習が必要だわ。慣れてきたら、ステレオ対応やら、HPF、LPFを追加して実用的にしようと思う。 /* NamagiDelay.h 131006 */ #ifndef __AUDACITY_EFFECT_DELAY__ #define __AUDACITY_EFFECT_DELAY__ #include &ltwx/dialog.h&gt #include &ltwx/checkbox.h&gt #include &ltwx/intl.h&gt #include "SimpleM

vim 設定ファイル .vimrc

個人的なvimの設定をここに置いておく。複数のPCでvimを使うのだが、どれが最新だか分からなくなるので。 "~/.vimrc "130920 "モードを表示する set showmode "起動時はIME off set iminsert=0 "syntax on syntax enable "colorschemeの設定 "もしファイルがtxtならnamagiをデフォルト au BufNewFile,BufRead *.txt,*.text colorscheme namagi "それ以外のファイルはnamagi_light colorscheme namagi_light "vimとして使うを宣言 set nocompatible "プラグインをオンにする設定 filetype plugin indent on "C言語用のインデントを有効 set cindent "自動インデント,スマートインデント set autoindent smartindent "検索した文字の設定 set nohlsearch "検索語句ハイライト set hlsearch "カーソル行強調 "set cursorline "マウス有効 set mouse=a "タブ設定 set tabstop=4 set softtabstop=4 set shiftwidth=4 "タブ表示、改行表示など ↲ « » set list set listchars=tab:»\ ,trail:-,eol:↲,extends:»,precedes:«,nbsp:% "行番号表示 set number "ファイル名をwindowに表示 set title "swapファイルを作成しない set noswapfile "BackSpaceを有効にする set backspace=2 "他アプリとのコピペ対応 set clipboard=unnamedplus,autoselect

leafpad 設定

イメージ
leafpadについて leafpad は Lubuntuの標準エディタ。とにかく軽くて高速起動するのが特徴。個人的にソースコードなどを書くときはvimを使うが、内容を確認したいときや、ちょっとしたメモにはleafpadを使うことが多い。素晴らしいのは文字コード変換で問題が起きにくいこと。 フォントは英語のInconsolataに設定しているのだが、表示できない日本語は日本語フォントに置き換えられるので、ソースコードなどは見やすくなる。英語にしてしまうと日本語が文字化けするエディタが多い中で、こういう仕様は助かる。日本語フォントに設定してしまうと、バックスラッシュと円マークが置き換わるので気持ち悪いのだ。 編集機能としては、行番号表示可能で、オートインデントあり、折り返し表示の切替えなどが簡単にできる。また文字の検索、マーカー機能に加えて、置き換え機能などもあり、ちょっとしたプログラムならストレスなく書くことができる。 タブの問題 標準のタブ設定は広すぎて使いにくい。vimではタブを半角4文字に設定しているので同じにしておきたい。これを下記の設定ファイルをいじることで調整した。 /usr/share/applications/leafpad.desktop ルート権限で開くと以下のような内容になっている。 [Desktop Entry] Name=Leafpad Comment=Simple text editor Comment[bg]=Опростен текстов редактор Comment[br]=Embanner testennou eeun Comment[ca]=Editor de text simple Comment[cs]=Jednoduchý textový editor Comment[da]=Enkel tekstbehandler Comment[de]=Einfacher Texteditor Comment[el]=Απλός επεξεργαστής κειμένου Comment[eo]=Simpla tekstredaktilo Comment[es]=Editor de texto simple Comment[eu]=Testu editore sinplea C

Audacity built-in effects
Effect.hを使ったステレオ処理

イメージ
Audacity built-in effects をEffect.hを継承して作ってみる。Effect.hはエフェクトの基本となるクラスなので、制約が少なく自由度が高いが、いろいろ面倒な手続きも必要。SimpleMono.hを使うような手軽さはない。 今回は左右のチャンネルが影響しあうエフェクトを作るための土台を作ってみた。 Audacityの標準エフェクトを調べて作っているのだが、予想以上にトラックの扱いが複雑だった。通常のwavファイルのステレオ処理の方がよっぽどシンプル。ただ Audacity の built-in effects として使うなら、この面倒な手続きを避けては通れない。 プログラムの流れは、ステレオトラックとして認識し、そして左右のチェンネルをバッファに保存して、加工し、最後にバッファから元の場所に戻す。流れとしては素直なのだが、トラックを順に処理していくAudacityで左右チャンネルを同時に扱うというのは意外と大変なのだ。 もともとAudacityのエフェクトは左右のチェンネルが影響するようなエフェクトは殆ど無い。唯一かと思えるのがReverbなのだが、これがなかなか複雑な構造で全体像が見えにくい。まぁそれでも数時間で何とか扱えるようにはなった。 ここまで来れば、あとは好きなようにエフェクトを作ることができる。 今回チェック用に作ったのが下記プログラムで、左右のチェンネルがお互い影響を受けるようにしてみた。内容は、それぞれのチェンネルが他方のチェンネルを任意の比率で混ぜる。パラメータは1.0が100%としている。 適用例として、左チャンネル440Hzと右チャンネル880Hzの合成をやっている。それぞれのチャンネルに100%でブレンド。結果は左右チャンネル同じ波形となる。モノラルの場合は何もしないで終了するようにした。 ソースコードは結構長くなってしまった。 /* NamagiAmp.h 131004 Namagi */ #ifndef __AUDACITY_EFFECT_AMP__ #define __AUDACITY_EFFECT_AMP__ #include &ltwx/dialog.h&gt #include &ltwx/intl.h&gt #incl

Audacity built-in effects Stereo Amp GUI

イメージ
前回作ったモノラルアンプ をステレオ対応にしてみた。左右のチャンネル毎にGainを調整するエフェクト。SimpleMono.hを継承しているので、その名前からしてもステレオ処理には向かないのだが、標準エフェクトのPhaserなどもこのSimpleMono.hを使って左右別の処理を行なっている。どうもSimpleMono.hは、各トラック及び各チャンネルをひとつずつ処理している。トラックはint mChannelというチャンネル情報を持っている。これはTrack.hに定義されていた。 enum { LeftChannel = 0, RightChannel = 1, MonoChannel = 2 }; このような整数で管理している。この情報をもとに、処理しているトラックが左右どちらのチャンネルなのか、もしくはモノラルチャンネルなのか判別できる。SimpleMono.h 継承でステレオ処理する場合は、これを利用することで実現する。 今回のプログラムでは、処理のところで、トラックに右チャンネル情報があった場合のみGainRのパラメータを使うようにした。ということでモノラルトラックの場合は左チャンネルの値を使うという仕様。 ここまで出来れば、それなりのエフェクトは実現できる。ただやりたいのは左右チェンネルの音が入り乱れる処理だったりするので、次はEffect.hを使ってみるか。 上記の設定とは違うが、左右別々に処理できるようになった。 ソースコードは例にならって、NamagiAmp.h と NamagiAmp.cpp に分けている。 /* NamagiAmp.h */ #ifndef __AUDACITY_EFFECT_AMP__ #define __AUDACITY_EFFECT_AMP__ class wxString; #include &ltwx/dialog.h&gt #include &ltwx/intl.h&gt #include "SimpleMono.h" class wxStaticText; class WaveTrack; class EffectNamagiAmp:public EffectSimpleMono{ public:

Audacity built-in effects GUI

イメージ
前回作ったアンプ にGUIをつけてみた。GUIにするだけで、ソースコードは一気に長く、読みにくくなってしまう。GUIの学習は時間のかかる作業で、個人的には楽しくない作業。ただAudacity内でささっと使える魅力はあるので、Audacityの標準エフェクトを参考に、その範囲内で学習を進めてみようと思う。 作っていて分かったのだが、Audacityのビルトインエフェクトは以下の5つのクラスを継承して作られている。 Effect.h AutoDuck.h ChangeSpeed.h ClickRemoval.h Echo.h Equalization.h FindClipping.h NoiseRemoval.h Normalize.h Repeat.h Reverb.h Reverse.h SimpleMono.h Amplify.h Fade.h Invert.h Leveller.h Paulstretch.h Phaser.h Repair.h Wahwah.h TwoPassSimpleMono.h BassTreble.h Compressor.h SoundTouchEffect.h ChangePitch.h ChangeTempo.h Generator.h DtmfGen.h Noise.h Silence.h Generatorは音を生成するもので、それ以外は音を加工したり、音を調べたりするのに使う。選択基準がやや不明なのだが、今回は簡単そうなSimpleMono.hを継承して作ってみた。 ダイアログはシンプルそのもの。GUI部分は wxWidgets が担っているので、これをちゃんと学習すれば、使い勝手の良いGUIも実現できるが、やる気はない。 /* NamagiAmp.h */ #ifndef __AUDACITY_EFFECT_AMP__ #define __AUDACITY_EFFECT_AMP__ #include &ltwx/dialog.h&gt #include &ltwx/intl.h&gt #include "SimpleMono.h" class wxS

Audacity built-in effects Simple Amplifier

イメージ
これから少しAudacityのbuilt-in effectsでも作ってみようと思っている。備忘録として、なるべく簡単なサンプルをここに書いておく。 シンプルアンプ 内容は音系プログラムのHello World。複雑なプログラムを作る前にこういうシンプルなものをいろいろ作って確認することが重要。ダイアログもなく音量も0.5に固定。プログラムはNamagiAmp.hとNamagiAmp.cppの2ファイルから構成されている。SimpleMono.hをオーバーライドして作っている。makeすれば、audacityで実行できる。トラックを選択して適用すれば音量が半分になる。 /* NamagiAmp.h */ #ifndef __AUDACITY_EFFECT_NAMAGIAMP__ #define __AUDACITY_EFFECT_NAMAGIAMP__ #include "SimpleMono.h" class EffectNamagiAmp: public EffectSimpleMono{ public: /* AudacityのEffectに表示される名前 */ virtual wxString GetEffectName(){ return wxString(_("NamagiAmp")); } /* 識別名 */ virtual wxString GetEffectIdentifier(){ return wxT("NamagiAmp"); } /* 実行中に表示される名前 */ virtual wxString GetEffectAction(){ return wxString(_("NamagiAmp...running")); } private: /* 新たに追加した変数 音量 */ float gain; protected: /* 処理する関数 バッファ(ポインタ)と選択範囲(整数)を渡す */ virtual bool ProcessSimpleMono(float *buffer,

Audacity built-in effectsを作ってみる

イメージ
Windows版Audacityを使っていたときは、built-in effects の開発はマイクロソフトのVC++をコンパイル時に使うこと意味していたので、手を出す気にもなれなかった。でも最近になってUbuntu系に移行したので、ようやくチャレンジしてみようと思いはじめる。 Linux版Audacityで利用できるエフェクト開発としてはNyquistやLadspaなどがあるが、パラメータの自由度や設定ファイルの保存など問題があり、どうも好きになれない。そこでAudacityに組み込んでしまうbuilt-in effectsの出番というわけ。標準のエフェクトを見る限り、設定ファイルも保存できるし、かなりの自由度があるように思える。 作るにあたって、わかりやすいドキュメントが見当たらなかったので、既存エフェクトのソースを参考に作ってみる。いろいろ謎の定義があり、それらを理解するにはかなりの量のソースを読まないとダメそうだが、とりあえず理解した範囲でも簡単なエフェクトは実現できた。ビルドすれば下のようにちゃんと表示され利用できるようになった。 下は独自のfade-in/outを適用したもの。標準のfade-in/outが直線で減衰するので自然な減衰にしてみた。内部的にはHanning窓関数を利用している。AudacityにはNyquistのAdjustable Fadeもあって、これと似たようなカーブを描けるのだが、ダイアログが出てくるので操作が面倒。個人的に使用頻度が高いfade-in/outは、ささっと適用したいので作ってみたというわけ。式はこんな感じ。ぶっちゃけcosカーブの半周期分。 buffer[i]*(0.5+0.5*cos(i*M_PI/len)); エフェクトを作るために新たに必要なファイルは2つ。例えばこんなかんじ。 NamagiFade.h NamagiFade.cpp エフェクトはEffectやEffectSimpleMonoなどを継承して作るようだ。ヘッダファイルにクラスを宣言して、ソースファイルにあらかじめあるメソッドに対して、overrideで具体的な処理を書いていくという流れ。音声信号はfloatでやり取りされている。ソースはC++。 コンパイルするためには audacity-sr

Audacity 標準エフェクトの一部を除外してみる

イメージ
標準では表示されるエフェクトが多くて小さな画面では見にくい。そこで使わないエフェクトを除外してみた。以下はGNU/Linux Lubuntuでのソースファイルからインストールする作業となる。 audacity-src-2.0.4/src/LoadEddects.cpp このファイルをいじることで実現する。使わないエフェクトをコメントアウトするだけ。一つのエフェクトに対して2ヶ所修正が必要になる。 その後 audacity-src-2.0.4/ ディレクトリ内でコンパイル、ビルド、インストールを行う。 $ ./configure --with-ffmpeg --with-lame $ make $ sudo make install Audacityを起動してeffectメニューで削除されているかを確認。 Audacity 関係の記事

Ubuntu で python

Ubuntu/Lubuntuを起動してTask Managerを見ると常にpythonが起動していて、18MBぐらいのメモリを食っている。Ubuntuではpythonは欠かせないものらしい。常時起動しているならば、実行環境は整っているわけだし、インタプリタなので、テキストを書けばそれで実行できてしまう。そんなお手軽なpythonを使うのも手だなぁと思い始める。実際pythonで何ができるのかよく分からないのだが、習得が楽なインタプリタ言語ということなので、少しいじってみることにした。 ネットで少し調べてみると、python言語はインデントを使って制御するので、だれが書いても記述が同じようになり、読みやすいというメリットがあるようだ。今までインデントがソースに影響するような言語をやったことがないので、少し興味が出てきた。 まずはHello Worldから ターミナルから直接プログラミングすることもできるのだが、他の言語と同じようにテキストファイルに書くことにした。 hello.pyという名前のテキストファイルを作成して、下の内容を書き込む。 print 'Hello World' ターミナルから実行してみると、Hello Worldが表示される。 $ python hello.py Hello World なんとも手続きの少ないプログラムだろうか。Cなどと比べると、何が起きているのかが掴みづらく思えてしまう。 次は日本語表示 日本語を扱うには下のようにコメントアウトの部分にutf-8を宣言する必要がある。そして日本語出力する前にuを書く。1行目には#!/usr/bin/env python を書いてみた。pythonで実行しますよという意味らしい。すべてコメントアウトされていているので、ちゃんと読まれているのだろうか? utfを宣言しないと日本語ではエラーが出るので読んでいるに違いない。やや謎の仕様だ。ちなみに1行目に「#コメント」など日本語を打つとエラーが起きる。3行目以降なら特に問題なし。pythonのコメントは何かいろいろ約束事がありそうだ。 #!/usr/bin/env python # coding: utf-8 # コメント print u'こんにちは パイソン'

C言語 OpenAL をUbuntuで使う

汎用音声ライブラリである OpanAL をLubuntu/Ubuntuにインストール。 Synapticから libopanal-dev を選択してインストール。 同時に以下もインストールされる。 libopenal1 libopenal-data 全部で519kBと小さめ さらにこれもインストール sudo apt-get install libalut0 libalut-dev 以上で開発環境は整う。Windowsよりも手軽。 コンパイルはWindowsとは少し違う。 gcc test.c -lalut -s -o test 以前windows環境で作ったソースもそのまま利用可能だった。 sound programming 目次

Lubuntu に Vim7.4 をソースからインストール

イメージ
コピペの問題 -clipboard vi(ヴィーアイ)は昔からあるテキストエディタで、大抵どのunix,linuxにもはじめからインストールされている。現在はviから派生したvim(ヴィム)を使うことが多いと思う。Lubuntuに標準で入っているviはvim-tinyというもので最小限の構成。これでは不自由なのでバージョンアップしてvim7.3.429にした。ただ困ったことにvimからテキストをコピーしてクリップボード経由で他のアプリケーションにペーストができない。 $ vim --version |grep clipboardというコマンドで調べると-clipboard となっていて、これが原因らしい。+clipboard になれば癖はあるもののコピペができるようだ。これを解決するにはソースからビルドしてインストールするしかないようだ。ちなみに他のアプリからコピーしたテキストをvimにペーストする場合はINSERTモードで Ctrl+Shift+v もしくは Shift+Insert でできる。 vim 7.4インストール作業 インストール手順は以下を参考にした。 http://vim-jp.org/docs/build_linux.html まずビルドするために必要なパッケージ等をインストールしておく必要がある。以下のコマンドはすべてのパッケージなので無駄が多そう。本当は必要なものだけチョイスしてインストールすればよいのだが、あれこれ試行錯誤する手間が惜しいのでこのまま実行。インストールには約10分かかった。 $ sudo apt-get build-dep vim vimのソースをダウンロード。保存先はカレントディレクトリ/vim。約5分間。 $ hg clone https://vim.googlecode.com/hg/ vim ここからの作業は~/vim/src内で行う。srcはSource codeの略。まずインストールする内容をオプションで設定する。下記がCUI版vimのインストールで+clipboardにするための設定。(実際は改行しない)約3分 $ ./configure --with-x --with-gnome --enable-xim --with-features=big -

LubuntuにAudacity2.0.4をインストール

イメージ
LubuntuのSynapticからのインストールだとAudacityのバージョンは2.0.0と古いため、最新のAudacityのソースをダウンロードしてきて、ビルド、インストールしてみた。 古いAudacityがあればアンインストールする 共存もできるようだが、オプションをうまく設定しないとメニューで重なったりするので、必要がなければアンインストールした方が何かと混乱しない。 ビルドに必要な環境を整える 不足している以下のようなパッケージをSynapticなどからダウンロードする。ユーザの環境が様々なので何が不足するかはreadmeをよく読んだり、インストールしてみて、そのlogで判断したりする。 libwxgtk2.8 (サイズは31MB程度) CMake (libsoxrのビルドに必要) libwxgtk2.8はSynapticからダウンロードした。CMakeは以下のようにターミナルからインストールした。 sudo apt-get install cmake Audacityに必要なライブラリ等をインストールする。 sudo apt-get build-dep audacity Audacityのソースをダウンロード 公式ページからソースファイルをダウンロード http://audacity.sourceforge.net/download/source ダウンロードされたファイルは圧縮されているので、これを解凍する。 audacity-minsrc-2.0.4.tar.xz 解凍すると下の名前のディレクトリが同じ階層にできる。 audacity-src-2.0.4 (DLサイズは5.3MB) Audacityのインストール作業 解凍されたaudacity-src-2.0.4ディレクトリ内で以下を実行してmakeファイルを作る。オプションでMP3やAACのライブラリも付け加えている。 ./configure --with-ffmpeg --with-lame 以下の作業はかなり時間がかかる。古いマシンで30分ぐらいかかった。 make 最後にインストールする。これは10秒程度で完了する。 sudo make insta

sonydbでUbuntuからWALKMAN NW-E044に転送

イメージ
Windowsの使用頻度を減らすためにUbuntuからWALKMAN NW-E044に転送することにした。iPodや一部のWALKMANではUbuntuの標準的な音楽プレーヤで転送可能なようだがNW-E044は無理だった。ネットを探すとやや古いがsonydbというものがあり、これで転送ができるようだ。 インストール環境を整える ソースをダウンロードしてきて、自分でコンパイルする必要があるため、コンパイルに必要な以下のツールが必要。 gcc id3lib autotools 自分の環境ではid3libが入っていなかったので、Synaptic Package Managerからインストール。 sonydbのソースをダウンロードしコンパイル 公式ページ http://mattn.kaoriya.net/software/linux/20071121165107.htm ダウンロードサイト https://github.com/mattn/sonydb sonydb-master.zipをダウンロード これを解凍する。次のコマンドでコンパイル、インストールする。 $ make -f Makefile.gcc 同じディレクトリにsonydbというexecutabeleファイルができる。478KBと小さくNW-E044に入れておいてもいいかもしれない。これをターミナルから起動すれば転送できるようになる。sonydbには下記のようなコマンドがある。とてもシンプルだ。 注意点としては、ハブ経由だとうまく転送できない場合がある。 NW-E044の中身をリスト表示するコマンド。 $ ./sonydb songs 1曲を転送するときのコマンド。 $ ./sonydb songsadd /home/usr/Music/sample.mp3 フォルダ内のすべてのmp3を一度に転送するときはワイルドカードが使える。 $ ./sonydb songsadd /home/usr/Music/*.mp3 NW-E044内の曲を削除するコマンド。下はトラック24を指定。 $ ./sonydb songsdel 24 NW-E044内の複数曲を一度に削除する

半壊した古いノートPCにLubuntu12.04を入れる

イメージ
はじめに インストールするノートPCは、液晶のバックライトが切れ、ハードディスクも壊れている。そこでハードディスクは余っていたものと交換。液晶は直す気はないので、外部モニターに接続することにした。 CPUはPentium-MでPAE(物理アドレス拡張)がなく、最新のubuntuなどのlinuxは入れることが出来ない。調べてみるとubuntu派生の軽量ディストリビューションであるLubuntu12.04がnon PAEに対応していることが分かったので、これをインストール。ちなみにオリジナルubuntu12.04は要PAEだった。どうもカーネルが違うらしい。 8ヶ月ぐらい使ってみて 140508 良い点は、古くて遅いマシンでも快適に動くこと! これに尽きる。windowsXPでは作業するたびに無駄にカリカリとアクセスで待たされていたが、Lubuntuではキビキビと動くので、数倍速いPCと同じぐらいの快適さ。これが本来のマシンの速度なのだろう。そういう意味ではwindowsはマシンの足を引っ張るOSということが判明した。使っていると、ほとんどの作業は問題ないが、ネット上の一部のマイクロソフトに依存するコンテンツは当然のように見れない。そんなコンテンツは大抵くだらなので大きな問題はない。また、より快適にしようと手を加えはじめると、情報不足で試行錯誤になることが多く、結構時間がかかってしまうのが難点かな? XPのサポートが切れた2014年4月以降、このページのアクセスが増え続けているので、Lubuntu, Ubuntuへの世間の関心が高まっている様子。個人的には多くの人に使ってもらいたいとは思っていないし、このOSを使いこなせるのは一部のPC好きぐらいだと思う。PCそのものに関心がない人は手を出さないほうがよいと思う。 Lubuntu http://www.lubuntu.net/ LXDE (Lightweight X11 Desktop Environment) を使用していて軽量なデスクトップ。要求されるマシンスペックも低く、RAM 256MB以上、CPU 500MHz以上、HDDも5GBもあればよさそうだ。今回入れるLubuntu12.04のカーネルはLinux 3.2.0-53-generic (i686) この12.