音声を動画化するウェブサービス

手元の音声ファイルに画像をつけて動画化するウェブサービスを作りました。
Twitter等のSNSで音楽を投稿したい時に便利です。

静止画ムービーメーカー

※著作権の侵害となるファイルの投稿はお控えください。

使い方

1.画像を選択する

  • 動画に使用する画像を選択します。
  • あらかじめ用意されている画像、もしくは手持ちの画像を使えます。
  • 選択した画像はプレビューフレームに表示されます。
  • デフォルトの画像サイズは640×480です。手持ちの画像をアップロードした場合には、縦横の比率を保ちながら640×480以下になるように圧縮されます。

2.音声を選択する

  • 音符のボタンをクリックするとファイル選択が促されますので動画化したい音声ファイルを選んでください。

3.動画化する

  • 「動画化する」ボタンを押すと動画の生成とダウンロードが始まります。
  • ファイルサイズが大きい場合には時間がかかる場合がありますので気長に待ってください。
    ファイル形式はmp4です。

いきさつ

先日、自分で作った音源をTwitterに投稿しようと思ったのですが、どうやら動画はアップロードできても音声はできない様子。

Windowsムービーメーカーを使って音源に適当な画像を組み合わせて動画を作ろうと試みたのですが、なぜが保存がうまくいかない。(うちの環境だけかな?)

他の動画編集ソフトを導入して使ってみるも、画面にソフトのロゴがされたり操作方法が煩雑だったりで、結局目的の動画は作れませんでした。

音声ファイルと画像一枚を合体させたいだけなのに何故こんなにも苦労しなくちゃいけないんじゃ!!!
簡単動画作成♪とのたまうサイトに書いてある手法でも手順が10個以上あるとは何事じゃ!!!
そもそも専用ソフトのインストールがだるいんじゃ!!!

と憤ってたらこのウェブサービスが出来上がりました。

なお、このサービスは手軽さを重視しているので、エフェクトの追加も、複数の画像の使用も、テキストの追加もできません。
動画の編集を行いたい場合は素直に専用ソフトを使いましょう。

所感

DTMやってる人が製作途中の音源をスマホカメラで録画してTwitterに投稿するのを最近よく見かけます。

製作途中とはいえ、なぜスピーカーの音をスマホマイクで録音した粗悪な音質の動画を投稿するのだろうかと疑問に思っていましたが、そもそもオーディオファイルをTwitterに投稿する手段がないからなのだと気がつきました。
(もちろんDAWの画面や制作環境を見せたいという意図やオーディオの書き出し自体が面倒というのもあるでしょうけど)

そのため、このサービスのメインターゲットは、音楽をやっていて、静止画の動画で構わないから音源をTwitterに投稿したいという人です。
めちゃくちゃニッチですね。

需要があるのかわからないですが、自分が欲しいものは誰かも欲しがるだろうと言い聞かせて作りました。お役に立てたら幸いです。

<メモ>
タイトルとヘッダーがダサいのでいい案が思いついたらなんとかしたい。
用意している画像が無地のものしか無いため、ポップでキッチュでパンキッシュな画像に差し替えたい。(予定ではなく希望)

Share on FacebookShare on Google+Tweet about this on TwitterShare on Tumblr

【50ドルで買えるMIDIキーボード】 AKM320のレビュー

先日、愛用していたMIDIキーボードが壊れてしまいまして、代わりになるものを探していました。

何か良い商品はないかと米amazonを散策していたら$39.19という破格値で売られているAKM320を発見。迷わずカートに入れました。

追加で送料・手数料がかかるため最終的な金額は$49前後になりますが、本体価格でいえば日本で最安値のMIDIキーボード、KORG Micro Key-25に匹敵する安さなのではないでしょうか。

このAKM320は、その安さから入門用としてオススメの機種のようです。(米amazonレビュー情報)

しかし日本では正規輸入は行っていないらしく、情報が少ないようなのでレビューを書いてみました。

基本スペック

鍵盤数:32
鍵盤タイプ:マイクロキー
外形寸法(W)×(D)×(H) 46 × 12.5 × 3 cm
重量:726g
端子:USBタイプB,サスティンペダル
付属品:USBケーブル、説明書

外観

IMG_20161211_142249

IMG_20161211_142230

IMG_20161211_142352

AKM320の特徴

AKM320は基本的な機能であるボリューム、オクターブコントロール、ピッチベンド、モジュレーションだけでなく、トランスポーズという他の低価格MIDIキーボードには無い機能を備えています。

