<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>akalogue</title>
	<atom:link href="http://akamatsu.org/aka/feed/" rel="self" type="application/rss+xml" />
	<link>http://akamatsu.org/aka</link>
	<description>Masayuki Akamatsu / 赤松正行</description>
	<lastBuildDate>Tue, 21 Feb 2012 07:06:29 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Dashcodeでアプリ・アイコン効果</title>
		<link>http://akamatsu.org/aka/2012/02/05/dashcode-app-icon-effect/</link>
		<comments>http://akamatsu.org/aka/2012/02/05/dashcode-app-icon-effect/#comments</comments>
		<pubDate>Sat, 04 Feb 2012 17:05:30 +0000</pubDate>
		<dc:creator>Masayuki Akamatsu</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://akamatsu.org/aka/?p=6123</guid>
		<description><![CDATA[iOSが自動的に付加するアプリ・アイコンの角丸グロッシー効果、もちろん画像編集ソフトでできるんだろうけど、ここでは以前にTwitterで教えていただいたDashcodeでの手法をご紹介。DashcodeはXcodeの一部 &#8230; <a href="http://akamatsu.org/aka/2012/02/05/dashcode-app-icon-effect/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>iOSが自動的に付加するアプリ・アイコンの角丸グロッシー効果、もちろん画像編集ソフトでできるんだろうけど、ここでは以前にTwitterで教えていただいたDashcodeでの手法をご紹介。Dashcodeは<a href="http://itunes.apple.com/jp/app/xcode/id448457090?mt=12">Xcode</a>の一部として提供されているAppleの無料ツールね。</p>
<p><a href="http://akamatsu.org/aka/wp-content/uploads/2012/02/AppIconMaker-1.png"><img class="aligncenter size-medium wp-image-6124" title="AppIconMaker-1" src="http://akamatsu.org/aka/wp-content/uploads/2012/02/AppIconMaker-1-500x422.png" alt="" width="500" height="422" /></a></p>
<p>(1) Dashcodeで新規プロジェクトを作成。<br />
一番シンプルなSafariのカスタムのテンプレートが最適。</p>
<p>(2) ライブラリから四角形をキャンバスにドラッグ＆ドロップ。</p>
<p>(3) インスペクタでサイズを設定。<br />
使用するアイコン画像のサイズに一致させる。ここでは512&#215;512ピクセルとする。</p>
<p style="text-align: center;"><a href="http://akamatsu.org/aka/wp-content/uploads/2012/02/AppIconMaker-2.png"><img class="size-medium wp-image-6130 aligncenter" title="AppIconMaker-2" src="http://akamatsu.org/aka/wp-content/uploads/2012/02/AppIconMaker-2-500x385.png" alt="" width="500" height="385" /></a></p>
<p>(4) インスペクタで塗りつぶしをイメージに設定し、画像ファイルを選択。</p>
<p>(5) インスペクタで角の丸さを設定。<br />
アイコン画像が512&#215;512ピクセルの場合は100ピクセルくらいになる。</p>
<p>(6) エフェクトのガラスを有効にし、パラメータを設定。<br />
　　シャイン：50%<br />
　　　トーン：80%<br />
　　　　水平：50%<br />
　　　　湾曲：-20%</p>
<p style="text-align: center;"><a href="http://akamatsu.org/aka/wp-content/uploads/2012/02/AppIconMaker-3.png"><img class="size-medium wp-image-6131 aligncenter" title="AppIconMaker-3" src="http://akamatsu.org/aka/wp-content/uploads/2012/02/AppIconMaker-3-500x398.png" alt="" width="500" height="398" /></a></p>
<p>iOSでの効果とは微妙に違う気がしないでもないけど、まぁ、そこそこ雰囲気は出てるんじゃないでしょうか。</p>
]]></content:encoded>
			<wfw:commentRss>http://akamatsu.org/aka/2012/02/05/dashcode-app-icon-effect/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>2/11は京都で講演＆対談</title>
		<link>http://akamatsu.org/aka/2012/02/02/0211-kyoto/</link>
		<comments>http://akamatsu.org/aka/2012/02/02/0211-kyoto/#comments</comments>
		<pubDate>Thu, 02 Feb 2012 13:19:04 +0000</pubDate>
		<dc:creator>Masayuki Akamatsu</dc:creator>
				<category><![CDATA[Art]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://akamatsu.org/aka/?p=6111</guid>
		<description><![CDATA[最近はタイムマシンに乗る機会がなかったのですが、久々に京都でタイムマシンします。以前のタイムマシンは電子書籍「リアルタイム映像表現の可能性」の主題でしたね。それから、iOSアプリMirrorscopeはミニ・タイムマシン &#8230; <a href="http://akamatsu.org/aka/2012/02/02/0211-kyoto/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>最近はタイムマシンに乗る機会がなかったのですが、久々に京都でタイムマシンします。以前のタイムマシンは電子書籍「<a href="http://wook.jp/book/detail.html?id=213191">リアルタイム映像表現の可能性</a>」の主題でしたね。それから、iOSアプリ<a href="http://itunes.apple.com/jp/app//id295441508?mt=8">Mirrorscope</a>はミニ・タイムマシン的な時間処理もあるので、こちらもよろしくお願いします。</p>
<p><a href="http://akamatsu.org/aka/wp-content/uploads/2012/02/TimeMachine_movie.jpg"><img class="aligncenter size-medium wp-image-6114" title="TimeMachine_movie" src="http://akamatsu.org/aka/wp-content/uploads/2012/02/TimeMachine_movie-500x280.jpg" alt="" width="500" height="280" /></a></p>
<p style="text-align: center; font-size:small">from the movie &#8220;The Time Machine&#8221;, 1960</p>
<p>日本記号学会分科会　第2回「タイムマシン／タイムトラウヴェル」研究会<br />
<strong>タイムマシン！－－デジタルメディアにおける時間の経験</strong><br />
日時：2011年2月11日　14:30〜<br />
会場：同志社大学今出川キャンパス至誠館S２教室<br />
主催：<a href="http://www.jassweb.jp/">日本記号学会</a><br />
共催：<a href="http://avcs.web.fc2.com/">視聴覚文化研究会</a></p>
<p>報告：岩城覚久（関西学院大学研究員）<br />
講演：赤松正行（情報科学芸術大学院大学教授）<br />
対談：赤松正行×吉岡洋（京都大学大学院文学研究科教授）</p>
<p>概要：2011年1月に第1回「タイムマシン／タイムトラヴェル研究会」が開催された。そこでは、「人文科学の知的見地からのタイムマシン／タイムトラヴェル研究」という目的の下、映画、小説、マンガにおけるタイムマシン／タイムトラヴェル表象に関する議論が重ねられた。つづく第2回「タイムマシン／タイムトラウヴェル」研究会では、射程をさらに広げ、メディア作家赤松正行氏をゲストに招聘し、作品制作実践、アートの営み、さらにはメディアと時間におけるタイムマシン／タイムトラヴェルを中心的課題にし、議論を展開していく。</p>
]]></content:encoded>
			<wfw:commentRss>http://akamatsu.org/aka/2012/02/02/0211-kyoto/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>1/28は名古屋で演奏</title>
		<link>http://akamatsu.org/aka/2012/01/21/1-28-nagoya/</link>
		<comments>http://akamatsu.org/aka/2012/01/21/1-28-nagoya/#comments</comments>
		<pubDate>Sat, 21 Jan 2012 13:20:09 +0000</pubDate>
		<dc:creator>Masayuki Akamatsu</dc:creator>
				<category><![CDATA[Event]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://akamatsu.org/aka/?p=6099</guid>
		<description><![CDATA[1月28日に名古屋のパルルで演奏、iPhoneをン十台（？）並べて、小さな音を鳴らします。会場は大きくないので、おそらくアンプラグド・ノーPAで大丈夫じゃないかな。よろしければお越しくださいませ。 Deep Acoust &#8230; <a href="http://akamatsu.org/aka/2012/01/21/1-28-nagoya/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>1月28日に名古屋のパルルで演奏、iPhoneをン十台（？）並べて、小さな音を鳴らします。会場は大きくないので、おそらくアンプラグド・ノーPAで大丈夫じゃないかな。よろしければお越しくださいませ。</p>
<p><img src="http://akamatsu.org/aka/wp-content/uploads/2012/01/DeepAco_v47.jpg" alt="" title="DeepAco_v47" width="500" height="360" class="aligncenter size-full wp-image-6101" /></p>
<p><strong><a href="http://deepacoustics.org/">Deep Acoustics</a> Live Act vol.47 「unformated」</strong><br />
日時：2012年1月28日 (土)<br />
　　　19:30 open 20:00 start<br />
会場：<a href="http://www.parlwr.net/">parlwr</a> （名古屋、新栄）<br />
出演：石川泰昭+中川丘<br />
　　　赤松正行（iOS Devices）<br />
　　　Shoko Nagai（piano/electronics）<br />
　　　平尾義之（turntable,etc）<br />
料金：1,800円</p>
<p>ニューヨークから即興・ジャズ・映画音楽などさまざまなジャンルで活動するNagai氏を迎えてのマルチフォーマットな演奏会。音響プログラミング言語MAX/MSPの第一人者として有名な赤松氏は近年主として取り組んでいるiPhoneを用いてのパフォーマンス。ノイジシャンの平尾は改造ターンテーブルのパフォーマンス。愛知県芸音楽科の若い才能によるパフォーマンスも注目。</p>
]]></content:encoded>
			<wfw:commentRss>http://akamatsu.org/aka/2012/01/21/1-28-nagoya/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MoMu-STKでシンセシス処理</title>
		<link>http://akamatsu.org/aka/2012/01/16/momu-stk/</link>
		<comments>http://akamatsu.org/aka/2012/01/16/momu-stk/#comments</comments>
		<pubDate>Mon, 16 Jan 2012 06:25:03 +0000</pubDate>
		<dc:creator>Masayuki Akamatsu</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://akamatsu.org/aka/?p=6077</guid>
		<description><![CDATA[先に紹介したMoMuでのオーディオ処理は、基本的な入出力を肩代わりしてくれるものの、それ以上のことは自前でやらなくてはいけない。実際にもMoMuオーディオは内部的にRemoteIOを呼び出しているだけ。自前でデジタル信号 &#8230; <a href="http://akamatsu.org/aka/2012/01/16/momu-stk/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://akamatsu.org/aka/2011/12/14/momu-audio/">先に紹介</a>した<a href="http://momu.stanford.edu/toolkit/">MoMu</a>でのオーディオ処理は、基本的な入出力を肩代わりしてくれるものの、それ以上のことは自前でやらなくてはいけない。実際にもMoMuオーディオは内部的にRemoteIOを呼び出しているだけ。自前でデジタル信号処理を書くのは、お勉強にはイイけど、面倒で難解であることも確か。</p>
<p>一方、MoMuを使うメリットは、同時に用意された<a href="https://ccrma.stanford.edu/software/stk/">The Synthesizer Toolkit (STK)</a>を簡単に利用できること。STKはCCARMAを中心に開発されている音響合成ライブラリで、その<a href="https://ccrma.stanford.edu/software/stk/classes.html">クラス・リスト</a>を見れば分かるように、基本的なオシレータやフィルタ、エフェクタはもちろんのこと、フィジカル・モデリング系の音源が充実している。Maxな人には<a href="http://www.music.columbia.edu/PeRColate/">PeRColate</a>という移植ライブラリで有名かもね。</p>
<p><a href="http://akamatsu.org/aka/wp-content/uploads/2012/01/STK-Classes.png"><img src="http://akamatsu.org/aka/wp-content/uploads/2012/01/STK-Classes-500x471.png" alt="" title="STK-Classes" width="500" height="471" class="aligncenter size-medium wp-image-6078" /></a></p>
<p>と言う訳で例によってナンチャッテ路線で、MoMu-STKを使ってみよう。まずは「<a href="http://akamatsu.org/aka/2011/12/14/momu-audio/">MoMuでオーディオ処理</a>」に示した手順で爆音が出るようにしておく。そして、<a href="http://momu.stanford.edu/stk/">The Synthesis Toolkit (STK): MoMu Releas</a>eのサイトからMoMu-STKをダウンロード。その上での手順は以下の通り。ここではTubeBellクラスを用いて、鐘（チューブラー・ベル）を鳴らす。</p>
<p>(1) プロジェクトにMoMu-STK-1.0.0フォルダを追加。</p>
<p>(2) ソースコード（例えば〜ViewController.mm）で、ヘッダをインポートし、定数と鐘のオブジェクトを定義。</p>
<pre>#import "mo_audio.h"
#import "TubeBell.h"

#define SRATE         44100
#define FRAMESIZE     128
#define NUMCHANNELS   2

stk::TubeBell	*myBell;</pre>
<p>(3) 適切なメソッド（例えばviewDidLoad）でMoMuのオーディオ処理の初期化と開始の後、鐘のインスタンスを生成し、鳴らす。</p>
<pre>MoAudio::init(SRATE, FRAMESIZE, NUMCHANNELS );
MoAudio::start(audioCallback, nil);

myBell = new stk::TubeBell();
myBell->keyOn();</pre>
<p>(4) コールバック関数では、tick()メソッドによって返される値でバッファを満たす。</p>
<pre>Float32 *data = buffer;
for (int i=0; i&lt;framesize; i++)
{
	Float32 value = 0;
	if (myBell != nil)
		value = myBell->tick();

	*data++ = value;
	*data++ = value;
}</pre>
<p>このようにしてアプリを起動すると鐘が鳴り響くハズ。シミュレータでも実機でもOK。はい、おしまい。</p>
<p>というのも味気ないので、もう少しシンセシスらしいことをしておこう。</p>
<p>まずボタンを作り、Touch DownでplayBell:メソッドを呼び出すようにアクションを定義する。</p>
<pre>- (IBAction)playBell:(UIButton *)sender
{
	myBell->keyOn();
}</pre>
<p>同じくスライダーを作り、Value ChangedでmodulationChanged:メソッドを呼び出すようにアクションを定義する。</p>
<pre>- (IBAction)modulationChanged:(UISlider *)sender
{
	myBell->controlChange(2, sender.value * 127.0);
}</pre>
<p>これで、ボタンをタップすると鐘が鳴り、スライダーを動かすと鐘の音色が変わる。シンプルながら、これだけでもサンプリング音の再生では難しい音響合成ですね。他にもパラメータは沢山あるので、いろいろとイヂってみてください。</p>
<p><a href="http://akamatsu.org/aka/wp-content/uploads/2012/01/MoMu-STK-Bell.png"><img src="http://akamatsu.org/aka/wp-content/uploads/2012/01/MoMu-STK-Bell-500x263.png" alt="" title="MoMu-STK-Bell" width="500" height="263" class="aligncenter size-medium wp-image-6086" /></a></p>
<p>はい、おしまい。</p>
]]></content:encoded>
			<wfw:commentRss>http://akamatsu.org/aka/2012/01/16/momu-stk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iOSデバイスとOSバージョン一覧表</title>
		<link>http://akamatsu.org/aka/2012/01/14/ios-devices-and-os-versions/</link>
		<comments>http://akamatsu.org/aka/2012/01/14/ios-devices-and-os-versions/#comments</comments>
		<pubDate>Fri, 13 Jan 2012 16:16:52 +0000</pubDate>
		<dc:creator>Masayuki Akamatsu</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Device]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://akamatsu.org/aka/?p=6043</guid>
		<description><![CDATA[問題：iPhone OS 3.0以降に対応するアプリの動作確認のために必要なiOSデバイスは何台？ 先のオプティマイザ問題もあって、iOSデバイスとOSのバージョンを調べてみました。この表での最小OSは、そのデバイスが発 &#8230; <a href="http://akamatsu.org/aka/2012/01/14/ios-devices-and-os-versions/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><strong>問題</strong>：iPhone OS 3.0以降に対応するアプリの動作確認のために必要なiOSデバイスは何台？</p>
<p>先の<a href="http://akamatsu.org/aka/2012/01/13/release-build/">オプティマイザ問題</a>もあって、iOSデバイスとOSのバージョンを調べてみました。この表での最小OSは、そのデバイスが発売された時点のOSのバージョンで、最大OSはどのバージョンのOSまで対応しているかを示している。(5.0.1)は現在の最新バージョンで、今後も対応するバージョンが上がる可能性があります。</p>
<p><a href="http://akamatsu.org/aka/wp-content/uploads/2012/01/iOS-Devices.png"><img src="http://akamatsu.org/aka/wp-content/uploads/2012/01/iOS-Devices-500x190.png" alt="" title="iOS-Devices" width="500" height="190" class="aligncenter size-medium wp-image-6058" /></a></p>
<p>3.xアプリの欄にマル印が付いているのは、OSのバージョン3.xに対応するアプリが動作することを示しており、動作確認をする必要がある。例えば、iPhone 4はOS 4.0以降に対応するので、3.xアプリの欄にはマル印は付いていない。つまり、動作確認をする必要はない（そもそもできない）。そして、iPhone 4はOS 4.xとOS 5.xについてアプリの動作確認をすることになる。</p>
<p>一般にOSのバージョンを下げることはできないので、メジャー・バージョンごとに動作確認用のデバイスを用意する。つまり、iPhone 4ならOS 4.xとOS 5.xの2台が必要になるわけ。厳密にはマイナー・バージョンごとにも動作確認すべきかもしれないが、これは最大のマイナー・バージョンに限って良いはずね（たぶん）。</p>
<p>そこで、この表のマル印を数えれば、今回の問題に対する回答になる。</p>
<p><strong>回答</strong>：23台</p>
<p>ただし、iPhone 4 (GSM)とiPhone 4 (CDMA)の違いは僅かで、個別に検証する必要はないかもしれない。この場合は必要台数は21台となる。逆にiPadもiPad 2も、Wi-FiモデルとWi-Fi+3Gモデルがある（iPad 2の3GはさらにGSMとCDMAに分かれる）ので、これらは区別して動作確認するべきかもしれない。このように考え方によっては23台以外の回答も有り得るよ。</p>
<p>ともあれ、動作確認のためには数多くのデバイスが必要だってことが分かるね。OS 4.x対応であれば17台、OS 5.x対応で8台が必要となる。個人や小規模なグループなら、これだけの台数を揃えるのは難しいかもしれない。初代iPhoneのように入手が難しい機種もある。しかし、万全を期するにはこれだけの台数が必要だし、何か問題が発生した場合には手の打ちようがないよね。</p>
<p>え？私？CDMA以外は必要台数全部揃っています（笑）。</p>
<p>【追記】iPhone OSにはバージョン2.xも存在するけど、現在のXcode 4.2では2.x用のアプリを開発するのは困難なので、ここでは省略しています。また、初代iPhoneが登場した時のOSはバージョン1.0で、これはApp Storeに対応していない。</p>
]]></content:encoded>
			<wfw:commentRss>http://akamatsu.org/aka/2012/01/14/ios-devices-and-os-versions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>最終確認はReleaseビルドで</title>
		<link>http://akamatsu.org/aka/2012/01/13/release-build/</link>
		<comments>http://akamatsu.org/aka/2012/01/13/release-build/#comments</comments>
		<pubDate>Fri, 13 Jan 2012 14:25:05 +0000</pubDate>
		<dc:creator>Masayuki Akamatsu</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://akamatsu.org/aka/?p=6032</guid>
		<description><![CDATA[先日リリースしたBanner 1.5.2について、iPhone 3Gで三角形みたいに歪んでいる、というメールあり。何それ？と思いながら確認しても、特に異常はなさそう。そもそもサブミット前にiPhone 3Gでもチェックし &#8230; <a href="http://akamatsu.org/aka/2012/01/13/release-build/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>先日リリースした<a href="http://itunes.apple.com/jp/app/banner/id289468215?mt=8">Banner</a> 1.5.2について、iPhone 3Gで三角形みたいに歪んでいる、というメールあり。何それ？と思いながら確認しても、特に異常はなさそう。そもそもサブミット前にiPhone 3Gでもチェックしている&#8230;とここまではXcodeでの話。もしや！と思ってiPhone 3GでApp Storeからダウンロードしてインストールして起動すると、しっかり歪んでました。歪むと言うよりグルグル斜めに廻っている感じ。でも、もう一度Xcodeから実行すると正常に表示される。しかも4Sなど他のiPhoneではApp Storeのアプリでも問題がない。謎！</p>
<p><a href="http://akamatsu.org/aka/wp-content/uploads/2012/01/BadBanner.jpg"><img src="http://akamatsu.org/aka/wp-content/uploads/2012/01/BadBanner-500x332.jpg" alt="" title="BadBanner" width="500" height="332" class="aligncenter size-medium wp-image-6033" /></a></p>
<p>原因はXcodeのオプティマイザでした。オプティマイザは実行速度が速くサイズが小さくなるようにコードを最適化してくれる。ところが、iPhone 3Gに対して（arm6に対して）はオプティマイザがお馬鹿さんらしく、変なコードになる場合があるらしい。そして、開発中に使うDebugビルドはオプティマイザがオフだけど、App Storeへのサブミットに用いるReleaseビルドではオプティマイザがオンになる。つまり、オプティマイザが馬鹿とは言え、Releaseビルドで動作確認をしなかった私が愚か者でした、ってワケ。</p>
<p>ちなみに、DebugビルドかReleaseビルドかは、Schemeポップアップ・メニューから「Edit Scheme…」を選び、Build Configurationで指定する。これをReleaseにしてRunすれば、App Storeからダウンロードするアプリと同じ状態になる（はず）。なので、<strong>アプリの最終動作確認はReleaseビルドで行うべし</strong>、ですね。ただし、Releaseビルドではデバッグ情報もなくなるので要注意。デバッグが必要であれば、Debugビルドのままターゲットの設定でオプティマイザだけをオンにする。</p>
<p><a href="http://akamatsu.org/aka/wp-content/uploads/2012/01/BuildConfiguration.png"><img src="http://akamatsu.org/aka/wp-content/uploads/2012/01/BuildConfiguration-500x341.png" alt="" title="BuildConfiguration" width="500" height="341" class="aligncenter size-medium wp-image-6038" /></a></p>
<p>さて、オプティマイザがiPhone 3G用にどのようなコードを生成しているかまでは分からない（調べるのは大変）。そこで、あれこれソースコードを書き換えて、オプティマイザがオンでも正常動作するよう修正する。半ば手探りだけど、今回は表示なので見当を付けやすい。オプティマイザが間違えようもない（と思われる）馬鹿丁寧な処理にして解決。</p>
<p>と言う訳で、修正版のBannerをサブミットしていますので、iPhone 3Gユーザの方は今しばしお待ちください。ご迷惑をおかけして、申し訳ありませんでした。</p>
<p>【追記】ってことは、AppleはiPhone 3Gで動作確認していない、ってこと？</p>
]]></content:encoded>
			<wfw:commentRss>http://akamatsu.org/aka/2012/01/13/release-build/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>謹賀新年</title>
		<link>http://akamatsu.org/aka/2012/01/01/happynewyear2012/</link>
		<comments>http://akamatsu.org/aka/2012/01/01/happynewyear2012/#comments</comments>
		<pubDate>Sun, 01 Jan 2012 07:55:31 +0000</pubDate>
		<dc:creator>Masayuki Akamatsu</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://akamatsu.org/aka/?p=6015</guid>
		<description><![CDATA[今年もよろしくお願いします。]]></description>
			<content:encoded><![CDATA[<p>今年もよろしくお願いします。</p>
<p><img src="http://akamatsu.org/aka/wp-content/uploads/2012/01/Kadomatsu2012.png" alt="" title="Kadomatsu2012" width="373" height="500" class="aligncenter size-full wp-image-6016" /></p>
]]></content:encoded>
			<wfw:commentRss>http://akamatsu.org/aka/2012/01/01/happynewyear2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MoMuでオーディオ処理</title>
		<link>http://akamatsu.org/aka/2011/12/14/momu-audio/</link>
		<comments>http://akamatsu.org/aka/2011/12/14/momu-audio/#comments</comments>
		<pubDate>Wed, 14 Dec 2011 07:57:50 +0000</pubDate>
		<dc:creator>Masayuki Akamatsu</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://akamatsu.org/aka/?p=5956</guid>
		<description><![CDATA[iOSでのオーディオ処理を担うCore Audioは準OS Xクラスの充実ぶりで優秀なんだけど、それなりに面倒な設定が沢山ある。そこでちょっとは楽ができそうなのがMoMu: A Mobile Music Toolkit。 &#8230; <a href="http://akamatsu.org/aka/2011/12/14/momu-audio/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>iOSでのオーディオ処理を担うCore Audioは準OS Xクラスの充実ぶりで優秀なんだけど、それなりに面倒な設定が沢山ある。そこでちょっとは楽ができそうなのが<a href="http://momu.stanford.edu/toolkit/">MoMu</a>: A <strong>Mo</strong>bile <strong>Mu</strong>sic Toolkit。これはスタンフォード大学のCCRMAがSmuleの協力を得て開発し、公開しているモバイル・デバイス向けのライブラリ。</p>
<p><a href="https://ccrma.stanford.edu/">CCRMA</a>は長年コンピュータ音楽の一翼を担ってきた研究所だし、<a href="http://www.smule.com/">Smule</a>はOcarinaなどのiOSアプリで有名な、<a href="http://jp.techcrunch.com/archives/20111031sec-watch-music-app-developer-smule-raises-12-million/">資金調達</a>もガンガンやってるアクティブなベンチャー企業。この2つがタグを組んだライブラリだから期待が高まる。ちなみに、CCRMAの有名な音響合成ライブラリ<a href="http://momu.stanford.edu/stk/">STK</a> (Synthesize Toolkit) もMoMuから利用できる（とは言え&#8230;）。</p>
<p><a href="http://akamatsu.org/aka/wp-content/uploads/2011/12/momu.png"><img src="http://akamatsu.org/aka/wp-content/uploads/2011/12/momu-500x500.png" alt="" title="momu" width="500" height="500" class="aligncenter size-medium wp-image-5957" /></a></p>
<p>さて、MoMuはオーディオ処理だけでなく、図のようにグラフィックス、マルチ・タッチ、加速度センサー、位置情報、コンパスなどの機能も提供している。これで結構なことができそうと思う人はいいんだけど、MoMuはC++インターフェースなのが個人的には難あり。そこで、MoMuのオーディオ処理だけを活用させていただくObjective-C++で参ります。以下、手順。</p>
<p>(1) プロジェクトにMoMuから以下のファイルを追加。<br />
　　　mo_audio.h<br />
　　　mo_audio.mm<br />
　　　mo_def.h</p>
<p>(2) ターゲットに以下のフレームワークを追加。<br />
　　　AudioToolbox.framework</p>
<p>(3) MoMuを利用するクラス（例えば〜ViewController）のソース・ファイルの拡張子を .m から .mm に変更。</p>
<p>(4) ソースコード（例えば〜ViewController.mm）で、ヘッダをインポートして定数を定義。</p>
<pre>#import "mo_audio.h"

#define SRATE         44100
#define FRAMESIZE     128
#define NUMCHANNELS   2</pre>
<p>(5) 適切なメソッド（例えばviewDidLoad）でオーディオ処理を初期化し、処理の開始を記述。</p>
<pre>MoAudio::init(SRATE, FRAMESIZE, NUMCHANNELS );
MoAudio::start(audioCallback, nil);</pre>
<p>(6) オーディオ処理のコールバック関数を記述。これはC言語関数なので@implementationより前（または@endより後）に記述すること。</p>
<pre>void audioCallback(Float32 *buffer, UInt32 framesize, void *userData)
{
}</pre>
<p>以上でMoMuが利用できる。シミュレータでも実機でも動作するので、プロジェクトを実行して、グワ〜〜ンとかビィイイ〜とか爆音が響き渡れば成功。そうならない場合は、スピーカーのボリュームが下がっているか、マイクが無効になっているか、処理の記述が間違っているか、のどれかだろうね。</p>
<p>爆音大会になる理由は、MoMuはマイク入力をコールバック関数のbufferに渡し、コールバック関数が終わった時点のbufferをスピーカーから出力するから。つまり、コールバック関数に何も記述しないと、マイク入力がそのままスピーカー出力され、フィードバックが起こってハウリングするというワケ。</p>
<p>ハウリングしないように無音にするには、bufferの内容をすべて0にすれば良い。サイレンス音響合成ってのも、なんだかトキめく（？）が、コールバック関数の中身を次のように記述する。</p>
<pre>Float32 *data = buffer;
for (int i=0; i&lt;framesize; i++)
{
	*data++ = 0.0;	// 左チャンネル
	*data++ = 0.0;	// 右チャンネル
}</pre>
<p>bufferはFloat32型の配列で、その要素数はframesizeで与えられるが、実際にはチャンネル数だけインターリーブしている。例えば、2チャンネル（ステレオ）なら、最初の要素が左チャンネルの1番目のデータ、次の要素は右チャンネルの1番目のデータ、その次の要素は左チャンネルの2番目のデータ&#8230;といった具合。データの値の範囲は-1.0から1.0まで。さらに、startの2番目のパラメータがコールバック関数のuserDataに渡される（ここではnilで何も渡していない）。</p>
<p>ここまで理解できれば、後は勝手にイヂることができるね。ナンチャッテ音響処理をいくつか書いてみよう。繰り返します、ナンチャッテ、です。</p>
<p>まず、ホワイトノイズ。</p>
<pre>Float32 *data = buffer;
for (int i=0; i&lt;framesize; i++)
{
	Float32 noise = (Float32)rand() / (Float32)RAND_MAX;
	*data++ = noise;	// 左チャンネル
	*data++ = noise;	// 右チャンネル
}</pre>
<p>次で、サイン波。</p>
<pre>Float32 *data = buffer;
Float32 frequency = 440.0;
Float32 phaseDelta = 2.0 * M_PI * frequency / SRATE;
static Float32 phase;
for (int i=0; i&lt;framesize; i++)
{
	phase = phase + phaseDelta;
	Float32 value = sin(phase);
	*data++ = value;	// 左チャンネル
	*data++ = value;	// 右チャンネル
}</pre>
<p>発展させて、マイク入力にトレモロ。</p>
<pre>Float32 *data = buffer;
Float32 frequency = 8.0;
Float32 phaseDelta = 2.0 * M_PI * frequency / SRATE;
static Float32 phase;
for (int i=0; i&lt;framesize; i++)
{
	phase = phase + phaseDelta;
	Float32 value = sin(phase) * 0.5 + 0.5;
	*data++ = *data * value;	// 左チャンネル
	*data++ = *data * value;	// 右チャンネル
}</pre>
<p>最後に、サンプリング（1秒録音1秒再生の繰り返し）。</p>
<pre>Float32 *data = buffer;
static Float32	samples[SRATE];
static long index = 0;
static bool isSampling = YES;
for (int i=0; i&lt;framesize; i++)
{
	if (isSampling)
	{
		samples[index] = *data;
		*data++ = 0.0;	// 左チャンネル
		*data++ = 0.0;	// 右チャンネル
	}
	else
	{
		*data++ = samples[index];	// 左チャンネル
		*data++ = samples[index];	// 右チャンネル
	}

	if (++index >= SRATE)
	{
		index = 0;
		isSampling = !isSampling;
	}
}</pre>
<p>さらにイロイロしたい人は<a href="http://www.musicdsp.com/">Music DSP Code Archive</a>あたりを参考に。</p>
<p>はい、おしまい。</p>
<p>【追記】諸般の事情（笑）により、サイン波とトレモロのコードを変更しました。また、演算精度に少々問題がある箇所があります。意図的、または、ナンチャッテです。</p>
]]></content:encoded>
			<wfw:commentRss>http://akamatsu.org/aka/2011/12/14/momu-audio/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPad35台による音楽と映像の展覧会を京都にて開催</title>
		<link>http://akamatsu.org/aka/2011/12/08/syncforjapan-pressrelease/</link>
		<comments>http://akamatsu.org/aka/2011/12/08/syncforjapan-pressrelease/#comments</comments>
		<pubDate>Thu, 08 Dec 2011 05:11:23 +0000</pubDate>
		<dc:creator>Masayuki Akamatsu</dc:creator>
				<category><![CDATA[Art]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://akamatsu.org/aka/?p=5940</guid>
		<description><![CDATA[PDF版プレス・リリース 2011年 12月 8日 赤松正行+Karl Bartos+小田英之+ 元クラフトワークのメンバーら3人の作家が制作した iPad35台による音楽と映像の展覧会を京都にて開催 赤松正行、Karl &#8230; <a href="http://akamatsu.org/aka/2011/12/08/syncforjapan-pressrelease/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://akamatsu.org/aka/wp-content/uploads/2011/12/SyncForJapan-pressrelease.pdf"><strong>PDF版プレス・リリース</strong></a></p>
<p style="text-align: right;">2011年 12月 8日<br />
赤松正行+Karl Bartos+小田英之+</p>
<hr size="1" />
<p style="text-align: center;"><strong>元クラフトワークのメンバーら3人の作家が制作した<br />
iPad35台による音楽と映像の展覧会を京都にて開催<br />
</strong></p>
<hr size="1" />
<p>赤松正行、Karl Bartos、小田英之の3人の作家による展覧会「Sync For Japan」が、12/13より12/25まで、PARIS MIKI四条烏丸店(京都)で開催されます。多くの方にご覧いただけますよう、ご案内申し上げます。</p>
<p>この展覧会はシンプルな電子音による音楽と摩訶不思議な映像を35台のiPadによって展示し、それらを同期させてご鑑賞いただくものです。会場のiPadは自由に操作できるとともに、iPhoneやiPadをお持ち込みいただくこともできます。また、この展覧会では東日本大震災の被災者支援をお願いしています。</p>
<p style="text-align: center;"><a href="http://akamatsu.org/aka/wp-content/uploads/2011/12/SyncForJapan-Exhibition.jpg"><img class="aligncenter size-medium wp-image-5921" title="SyncForJapan-Exhibition" src="http://akamatsu.org/aka/wp-content/uploads/2011/12/SyncForJapan-Exhibition-500x297.jpg" alt="" width="500" height="297" /></a> （展示イメージ）</p>
<p><strong>赤松正行+Karl Bartos+小田英之+展「Sync for Japan」</strong></p>
<p>会期：2011年12月13日(火)~12月25日(日)<br />
会場：PARIS MIKI 四条烏丸店 2F <a href="http://as.chizumaru.com/mikihd/detailMap?account=mikihd&amp;fp=detailMap&amp;bid=1293">【アクセス】</a><br />
　　　〒600-8007 京都府京都市下京区四条通高倉西入立売西町74番地1<br />
　　　TEL:075-211-8272 FAX:075-254-4686<br />
入場料：無料<br />
サイト：<a href="http://akamatsu.org/aka/2011/12/08/syncforjapan-pressrelease/ ‎">http://akamatsu.org/aka/</a></p>
<hr size="1" />
本リリースに関するお問い合わせ　<a href="http://akamatsu.org/aka/contact/">http://akamatsu.org/aka/contact/</a></p>
<hr size="1" />
<p>参考資料</p>
<p><strong>【展覧会の概要】</strong></p>
<p>SyncとはSynchronizationの略語で、複数の動作が揃って同期するという意味です。この展覧会では数多くの音楽と映像が同期しますが、それらは完全ではなく、僅かにズレたり、反応しないこともあります。一糸乱れぬ完璧さを追求するのではなく、個々の差異とともに総体として立ち現れる世界を垣間見ることが、この展覧会の意図のひとつです。</p>
<p>多くの事物が、あるいは多くの人々が集まる時、そこに混乱が生じることもあれば、統一が生じることもあります。誰かが号令を掛ける場合も、自発的な動きが生じる場合もあります。集団的な行動は強力である一方、時には負荷が大きくなるかもしれません。社会的な存在である私たちを電子ネットワークが加速する今日の姿を、展覧会は映し出そうとします。</p>
<p>会場には35台のiPadがあり、来場者は自由にiPadに触れて音楽と映像を操ります。これらは多少の相違がありながらも同期しており、全体として万華鏡のように目眩く音楽と映像が作り出されます。いずれのiPadも操作できますし、来場者がiPad（またはiPhoneやiPod touch）を持ち込むこともできます。もちろん、何も操作せず、ただ静かに鑑賞しても構いません。</p>
<p>2011年3月に赤松正行とカール・バルトスはMINI-COMPOSERという音楽アプリを制作し、東日本大震災の被災者への支援を呼びかけました。そして、同じモチーフで小田英之がCGアニメーションMINI-TABLEAUを制作しました。これらの音楽と映像が織りなす空間の中で、災害と支援につきましてもお考えいただければ幸いです。これが展覧会のもうひとつの意図です。</p>
<p><strong>【展覧会のアプリ】</strong></p>
<p>この展覧会で使用するアプリはApp Storeから無料でダウンロードできます。iPad（またはiPhoneやiPod touch）をお持ちの方はアプリをインストールして会場にお越しください（会場ではアプリのダウンロードはできません）。会場のWi-Fiに接続すれば、展示している作品と連動させることができます。</p>
<p><strong>MINI-COMPOSER</strong><br />
4種類のドラム・ループとシンプルな電子音による16ステップ・シーケンサ。エグゼクティブ・プロデューサはJean-Marc Lederman（ジャン＝マルク・レダーマン）。以下のURLよりダウンロード、またはApp Storeで「MINI-COMPOSER」を検索。<br />
<a href=" http://itunes.apple.com/jp/app/mini-composer-by-karl-bartos/id427541594"> http://itunes.apple.com/jp/app/mini-composer-by-karl-bartos/id427541594</a></p>
<p><strong>MINI-TABLEAU</strong><br />
4種類の絵画的アニメーションをループ再生するムービー・プレーヤ。<br />
App Storeでの公開は未定。</p>
<p><strong>【作家のプロフィール】</strong></p>
<p><strong>赤松 正行</strong>（あかまつ まさゆき）<br />
メディア作家、博士（美術）、IAMAS教授<br />
おもにインタラクティブな音楽や映像作品を制作し、近年はモバイル環境での表現研究に注力している。最初期からiPhoneに取り組み、40を超えるアプリを発表、セカイカメラのオリジナル開発者でもある。代表作に数十台のiMacやiPhoneを用いた「incubator」や「Okeanos Buoys」などがあり、「Maxの教科書」や「iOSの教科書」など著作も多数ある。</p>
<p><strong>Karl Bartos</strong>（カール・バルトス）<br />
電子音楽の作曲家、演奏家<br />
テクノポップの創始者とも言えるクラフトワーク黄金期のメンバーであり、「The Robots」や「The Model」、「Computer World」などのヒット曲の共作者として知られる。その後のソロやユニットでも活躍しており、現在は「Live Cinema」と呼ぶオーディオ・ビジュアル・コンサートを積極的に展開している。2011年9月には来日公演を行い、好評を博した。</p>
<p><strong>小田 英之</strong>（おだ ひでゆき）<br />
美術家、IAMAS教授<br />
『絵画』・イラストレーション・CGアニメーション作品を制作、80年代より多数の個展・グループ展で作品を発表。一般的に「絵画」は時間と空間を平面に圧縮したものであるといえるが、それは過去に技術的な制約から動くことをあきらめてしまった『絵画』の特殊な形態の一つであり、本来あるべき姿のひとつとして「可能性絵画」を提案している。</p>
]]></content:encoded>
			<wfw:commentRss>http://akamatsu.org/aka/2011/12/08/syncforjapan-pressrelease/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>12/13より京都で展覧会</title>
		<link>http://akamatsu.org/aka/2011/12/02/1213-syncforjapan/</link>
		<comments>http://akamatsu.org/aka/2011/12/02/1213-syncforjapan/#comments</comments>
		<pubDate>Fri, 02 Dec 2011 07:17:43 +0000</pubDate>
		<dc:creator>Masayuki Akamatsu</dc:creator>
				<category><![CDATA[Art]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://akamatsu.org/aka/?p=5918</guid>
		<description><![CDATA[12/13より京都のPARIS MIKI四条烏丸店にて展覧会「Sync for Japan」を開催します。今年3月にKarl Bartos氏とともに制作したiOSアプリ「MINI-COMPOSER」に小田英之氏のアニメー &#8230; <a href="http://akamatsu.org/aka/2011/12/02/1213-syncforjapan/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>12/13より京都のPARIS MIKI四条烏丸店にて展覧会「Sync for Japan」を開催します。今年3月にKarl Bartos氏とともに制作したiOSアプリ「MINI-COMPOSER」に小田英之氏のアニメーション「MINI-TABLEAU」が加わり、都合35台のiPadによって展示します。お近くにお越しの際はぜひお立ち寄りくださいね。</p>
<p><img src="http://akamatsu.org/aka/wp-content/uploads/2011/12/SyncForJapan-Poster.jpg" alt="" title="SyncForJapan-Poster" width="500" height="192" class="aligncenter size-full wp-image-5919" /></p>
<p>展示はこんな雰囲気。これは正面のイメージ図で、これに両側壁と後壁にもiPadを空間的に配置して、全台がWi-Fiでシンクして音と映像を奏でる趣向。意図的ではないものの、必ず発生するズレやエラーを含んだネットワークの様相も鑑賞していただけると思います。</p>
<p><a href="http://akamatsu.org/aka/wp-content/uploads/2011/12/SyncForJapan-Exhibition.jpg"><img src="http://akamatsu.org/aka/wp-content/uploads/2011/12/SyncForJapan-Exhibition-500x297.jpg" alt="" title="SyncForJapan-Exhibition" width="500" height="297" class="aligncenter size-medium wp-image-5921" /></a></p>
<p><strong>赤松正行＋Karl Bartos＋小田英之＋展「Sync for Japan」</strong></p>
<p>　会期：2011年12月13日（火）〜12月25日（日）<br />
　　　　11:00〜20:00<br />
　会場：PARIS MIKI 四条烏丸店 2F　<a href="http://as.chizumaru.com/mikihd/detailMap?account=mikihd&#038;fp=detailMap&#038;bid=1293">【アクセス】</a><br />
入場料：無料</p>
<p>【追記】</p>
<p><a href="http://www.paris-miki.co.jp/event/kyoto111208/">PARIS MIKIの展覧会案内</a><br />
<a href="http://www.paris-miki.co.jp/file/pdf/press_1208.pdf">PARIS MIKIの展覧会プレス・リリース</a><br />
<a href="http://jaapan.com/news/?id=2118">JAAPANの展覧会紹介（英語）</a><br />
<a href="http://fr.jaapan.com/news/?id=2123">JAAPANの展覧会紹介（フランス語）</a><br />
<a href="http://www.karlbartos.com/message/20111210.html">Karl Bartosの展覧会案内</a></p>
]]></content:encoded>
			<wfw:commentRss>http://akamatsu.org/aka/2011/12/02/1213-syncforjapan/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

