2017-07

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ニコニコ生放送のコツ

はい皆様お久しぶりの、DJノロやまだです。
最近DJ放送ばっかりやって何やってるんじゃ!と、お怒りの皆様もいらっしゃるでしょうが・・・

さて、音楽系の放送をする場合に悩みのタネが『ニコ生』では音声がモノラルだということ。
そりゃあステレオで送った方が臨場感あります。公式生ではステレオなのに、ユーザ生ではモノラル。

ですが、問題はそれだけではないです。大きな問題が
音声はステレオで入力した場合には左チャンネルだけしか送られていない
ということ。
これはどうもFlashの仕様らしく、ステレオ入力でモノラルを扱う場合には内部でmixするのではなく、単に左チャンネルだけしか送出してないらしいのです。
つまり、パンのきつい音源やパン振ってる音源の場合には、聞いた人がかなり違う印象を受けてしまうのです。こりゃあ、困った。

ただし、これにも良い点があります。
ノートPCなどでDJする場合には普通のサウンド機能でもLをメイン、Rをキューにする
ことで、モニターしながら送出できるっつうわけです。

でまあ、ステレオでも配信しながらニコ生もやりたいって事、多いですよね?ねとらじ併用とかUST併用とか。
となると、単純にオーディオをモノラルにしてしまうわけにはいきません。で、どうするか?

パッシブミキサー

こんな感じの回路を作ります。IN/OUTと書いてありますが、パッシブなので方向はどっちでもかまいません。入出力はRCAジャックが良いでしょう。
下の方にある"TO MIC-IN"の部分には3.5φのステレオミニジャックを使います。センター(L)の部分にだけ配線して、RはNC。

この回路、要するにアッテネータ付きのパッシブミキサー。
どうやって使うかというと、ステレオの放送音声はこれを通して、ステレオ取り込みができるオーディオインタフェースに突っ込みます。もちろん、ステレオで配信するアプリにはそのインタフェースを掴ませます。
次に、ニコ生に送り出す音声はパソコンに(よく内蔵されているはずの)オンボードサウンドのMIC入力に、この回路から繋ぎ込みます。もちろんニコ生の配信画面ではマイクを音声デバイスとして指定します。

こうすることで、左右の音声がmixされたものがニコ生で放送されるので、ちゃんとしたモノラル放送になります。ライン入力の左右をパッシブで混ぜていますが、ライン側から見たインピーダンスは100kΩはあるので、ほとんど影響はありませんし、クロストークもほとんど発生しません。

一点問題があるとすればマイク入力のS/Nが悪いことが多い点ですが、これもまあ気にならないレベルじゃないかと思います。

ニコ生の場合、圧縮の関係で低音が効き過ぎると音がボワンボワンしますので、このボワンボワンにならないギリギリのところまで音量を上げるのがベストです。十分な音圧を伝えようとすると、ちょっと設定に苦労するかもしれません。

実はこのシステムはインターネットテクノDJのイベント、Aset #03でのB2フロアのニコ生と、ねとらじの同時放送で使用していました。なのでB2Fのニコ生の音声はちゃんと左右が混ざったモノラル放送になっています。
スポンサーサイト

お勉強の時間です

今回は少し、お勉強記事を書いてみます。

Arduinoで7セグメントLEDを表示する方法を解説します。
これは例えばAuduinoで選択中のスケール番号を表示させたりするのに使えますね。

まず回路図はこちら。
arduino-7seg.png
この例では『カソード・コモン』の7セグメントLEDを使用しています。アノード・コモンの場合には回路が異なりますので注意してください。
LEDをArduinoに繋ぐ場合には抵抗を介してポートに接続することが多いかと思いますが、ここではトランジスタが追加されている点に注意してください。このトランジスタは7セグメントLEDのコモン側に接続されています。
この理由はArduinoに使用されているATmegaのポートの許容電流のためです。ポートは最大、25mAの電流まで流すことができます。一般的なLEDは流しても10mA程度なのでそのまま繋いでも問題ありません。ところが今回の例のように7セグメントLEDを繋ぐ場合には条件が異なってきます。
ここで使用している7セグメントLEDはカーソード・コモン、つまりマイナス側が共通になっています。もし、このコモン側をGNDに接続し、個々のセグメントを普通に点灯させるだけなら特に配慮は要らず、抵抗を介してArduinoのポートに繋げばOKです。

ところが、7セグメントLEDはその名の通り、中に7つ(ほんとは8つ)のLEDが入っているため、この方法で数字n桁を表示させるには7×nのピンが必要となってしまいます。これでは大変なので、ここで示している例では2桁を表示するために、ふたつの7セグメントLEDを交互にすばやく点灯させて、同時点灯しているかのように見せます。この方法をダイナミック点灯といいます。
ダイナミック点灯の場合には各セグメントのピンとして7(+1)と、各桁の制御にそれぞれ1ピン使用しますので、2桁表示の場合には9(+1)ピンあれば足ります。カッコ内はデシマルポイント(小数点)も考えた場合の数値です。