鍵盤の左側に+と-のトランスポーズボタンがついており、+を押すと全鍵盤の音が半音上がり(ドの鍵盤を押すとド♯の音が鳴る)、-を押すと半音下がります(ドの鍵盤を押すとシの音が鳴る)。

このトランスポーズ機能を使うことでどんな調でも白い鍵盤だけで弾けてしまいます。

黒鍵いっぱいの調で作曲なり耳コピをしている時、このキーのダイアトニックコードの○番目はなんだっけ?といった悩むことが多々あったのですが、それが解消されました。

また、ピッチベンド、モジュレーションを行う部分がホイール式になっているのも特徴です。(他の低価格MIDIキーボードではレバー式やボタン式になっていることが多いです。)

ピッチベンドのホイールは回しても手を放せば元の位置に戻るのに対し、モジュレーションホイールは回した位置で固定されるようになっているため、常にモジュレーションをかけたい場合にホイールを触り続けなくて済むため便利です。

余談ですが、私が以前使っていたMIDIキーボードはレバー式で、上下にレバーを倒すとピッチが変わり、左右に倒すとモジュレーションがかかるという一体型の仕様でした。モジュレーションだけをかけたいのにピッチが変わってしまい使いづらかった記憶があります。

 

おわりに

今回は低価格MIDIキーボード、AKM320の紹介を行いました。
米アマゾンで個人輸入するのが一番楽な購入方法というなかなかオススメしずらい商品ですが、コストパフォーマンス抜群の商品であることは間違いないです。

私が購入した時には送料・手数料込みで5700円程度でしたが、円高のタイミングを狙えばもっと安く買えると思います。

ちなみにMAudioのKeystation Mini 32という商品は、同じ32鍵で、Ableton Live Liteがバンドルされていて、国内店舗で買えて、同じような値段で、軽いです。

散々AKM320を紹介しておいてなんですが、Keystation Mini 32も負けず劣らずの魅力的な商品です(むしろ勝ってる?)。

5000円前後で32鍵のmidiキーボードをお探しの方で、今回あげた特徴に魅力を感じる方はAKM320、そうでもない方はKeystation Mini 32を選ぶといいですね。

 

Share on FacebookShare on Google+Tweet about this on TwitterShare on Tumblr

【Pure Data】Raspberry Pi でギターエフェクターを作る その2

前回の記事ではPure Dataのインストールと設定を行いました。

今回はdoitnowlabsさんが作ったこちらのプロジェクトを拝借してラズパイ上で動かします。

作業は以下の通りになっています。

1.プロジェクトのダウンロード
2.スクリプトの書き換え
3.ラズパイ起動時にラズパイエフェクタが自動で実行されるよう設定する

プロジェクトのダウンロード

今回はプロジェクトをデスクトップ上に配置して作業を進めました。これに習ってcdコマンドでデスクトップに移動してください。

次に以下のコマンドを打ってプロジェクトのリポジトリをコピーします。

※コマンドを打ってもgitなんてコマンド知らないよと返されたらsudo apt-get install gitでgitをインストールしてください。

スクリプトの書き換え

ダウンロードしたディレクトリに移動。
cd rpieffectbox

まずははPureDataパッチのserver.pdに記載されているパスを変更します。

を打つとPure Dataが立ち上がるのでパスが記載されているオブジェクトをクリックし

/home/ben/Desktop/rpieffectbox

/home/pi/Desktop/rpieffectbox

に書き換えてください。

今度はmain.pyスクリプトをテキストエディタで開き、パスの部分を修正します。

13行目の

name_file = open (“/ben/Desktop/rpieffectbox/names.txt”)

name_file = open (“/home/pi/Desktop/rpieffectbox/names.txt”)

に修正。同様に16行目を

function_file = open (“/ben/Desktop/rpieffectbox/functions.txt”)

から

function_file = open (“/home/pi/Desktop/rpieffectbox/functions.txt”)

へ書き換えます。

35行目の

subprocess.call(“pd -nogui server.pd &”, shell=True)

を絶対パスに。

subprocess.call(“pd -nogui /home/pi/Desktop/rpieffectbox/server.pd &”, shell=True)

パスの修正が終わったら37行目のwhile True:の直前に以下の二行を追加しておいてください。

sleep(1)
os.system(“echo ‘0 “+ str(preset) +”;’ | pdsend 5000 localhost”)

スクリプトをそのまま実行するとDSPの起動が上手くいかず、ボタン操作でパッチの切り替えを行わないとDSPをオンにできないという現象がありましたので上記のコードを追加しました。

書き換えたらCtrl + X を押した後にY、Enterを押し、上書き保存してファイルを閉じます。

