logicalyze::blog

Archive for the ‘JavaScript’ tag

HTML5で作られたマルチトラックミキサーの動作実験

leave a comment

h5mixer

久々(約8ヶ月ぶり)の更新になってしまいました。

さて、HTML5で実装されたWebAudio APIを使ったマルチトラック(チャンネル)ミキサーの動作実験をしてみました。

以前、同じようなマルチトラックミキサーをFlashで作った際はFlash単体の機能では動作が厳しいので外部PBJファイルを利用してミキシングの際の演算を行ってました。
が、現在の、HTML5では「WebAudio API」が実装されているので最新ブラウザであればプラグイン無しでも十分動作可能な多チャンネルミキサーを作ることができます。(ただし、ブラウザによって動作状況に少しばらつきがあります)

⇒ テストページはこちら

※デモのオーディオに問題がある場合は、直ぐに削除いたしますのでお知らせください。

Written by admin

3月 30th, 2015 at 3:38 am

この「JavaScript再入門」スライドがおもしろい・・

leave a comment

Twitterの情報から知った、この「最強オブジェクト指向言語 JavaScript 再入門!」と言うスライドがなかなか面白かったのでご紹介します。

切り口もわかりやすいです。(一部指摘もあるようですが・・)

当初用意されてなかったダウンロード用のPDFファイルもあるようなのでスライドシェアサイトへもどうぞ。

最強オブジェクト指向言語 JavaScript 再入門! from Yuji Nojima

Written by admin

7月 10th, 2013 at 4:41 am

Titanium MobileでiPad用のデモを短期間で作ってみた・・・

leave a comment

知り合いから頼まれ、あるコンテンツのiPad用のデモ(モックアップ)を作ることになりました。

で、開発ツールに何を使うか迷っていたのですが、とにかく見せるまでに時間が無いこともあって以下の点が可能なもの:

(1)iPadのネイティブなウィンドウインターフェイスを利用したい(自前で画像等作る時間が無い)
(2)ビデオとテキストを同期したい
(3)複数のオーディオを同時に再生したい
(4)マイク録音をしたい

等々を条件として幾つかの開発ツールの中から選択することにしました。

まず、Objective-C(Xcode)ですが現時点で習熟度が低いことやAndroidがターゲットに変わる可能性もあるので外しました。(短期のモックアップ作成に向いていない)

次に、Flash(AIR for iOS)ですが、ウィンドウにしてもビデオコントロールにしてもネイティブインターフェイスが使えないので、これも外しました。(ActionScriptには慣れているが自前インターフェイスが必要なことと基本的にコード量が多くなる傾向があるため短期に向かない)

次に、Corona SDKですが、これはOpenALやOpenGL(ES)にも対応していてマルチメディア系に強いのですがネイテイブウィンドウインターフェイスはiPhoneのみなので外しました。(何よりもライセンスを購入しないと実機へ転送できないのでデモ作成時点で金銭の発生するものはパス)

そして、最終的に使用することにしたTitanium Mobileですが、これは上記の希望条件をある程度満たしてました。
何よりもゼロから学習を始めてからモックアップ作成まで実質5日ぐらいでできました。
もちろん実装できていない機能やエラーも多々あるのですが下記の画面のようにiPadのSplitWindow(Popoverを含む)インターフェイスを利用したモックアップが簡単にできました。
私自身、これまでActionScript(Flash)を使ったコンテンツをたくさんプログラムしているので同じ言語系列(ECMAScript)であるJavaScriptが分かりやすかったと言うのも多分にあります。

デモ画面

ただし、現時点でゲーム系に弱いので、今後、OpenALやOpenGL(ES)が標準又はモジュールとして提供されればビジネスから2Dゲームまで最も選択肢の高い開発ツールになるのではないでしょうか?
Read the rest of this entry »

Written by admin

12月 16th, 2012 at 5:29 pm

ブラウザ上の言語実行環境「Run This」を入れてみる

one comment

PHPSPOT開発日記のエントリPHP、Perl、Ruby、C、C++等40以上の言語をブラウザで実行できるようになるjQueryプラグイン「Run This」を読んで、コレはと思ったのでさっそく導入してみました。

■ 対応言語
Ada, Assembler, AWK, Bash, bc, Brainf**k, C, C#, C++, CLIPS, Clojure, COBOL, Common Lisp, D, Erlang, Forth, Fortran, Go, Haskell, Icon, Intercal, Java, JavaScript, Lua, Nemerle, Nice, Ocaml, Pascal, Perl, PHP, Pike, Prolog, Python, Python3, R, Ruby, Scala, Scheme, Smalltalk, Tcl, Unlambda, Visual Basic, Whitespace.

■ 主な手順
(1)Run Thisのサイトへ行き必要なファイルをダウンロードする。
ワードプレス用のプラグインもリリースされていたので入れてみましたがうまくいかなかったので通常版をダウンロードしました。(のでプラグインじゃない導入スタイルで)
(2)ワードプレスのヘッダーファイルに必要なリンクを追加する(URLは要変更)

<link rel="stylesheet" type="text/css" href="run_this/run_this.css" />
<script type="text/javascript" src="run_this/jquery-1.3.2.js"></script>
<script type="text/javascript" src="run_this/flensed/deploy/flXHR.js"></script>
<script type="text/javascript" src="run_this/run_this.js"></script>

(3)後は、preタグを使ってコードを記述すればOKです。
記述方法の詳細は、Run Thisサイトの解説をどうぞ。

standalone C example

#include <stdio.h>

int main (int argc, char** argv) {
  printf("Hello World!");
  return 0;
}

これは、結構便利かも・・・

Written by admin

3月 11th, 2010 at 5:40 pm

ランダムシャッフルアルゴリズムが突然注目の的に・・・

leave a comment

EU市場で出荷されるWindows PCには、独禁法の関係上、IEがデフォルトでインストールされていない(インストールされている)ので「Webブラウザ選択画面」(下図)からユーザーが好みのブラウザをインストールすることになります。

で、今回指摘されているのがこの「Webブラウザ選択画面」上の各社ブラウザアイコンの並びです。
本来、選択画面を立ち上げる度にランダムな並びになるはずなのですが、これに偏りがあると言うことでマイクロソフトがJavaScriptで実装したランダムシャッフルアルゴリズムがにわかに注目を集めています。

function RandomSort (a,b)
{
    return (0.5 - Math.random());
}

下記リンク先の記事にコードの詳細も載っていますので気になる方はご覧あれ・・・

このブログでも以前に、配列のシャッフル「Fisher-Yates」シャッフルを目視する、で、ランダムシャッフルアルゴリズムを取り上げたことがありますので気になる方はこちらもどうぞ。

Written by admin

3月 2nd, 2010 at 1:48 am