デスク配線がスッキリ。Ankerの全部入り12 in 1モニタースタンドが突然8,250円OFFされてた #Amazonセール
「タダで安全に、合法にハイになる」という「デジタルドラッグ」が米国の青少年の間で流行しているそうだ(WIRED VISION、本家記事より)。 「デジタルドラッグ」とか「iDosing(デジタルな一服)」と呼ばれるのは音声ファイルで、これを聞くことで薬物を摂取したような効果が表れるという。YouTubeを「iDose」や「iDoser」といったキーワードで検索するとデジタルドラッグを試す人々の動画が大量にヒットするが、これをみた保護者や教育関係者らは「iDosing」が違法ドラッグ使用のきっかけになることを懸念しているという。 ちなみにiDosingの音源は「バイノーラル・ビート」という音の仕組みを使っているとのこと。人間の耳にそれぞれ別々の周波数の音を聴かせると、脳がその周波数の違いを補正しようと周波数の差のビートを脳内で作りだすとのことで、この差の大きさによってアルファ波やベータ波、シ
今時はPCや据置ゲーム機は勿論携帯ゲーム機に至るまで、BGMやSEにはありとあらゆる音を使うことが出来るようになっています。しかし、昔々のゲーム機ファミリーコンピュータやSC-3000以前あたり、或いはMIDI導入前の頃のコンピュータゲームでは使用出来る音源は貧弱なものでした。 音源が限られる環境だから聞くにたえない音楽ばかりだったかというとさにあらず。むしろ素で同時に発生できる音数や音色が限られるからこそ、作り手の腕が如実に表れました。勿論本当に救い難いショボい音、それこそピコピコといった擬音で揶揄されるようなもありましたが、どこをどうすればこんな凄い音楽が作られたんだろうと思うような名曲も数多くありました。改めて聴いても、現在の環境で作られたBGMのひ弱さを再認するようなものすら…。そうはいっても流石に最近のゲームでは演出であっても8bit音源チップ風チップチューンを耳にすることは殆ど
iOSDC JAPAN 2017の前夜祭で「Objective-C++を使ってMRCで快適に開発する」という発表をしてきました。 Objective-Cに関するCfpは少ないだろうから選ばれる可能性が高そうだったのと、マニアックな話題にすると前夜祭に選ばれて発表が終わった後にスッキリとした気持ちで本編を見ることができるだろうという見込みがピッタリはまって、前夜祭で発表することとなりました。 「すごく参考になりました!早速使ってみます!」みたいなコメントは僕の知る限りひとつもいただけなかったのですが(それは当然)、すでにObjective-C++を使っている方が少なからずいらっしゃることもわかりましたし、MRCで書くかどうかはさておいてObjective-C++はパフォーマンスを追求するような分野では細々と使われていくのではないかなという印象です。 発表の内容に関して興味のある方は、以下のス
いろいろあって、本日またフリーランスに戻りました。フリーは随分やったので、どこか企業に入ってチーム開発を経験してみたいなと思っています。ということで、就活の意味合いも含めて、情報公開していきます。 Cocoa/iPhone、Core Audio/Quartzあたりができるプログラマーが必要な企業さま、よろしくお願いします。Webプログラミングもそこそこできます。 そんなわけで、iPhone Core Audio Programming 2回目 前回、これまでGetting Started〜で書いてきたことがiPhoneでも通用すると書きました。 あと、Core Audioはいろいろありすぎてわけわからん!などと言われているようですが、たしかにそうだし、サンプルコードがほとんど無いというのはありますが、実は結構簡単です。 まずはそれを証明しましょう。 そこでまずは、というかいきなりA
ウィジェットとライブアクティビティ ウィジェットがさらに多くの場所で活用できるようになり、パワーアップしました。WidgetKitを使ってインタラクティブな要素やアニメーションによるトランジションに対応すると、ユーザーがウィジェットから直接アクションを実行できます。既存のウィジェットにわずかな変更を加え、iOS 17向けに再ビルドするだけで、iPhoneのスタンバイ画面、iPadのロック画面、Macのデスクトップ上で視覚的に美しく表示させることができます。SwiftUIを使用すると、ウィジェットの色と間隔がコンテキストに合わせて自動調整されるため、複数のプラットフォームで使いやすさが増します。 WidgetKitとActivityKitで構築したライブアクティビティがiPadで利用できるようになり、ユーザーはアプリのアクティビティや情報をロック画面からいつでもリアルタイムで確認できます。
[Getting Started With Audio Unit] 第16回.AUGraph SubGraphを使う 2008/1/22 10:49:32 終わったはずのGetting Started With Audio Unit 16回目. AUGraphのSubGraphを取り上げていないかったので,SubGraphの初歩をやります. というよりは,SubGraphをやるときにいつも忘れているのでまとめておきます. SubGraphで検索してもほとんど情報無いし. AUGraphって何?という人は 第6回.AUGraphとは何か を見ておいてください. AUGraphのSubGraphとは? SubGraphというのは,メインのAUGraphに合流させて使えるAUGraphです. 図に表すとこうなります. 別にこんなことやらなくてもいいじゃんとも思えるのですが,mainの
今回からは、楽器アプリを取り上げてみる。iPhoneをギターやピアノといった楽器にするアプリケーションは、App Storeの売り上げでも人気を博しており、iPhoneアプリの代表格とも言えるだろう。この連載としては、楽器アプリの作り方を通して、iPhoneのオーディオテクノロジーを概観する事が目的となる。 iPhoneのオーディオフレームワーク アプリの制作にとりかかる前に、iPhoneが持つオーディオフレームワークを紹介しよう。図示すると、次のようになると思う。 iPhoneのオーディオテクノロジーは、Core Audioと総称される。その中でも重要なのは、Mac OS Xに由来するオーディオフレームワークであるAudio ToolboxとAudio Unitだ。この2つのフレームワークに、多くの機能が備わっている。その一部を書き出すと、 オーディオファイルの再生、一時停止、ループ オ
Core AudioのAudioToolbox.Frameworkにはオーディオファイルの読み書きに2通り方法が用意されています。<AudioToolbox/AudioFile.h>での、ほぼ生のデータを直接扱う方法と、<AudioToolbox/ExtendedAudioFile.h>での、オーディオファイルの読み書きにコンバーターを組み合わせてあるものを使う方法です。 圧縮ファイルを扱う場合や、リニアPCMでサンプリング周波数を変換して扱いたい場合には、ExtendedAudioFile.hを使ったほうが楽だと思います。逆にリニアPCMでフォーマットの変換が全く必要ないときには、AudioFile.hのバイトデータでの読み書きを使うとパフォーマンス的に有利かもしれません。 今回は、ExtendedAudioFileの使い方を見ていきたいと思います。まず、読み込みを行うときにはオーディオ
Last modified Fri Mar 5 2004 間違いを発見した方、ぜひお知らせください。(_ _) Cocoa 自体には音を扱う方法はほとんど用意されていない。一応 NSSound というクラスに音ファイルを読み込むことができるが、それらは単にオーディオデバイスから出力するためのもので、音声波形そのものにアクセスすることはできない。したがって、WAVE ファイルを読み込んで何らかの信号処理をする、あるいはファイルに書き出すなどの処理をしたい場合には、NSSound 以外の方法が必要となる。 WAVE ファイルを読み込むというタスクは単純かつ基本的だが、Cocoa でそれをする方法についての解説はほとんどない。上に書いたように、Cocoa 自体にその機能がないからである。こんな単純なタスクでも、WAVE 形式の仕様書を片手に1からガリガリとコーディングするのは結構面倒くさいし、応
前のエントリでこんなことを書きました。 JavaScriptで波形データを読み書きすることができる。しかし再生するのは難しい。 HTML5のaudioタグとData URIを組み合わせればできないこともないが、コストが大きすぎる。 コストが大きいのは音声ファイルが大きいからです。50MBある波形をいちいち変換してられません。 でも小さい波形ならできるかもしれない! ということでやってみました。 基本的なアイディア 波形データをつくる(数値の配列) 波形をバイナリ列に変換する バイナリ列にWAVヘッダを付加する Base64エンコード audioタグのsrc属性に指定 audioを再生 つくったもの http://yanagiatool.appspot.com/jsaudio/mmltest.html シンプルなMMLプレイヤーです。JavaScript + HTML5。 ベロシティとかルー
Please note: this article is part of the older "Objective-C era" on Cocoa with Love. I don't keep these articles up-to-date; please be wary of broken code or potentially out-of-date information. Read "A new era for Cocoa with Love" for more. This week, I present a sample application that streams and plays an audio file from a URL on the iPhone or Mac. I'll show how the application was written by e
動画でリッチなことできるんなら音声でもできるんじゃね? と思ったので書いてみました。 http://yanagiatool.appspot.com/jsaudio/load.html (FireFox3.6系列のみ) ローカルからwavファイルを画面にドラッグアンドドロップしてみてください。ゆっくり波形が表示されます。 読み込めるwavファイルの形式は16bitステレオのみです。 仕組み File APIを使ってます。 FileReaderでファイルの中身をStringとして読み込んで、ヘッダをチェックして、データ部を適当にエンディアン変換しながら表示してます。 File APIの使い方やバイナリの扱い方などは W3C File APIを使ってJavaScriptでファイル加工 - しばそんノート http://d.hatena.ne.jp/shibason/20100111/126319
ブログ パスワード認証 閲覧するには管理人が設定した パスワードの入力が必要です。 管理人からのメッセージ https://mac-tegaki.comへ移転中 閲覧パスワード Copyright © since 1999 FC2 inc. All Rights Reserved.
単純に JavaScript で音が鳴らせるのが面白いと思って最近色々調べていたので、 今まで調べたところを書いておきます。 現在、JavaScript から音声を扱うには 3 つの方法があると理解してます。 (他にもあったらコメント欄とかで教えてください) QuickTime プラグイン Flash + ExternalInterface + Sound オブジェクト audio タグ QuickTime プラグイン embed タグで埋め込まれた QuickTime プレイヤーに JavaScript からアクセスする。 特徴 QuickTime がサポートしている形式は全て利用できるはず (MP3 / WAVE / MIDI 等)。逆に ogg とか QuickTime が対応していない形式は再生できない embed タグの src タグに data スキームでバイナリデータを埋め込
Ruby 1.9 && Cocoa -> MacRuby ruby-dev で少し前にこんな文章が流れてました。via [ruby-dev:38931] RubyCocoaでruby 1.9に対応する予定は今のところありません。 1.9系はMacRubyの守備範囲という認識です。 ふむふむ。ところでよく訓練された信者Rubyist はもう 1.9 系に移行しているはずですよね!! ということは三段論法により「よく訓練された Rubyist は Cocoa が使いたければ MacRuby を使う」という命題が導出されますね。 MacRuby インストール というわけで MacRuby をインストールしてみました。安定版は 0.4 です。わたしは MacRubyの公式サイトの「Source」のページをみて GitHub から git clone しました。 http://www.macruby
Let’s say you would like to play an audio file in your MacRuby app/script, how would you do? It’s actually pretty simple, you just need to use NSSound. If we wanted to use a system sound we could do: NSSound.soundNamed('Basso').play But let’s look at a more advanced example with some Cocoa patterns. We will loop through all the audio files in a folder and we will play them one after the other. #!
'fmt ' チャンク構造体 #define FormatID 'fmt ' /* chunkID for Format Chunk. NOTE: There is a space at the end of this ID. */ typedef struct { ID chunkID; long chunkSize; short wFormatTag; unsigned short wChannels; unsigned long dwSamplesPerSec; unsigned long dwAvgBytesPerSec; unsigned short wBlockAlign; unsigned short wBitsPerSample; /* Note: there may be additional fields here, depending upon wFormatTa
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く