パーツの接続

次にRaspberry Piと各パーツを接続します。

今回使用したパーツは以下のとおりです。

必要なものを購入し接続します。小型ボリューム(可変抵抗)はリード線をはんだ付けしないと使えないので注意です。はんだ付けの方法は過去記事を参考にしてください。

配線はプロジェクトフォルダ中にある配線図Rpieffectbox.pngを参考にしました。いまいち読み方がわからなかったので一部自分がやりやすいように手を加えています。

実際の写真。ごちゃごちゃ

えふぇくた

図示したもの。スッキリ。

rpieffectbox_ブレッドボード

上の図に従って配線を進めてください。

図ではツールの都合上幅の広いブレッドボードを用いていますが、実際に配線する際にはパーツ同士の間隔を詰めれば小さなブレッドボードでも配線可能です。

スクリプトの動作確認

最後にちょちょいとRaspberry Piの設定の変更をしてスクリプトを動かします。

まずはSPIを使用できるようにします。
GUI上で Menu > Preferences > Raspberry Pi Configuration を開く。
Interfaceタブに切り替え SPI の Enabled のラジオボタンを選択してOKをクリック。
次に以下のコマンドを打ってディスプレイ表示に使用するコンソールのパーミッションを変更します。

※今回はディスプレイは使用していないのですが、パーミッションの変更を行わないとスクリプトがエラーを吐くためこの工程が必要となります。

これで準備が整いました。スクリプトを実行してみましょう。

問題なく動作していればギターやマイクから入力した音がスピーカーに出力されるはずです。

ラズパイ起動時にエフェクタを自動実行

LinuxベースのOSでは起動時に指定したスクリプトを自動実行する仕組みがあります。
これを使ってラズパイの電源を入れたらmain.pyを起動させ、マウス、キーボード、ディスプレイ無しでもエフェクターとして機能するよう手を加えていきます。

以下コマンドで設定ファイルを開き、

末尾に以下の行を追加。
python /home/pi/Desktop/rpieffectbox/main.py &

これで端末起動時にmain.pyが実行されます。
ちなみに最後の&はバックグラウンドで実行させるためのオプションらしいです。

使い方

左のボタン:ひとつ前のエフェクトに切り替える
真ん中のボタン:パラメータ入力 これを押すことでつまみによるパラメータ調整が可能になる。
右のボタン:ひとつ次のエフェクトに切り替える

四つのつまみ:ひねるとエフェクトのパラメータが変化する。どのつまみが何のパラメータに対応するかはエフェクトによって異なるため、プロジェクト内のfunctions.txtを参考にしてください。

エフェクトの種類

今回利用させていただいたプロジェクトには15種類のエフェクトが用意されています(クリーンを含めると16種)。
エフェクト名および各パラメータとつまみの対応はプロジェクト内のテキストファイルに書かれていますが、いちいち参照するのも面倒だと思うのでここに記載します。

番号 エフェクト名 パラメータ
1 Clean Non Editable
2 Chorus Fdbk,Depth,Speed
3 Warble Chorus Fdbk,Depth,Speed
4 Tremolo Spd,Shape,Depth
5 Vibrato Depth,Speed
6 Wah MaxF,MinF,Speed
7 Ring Modulator Pitch
8 Low Fuzz Wah MaxF,MinF,Speed
9 Med Fuzz Wah MaxF,MinF,Speed
10 Hi Fuzz Wah MaxF,MinF,Speed
11 Ring Mod Fuzz Pitch,Boost
12 Fuzz Boost,Tone
13 Subtractive OD Gain,Tone
14 Tube Screamer Gain
15 Digital Delay DlyTime, Repeats
16 Tape Echo DlyTime, Repeats

 

おわりに

これにてラズパイエフェクタの制作方法の紹介はおしまいです。

用意されているエフェクトは15種類ですが、パッチを用意すれば好きなだけ自分好みのエフェクトを拡張できちゃうのがこのエフェクターの魅力ですね。

パッチを探すor作る熱意がある人はマルチエフェクターなんて買わずともこれ一台であらゆるエフェクトをかけれられちゃう。超コスパいい!

ただ、市販のエフェクターを使ったことすらないズブの素人なので音質とか機能性とかはちゃんと評価できてません。ごめんね。

信頼性についてはあまり期待しないほうがいいです。はんだ付けが甘いとパーツが外れますし、スクリプトがフリーズすることもまぁまぁありました。無論ライブには使えません。

とはいえお遊びの範囲内でならとても楽しいおもちゃになりますので是非作ってみてはいかがでしょうか。