ですがここで問題が生じます。コモン側を制御するには、コモン側もArduinoのピンと接続してやらねばならないのですが、コモン側には『点灯しているLEDの個数分』の電流が流れます。例えば8を表示している状態では、7つのセグメントが点灯しているため、1セグメントが10mA流れていたとすると、合計で70mAもの電流が流れてしまうために、Arduinoのポートを破損する危険性があります。
そこで、トランジスタを用いることで流せる電流を大きくするわけです。これには専用のIC等を使う手もありますが、2桁程度ならばトランジスタで事足りますし、何といってもトランジスタは安いです。

ではこの回路を使って、LEDに表示するスケッチの例を示しましょう。ここではアナログポートA5にボリュームを接続し、その電圧を0~11の段階表示するものを示しています。

arduino-7seg_pde.txt

これは後でスケール切り替えに流用しようとしているので、こんなプログラムになっています。
数値の処理の部分は追ってもらえばわかると思いますが、各数字の表示はseven_seg_out()が行っています。switch~caseのダサいプログラムでしょ?アセンブラで書けばもっとスマートになるのですが、ここではArduino的に書いてあります。実際、これはプログラムのステップ数をかなり消費します。ですが、それでもこのスケッチのバイナリ・サイズはせいぜい1.5kとArduinoのメモリ容量からすると大したことはありません。
ちょっと工夫しているのがloop内の桁切り替えです。loopが走る毎に1桁目(1の位)と2桁目(10の位)を切り替えています。これは1ループ内で切り替えを行うと、桁毎の点灯時間が均一にならないため、明るさが違って見えるためです。ですので、両方の桁のLEDが点灯している時間が同じになるように交互に切り替えています。

さてこの方法、うまいことやってるのに気付きましたか?このような階段化を行えばボリュームをロータリースイッチ的に使うことができます。私の作ってるステップシーケンサでは表示部分がないので、ロータリースイッチ+抵抗という方法で、この階段化の機能を触感でわかるようにしてありますが、表示機能が付けられる場合には、ロータリースイッチを買わなくてもボリュームでもかまわないわけですね。もちろん、クリック感はありませんけれども。

回路図公開

audino-seq.png

とりあえず回路図を公開。Arduinoって何じゃい?という人はググってください。
Arduino 1個でグラニュラー・シンセとステップ・シーケンサの機能を持たせます。配線がやたらとヤヤコシイのはパネル上に周回配置されているボリュームとLEDが16個もあるため。

ところでこの回路、シンセによくあるゲート制御がありません。なぜか?
ノートをオフりたい場合にはボリュームをゼロにしてしまえばオフになるのが理由のひとつ。もうひとつは、Electribeに接続した場合、Electribe側でクァンタイズ処理が出来るから。発音タイミングが多少ズレてても、ビートに乗せられるので、むしろ音出っぱなしでかまわないわけ。

ただし、ちょっと気になっているのはArduinoの特性上、アドレス(A0~A3)が揃わない状態で出力されること。やっぱゲート回路は要るかなぁとか思ってますんで、追加するかも。

MIDIインタフェースは受信のみ。いまのところマスタとなるElectribeのクロックに同期して動くことしか考えてませんから。MIDIでノート送出が出来れば、音源は内蔵のAuduino以外にも使えるんですが、そこまでこのシステムで出来るかなぁ・・・

MIDI Cutoffのジャンパに注意。Arduinoのシリアル(D0,1)はオンボードのFT232 USB-シリアルと兼用です。このためMIDIのフォトカプラが生きていると、シリアルが使えなくなりスケッチの書き込みに失敗します。なので、書き込み時はフォトカプラを切り離します。

テーマ:音楽 - ジャンル:音楽

«  | ホーム |  »

プロフィール

yamadanohito

Author:yamadanohito
『やまだの人』
ニコニコ動画に「やまだ音楽」シリーズなどを上げています。
Electribeプレイヤーの端っこの方にいます。もともとはESX-1使い。音声処理用に「サンプラーあれば便利じゃ?」と購入。

気が付いたらなぜかEMX-1も家にあったんだぜ!ぐはっ。

最新記事

最新コメント

最新トラックバック

月別アーカイブ

カテゴリ

未分類 (15)
ニコニコ動画 (8)
Arduino (27)
回路図 (3)
スケッチ (2)
Live (6)
ガイガーカウンター (11)

検索フォーム

RSSリンクの表示

リンク

このブログをリンクに追加する

ブロとも申請フォーム

この人とブロともになる

QRコード

QRコード

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。