Share on FacebookShare on Google+Tweet about this on TwitterShare on Tumblr

可変抵抗にリード線をはんだ付けする

ラズパイでギターエフェクターを作るにあたって可変抵抗が必要となったのですが、可変抵抗は自分でリード線をはんだ付けしなければいけません。

やってみれば大したことはないのですが、ネット上には作業工程を写した画像が少なく、最初は不安に駆られながらの作業となりました。

そこで今回は可変抵抗にリード線をはんだ付けする方法を画像てんこもりで懇切丁寧にご紹介します。

初歩の初歩すぎる情報かもしれませんが、自分が悩んだということはきっと他にも同じ悩みを持つ人がいると思うので、その方々のお役に立てればと思います。
(電子工作系のブログって大抵が中級者向けで、右も左もわからない初心者には難しい書き方が多いですよね…)

準備するもの

※リンクは今回使用した商品です。同一のものでなくてもかまいません。

IMG_20160731_142645

※リード線、熱収縮チューブは適当な長さにカットしています。

リード線のビニールを剥がす

リード線のビニールをはがすところから始めます。使用するのははさみでもカッターでもなんでもいいですが、ニッパーやビニール剥き専用アイテムを使うと楽らしいです。そんなしゃれたものは家になかったので今回はカッターを用いました。

まずは中の金属線を切ってしまわぬように程よい力加減でビニールに切り込みを入れます。

IMG_20160731_143145

切込みが入ったら先端をつかみ、

IMG_20160731_143205

するっと抜きます。

IMG_20160731_143228

反対側の端っこのビニールも同様にして剥がします。

以上のようにして先端をはがしたリード線を3本用意します。

IMG_20160731_151512

可変抵抗とリード線をはんだで固定する

可変抵抗は左の端子に電源、右の端子にGNDをつなぎます。この状態でつまみを回すことで真ん中の端子の抵抗値が変化します。

IMG_20160731_143440

それでは先ほど用意したリード線を可変抵抗に取り付けます。

IMG_20160731_143417

リード線の金属部を可変抵抗の端子に巻き付けてください。金属の部分が触れ合っていれば問題ないようなので巻きつけ方は雑でも構いません。

余談ですがど素人の自分はリード線を上側の丸い穴につなげるのか下側の四角い穴につなげるのかがわからず小一時間ほど悩みました。

端子にリード線を巻き付けたらはんだごてを用意し、端子の穴を埋めるようなイメージではんだを流し込みます。

※もしも可変抵抗の動作確認をできる環境があるのであれば、はんだで固定する前にリード線を巻き付けた状態でテストしたほうがいいかもしれません。せっかくはんだ付けしたのに壊れてた、うまく動かなったとなったら悲しいので。

IMG_20160731_154413
IMG_20160731_154418

 

 

 

 

 

 

 

 

 

リード線の反対側はブレッドボードに刺して使うのですが、金属線は6本1セットとなっているため刺しづらく千切れやすいです。この問題を解決するためはんだでコーティングしました。

これを

IMG_20160731_155531

こう。

IMG_20160731_155604

作業中は手がふさがっていたため写真は撮れませんでしたが、こての先端をはんだを少し乗せた状態にし、なでるようにしてリード線の上を這わせればうまくいきます。

以上の手順を他2つの端子で行います。

 

熱収縮チューブを取り付ける

この工程は必須ではありませんが、端子同士の誤接を防ぐためやっておいたほうが良いようです。

熱圧縮チューブを短く切り、可変抵抗の端子を覆うようにはめます。

その後ドライヤーなどで熱を当て、収縮して固定されたら出来上がりです。
IMG_20160731_161650 (1)

 

(はんだ付けが汚すぎてチューブが役目を果たし切れていません。)

おしまい

今回は可変抵抗にリード線をつける方法についてご紹介しました。この作業を通じて、電流が流れさえすれば接続が多少雑でも動作することがわかり、電子工作に対する心理的ハードルが少し下がった気がします。この調子で作業を進め、とっととラズパイエフェクタを完成まで持っていきたいです。

Share on FacebookShare on Google+Tweet about this on TwitterShare on Tumblr

【Pure Data】Raspberry Pi でギターエフェクターを作る その1

この動画に触発されてラズパイでギターのエフェクターを作ってみました。(動画ほど本格的じゃないです)

PureDataというリアルタイムでの音声信号処理が得意なツールをラズパイ上で動かして実装しています。

機器は以下のようにつながっています。
ギター—シールド—ステレオ標準⇔ステレオミニ(3.5mm)変換プラグ—サウンドカード—Raspberry Pi—サウンドカード—スピーカー

参考サイト

https://guitarextended.wordpress.com/

ラズパイエフェクターだけでなくArduinoでフットスイッチまで自作してしまった人のサイト。
PureDataの様々なtipsからラズパイのセットアップまで幅広く丁寧に解説しているので英語が得意な人はこちらを参考にした方がいいかも。

https://github.com/doitnowlabs/rpieffectbox

さっき紹介した動画のプロジェクト。
詳しい人は中身をクローンして自分用に書き換えちゃいましょう。

Raspberry Piの準備

私はRaspberry Pi2 modelBを使用しましたが、参考サイトではRaspberry Pi Type Aを使用していたので旧型でも問題なさそうです。

OSはRaspbianです。セットアップ方法はググればいくらでも転がってるのでそちらを参照してください。

OSのバージョンが古いと必要なツールのインストールが出来なくなるので以下のコマンドで最新の状態に保っておくことをお忘れなく。

サウンドカードの準備

ラズパイには音声入力用の端子が無いためUSBサウンドカードを用意しましょう。

今回は以下の商品を購入しましたが、E-MU 0404 USBなどのもっと本格的なオーディオI/Fも利用できるようです。

ただし相性があるらしいので動作確認済みのサウンドカードを購入するのが無難です。(手持ちのTASCAM US 144-mk2は動作しませんでした。)

サウンドカードが用意できたらラズパイに差し、入力端子にギターのシールドやマイクを、出力端子にヘッドホンやスピーカーを接続します。

ギターのシールドは一般的に6.3mmの標準プラグであり今回用意したサウンドカードの端子とはサイズが合わないため、3.5mmミニプラグへ変換するをかませました。

 

 

 

Pure Dataのインストールとオーディオ設定

まずはターミナルで以下のコマンドを打ってPureDataとライブラリをインストールしましょう。

インストールが終了するとGUIメニューの『サウンドとビデオ』のところにPureDataが追加されるのでクリックして起動します。

Media > Audio Settingsを開き、【Input device】と【Output device】を『USB Audio Device(hardware)』に変更します。

setting

これで音声の入出力をサウンドカードで行えるようになりました。

きちんと動作しているかを確認するために Media > Test Audio and Midi を開きます。

TEST TONESの60または80にチェックを入れるとサウンドカードに接続されているスピーカーから440Hzのサイン波が再生されます。

また、入力デバイスから正常に音を拾えていればAudio Inputの値が小刻みに変化します。

両者とも問題なければPure Dataでのサウンドカードの設定は完了です。

test

Pure Dataのパッチを作る

Pure Dataの基本的な使い方についてはこちらのサイトが参考になります。かの有名なこじ研です。

こじ研(小嶋研究室) Pure Data 入門
http://www.myu.ac.jp/~xkozima/lab/avmed-pd1.html

PureDataのメニューバーからFile > Newを選ぶと真っ白なキャンバスが現れます。

Ctrl+1をして長方形のオブジェクトを作成し、その中に「adc~」と入力します。
もう一度オブジェクトを作り今度は「dac~」と入力。

「adc~」オブジェクト左下の小さな四角をクリックし、そのまま押し下げて「dac~」オブジェクト左上の小さな四角につなぎ合わせます。

2016-06-25-130305_1776x952_scrot

「adc~」はサウンドカードからの信号入力、「dac~」はサウンドカードへの音声出力を意味しており、このパッチでは入力された音声をそのまま出力しています。

Pure Dataを用いたエフェクタは基本的には「adc~」と「dac~」の間に様々な処理を挟むことで実現しています。

以下のサイトではファズ、ディレイ、ワウワウのパッチを公開しているので眺めてみたり、ダウンロードして実際に使ってみるとPureDataとはどんなものかがなんとなく理解できると思います。

パッチはメニューバーの File > Openをクリックすると開けます。

Pure Data Lesson
http://puredatalesson.blogspot.jp/2014/05/5.html

他のエフェクトもググればパッチが見つかるので必要に応じてダウンロードしましょう。

自分だけのオリジナルエフェクタ作りに挑戦するのも面白いですね。

おわりに

ラズパイを使ってギターの音に対してエフェクトを掛ける方法についてご紹介しました。しかし、これだけでは毎度毎度GUIからPureDataを起動しパッチを開く作業が必要なため、実用性に乏しい上に面倒です。

そこで、次の記事ではボタンを押すだけでエフェクトを切り替えてディスプレイ無しでも操作できるように改良したいと思います。

Share on FacebookShare on Google+Tweet about this on TwitterShare on Tumblr