タグ

openalに関するpaellaのブックマーク (20)

  • restarting openAL after application interruption on the iPhone

    restarting openAL after application interruption on the iPhone Hey All, I have been fiddling with openAL on the iPhone for awhile now, and have discovered a few things. If you havent already read it, (and want a basic overview of openAL on the iPhone) have a look at the openAL tutorial I posted a while back. Today I want to talk a bit about how the Audio Sessions system interacts with the openAL s

    restarting openAL after application interruption on the iPhone
    paella
    paella 2011/08/01
    OpenALで再生中に割り込みが入ると、サウンドが鳴らなくなってしまう現象への対処方法。割り込みのコールバックを設定してOpenALをサスペンド&レジューム。
  • http://read.pudn.com/downloads120/sourcecode/macos/510268/CrashLanding/AudioSupport/SoundEngine.cpp__.htm

    paella
    paella 2011/03/23
    alBufferDataStatic()なるOpenAL拡張APIを使うときのサンプルコード。 @5mingame2 さんのブログにもあった内容と同じ。
  • でらうま倶楽部 : iPhone 少しだけメモリの負担を減らせるかもしれないOpenALのAPI

    2010年07月22日18:56 カテゴリiPhoneプログラム iPhone 少しだけメモリの負担を減らせるかもしれないOpenALのAPI iPhoneに特化したサウンドライブラリ! …というわけではないけど、ゲームみたく処理速度重視なアプリでもわりと…いやけっこう?導入されとるOpenAL。WindowsでもMacでも動くコードが書けるし、APIが単純だからゲーム機に移植しとるデベロッパもいるのかしらん?みたいな。 んで、一個だけ気になってたのが、このAPI。 alBufferData(ALuint buffer, ALenum format, const ALvoid *data, ALsizei size, ALsizei freq); みんなも必ず使うであろうこのAPI。読み込んだ波形データをサウンドバッファとして登録する関数です。でもこれ一つだけ弱点があって、新しくメモリを確

    paella
    paella 2011/03/23
    alBufferDataだと新しくメモリを確保してそこにデータをコピーするため、一時的にメモリをバッファの2倍消費してしまうので、それをalBufferDataStaticProcみたくして回避しようという話。OpenAL拡張API
  • でらうま倶楽部 : iPhone OpenAL上でのループ再生ノイズに苦しめられた

    2010年07月14日19:25 カテゴリiPhoneプログラム iPhone OpenAL上でのループ再生ノイズに苦しめられた お久しぶりです。 いやいやいや… iPhoneアプリの完成が近いとブログもツイッターも途絶えがちだがね。でもこうしてネタを提供→生存確認。みたいな。ま、稚拙な文章とは思いますが、最後まで付き合って頂けたら何よりです。 部長はアプリのサウンド再生にはOpenALを使っとりますが、今回は「まさかのループでプチノイズ現象」でハマった顛末を報告します。結論から言うと、対症療法で切り抜けたんですが…是非皆さんの意見も聞きたい結果でもあります。 OpenALでのサウンド再生は サウンドデータをwav形式で用意afconvert -f caff -d ima4 hoge.wav としてcaf形式(IMA4圧縮)に変換Appleのサンプル「oalTouch」を元にした読み込みプ

    paella
    paella 2010/07/14
    ループ再生時にノイズが載る理由は、サウンドデータの先端/末尾が0になっていないからだけれども、QT(wav)もafconvert(caf)もデータを不可逆変換しているので0が混じるかもよ、という話。さて、どうしたものか。
  • Nice & Easy iOS OpenAL Sound Library - Open Source

    Playing sounds using Apple’s AVAudioPlayer is pretty simple, and there is quite a bit of instruciton on how to do that. OpenAL is another story as most of the documentation and wrappers come from other platforms, and while there are a few libraries out there that wrap OpenAL commands into an easier to use library I’ve found a new one that I really like. The librar is from Karl Stenerud and is know

    Nice & Easy iOS OpenAL Sound Library - Open Source
    paella
    paella 2010/07/06
    iOSのサウンド周りをOpenALを下層に用いつつ抽象化したライブラリ。ライブラリそのものも良いけれど、このGithubにあるドキュメント(PDF)も素晴らしい。
  • designed.jp

    This domain may be for sale!

    paella
    paella 2009/10/29
    Mac OS X 10.4/10.5/10.6用のゲームと、iPhone 3.0/3.1用のゲームが同時に開発できる、最新のフレームワークです。OpenGL と OpenAL をベースにしたゲームが簡単に作成できます、とのこと。今後に期待。
  • iPhone OS 3.0のオーディオ周りの変更点 | Objective-Audio

    OS3.0がでてからもう結構時間が経ってますが、オーディオ周りの挙動に変更があったところをまとめておきます。 ロック時に音が途切れない AudioUnitのRemoteIOを使っている場合、AudioSessionのPreferredHardwareIOBufferDurationを何も設定せずデフォルト状態のままだと、以前と変わらずロックしていないときは1024フレーム、ロック中は4096フレームと切り替わってしまいますが、一度値を設定しておくと、ロックしても設定した値そのままで切り替わらなくなったようです。 RemoteIOのデフォルトフォーマットが変更 OS2.2.1以前のRemoteIOのデフォルトのフォーマットは8.24の固定小数点でしたが、OS3.0からは16bitの整数に変わっているようです。ただし、MultiChannelMixerなどはあいかわらず8.24の様ですので、組

    paella
    paella 2009/07/08
    iPhoneOS3.0での音周りの変更点。この1つ前の記事のOpenGL周りのコツも注目。
  • オーディオセッションを実装する前に必要な2つの知識<3(追加):セッションプロパティの変化> | footLooser

    フリーエンジニア業はコーヒー、家ではココア。最近もっぱらiPhoneの虜。といいつつ実はピストの虜。技術ネタだけじゃなくてピストネタも書くよ! 今回はオーディオセッションのセッションプロパティの変化について。 オーディオセッションオブジェクトはいくつかのプロパティを持っており、アプリはそれらを取得したりそれらの値が変化した時に通知を受けたりする事ができる。 変化した時の通知の例としてユーザがヘッドセットを抜き差ししたり、デバイスをドックに載せたりドックからはずしたりすると、オーディオハードウェア経路が自動的に変化するが、この変化に対してアプリが対応できるようにオーディオセッションはこれらの変化を通知してくれる(Core Audioが通知している)。ヘッドセットをさしたのにデバイスのスピーカから出力されつづけたらバカだよね。そんな事がないようにアプリは対応しなければならない。 アプリは

    paella
    paella 2009/05/13
    素晴らしい記事。プロパティの説明って少ないから。
  • Apple - Support - Discussions - Using side volume buttons ...

    paella
    paella 2009/05/05
    OpenALのカテゴリについての概要説明が載っていた
  • AudioSession その2 AudioCategory | Objective-Audio

    iPhoneのアプリでオーディオを再生・録音する場合に、iPodの音楽を鳴らしたままミックスして出したり、ロックした時にも音を出せるようにするには、AudioSessionSetProperty関数を使ってAudioCategoryというのを設定します。 AudioSessionSetPropertyはこんな感じで宣言されています。 extern OSStatus AudioSessionSetProperty(AudioSessionPropertyID inID, UInt32 inDataSize, const void *inData) AudioSessionSetPropertyの第一引数にはAudioSessionPropertyID、第二引数はプロパティのサイズ、第三引数には設定する値をポインタで渡します。CoreAudioではおなじみの構成です。 AudioSession

    paella
    paella 2009/05/05
    オーディオカテゴリがどういう効果を持つかが書かれた表が便利。
  • OpenAL|Memeplexes

    このフラグを、2つ目の引数formatに入れます。 最初の引数bufferNameはもちろんデータをセットするBufferオブジェクトの名前です。C#でラッパークラスを作ったなら、間違いなく(引数ではなく)メンバ変数になるでしょうね。 3番目の引数dataは音の波データです。具体的にこれがどのようなデータであるかは、引数formatによります。8bitを選んだのならbyte[]になるでしょうし、16bitを選んだらUInt16[]になるでしょう。ステレオを指定した場合は、左のチャンネルが先に来て、後に右のチャンネルが来ます(わかりにくい表現ですが、このようなことがドキュメントに書いてあります)。 4番目の引数sizeはdataのサイズですが、気をつけなければいけないのはこれはbyte単位だということです。配列の長さではありません。 5番目の引数frequency(日語では周波数)は、波デ

    paella
    paella 2009/04/27
    C#でのOpenAL使用方法だけれど、丁寧に書いてあるので分かりやすい。
  • OpenAL 1.1 Specification and Reference

    —仕様書およびリファレンス— これは「OpenAL 1.1 仕様書およびリファレンス」です。この文書は2000年6月に発行された、旧版である「OpenAL1.0 仕様書およびリファレンス」を元にしています。以下に双方の版権情報を示します。 Version 1.1 Published June 2005 Copyright © 2005 by authors Version 1.0 Draft Edition Published June 2000 Copyright © 1999-2000 by Loki Software 全コピーに版権情報およびこの許可表示を持たせるならば、このマニュアルの原文ママのコピーを作り、配布する事が可能です。 上記条件に従った改変版について、このマニュアルを他言語に翻訳しコピー、配布する事が可能です。(この文言が版権保持者に認められた訳文中で定められていなけれ

    paella
    paella 2009/04/27
    日本語訳
  • http://ilaliart.sourceforge.jp/blog/category/OpenAL.html

    Categories SDL (19件) wxWidgets (7件) ゼッパチ (4件) Risse(TJS3) (1件) Lua (2件) OpenAL (5件) TeX (1件) XOOPS (1件) ACE (1件) bison (2件) flex (4件) VC (3件) DSPスターター・キット (4件) Java (1件) Hornet (1件) OpenALでSourceを確保する際、サウンドカードによって確保可能なチャンネル数が大きく変わる。例えば256チャネル一気に確保可能なサウンドカードがあるのに対して、一度に14チャネルしか確保できないものもある。もちろん、複数回に分けても、結局最大で確保可能なチャネル数は変わらない。 BMSでは多チャンネル再生が基となるため、最低でも32チャンネルは欲しいところだが、中には14(C-Mediaの音源がそうだった)しか確保できな

    paella
    paella 2009/04/27
    OpenALに関するブログカテゴリ。ぼちぼち詳しく描いてあるので、今後の更新にも期待・・・したいが2006年で止まってるのでむりだろうな。
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    paella
    paella 2009/04/27
    お役立ちリンク集
  • OpenAL触ってみる « Garage Note

    paella
    paella 2009/04/24
    「コンテキストのALC_REFRESHという値を調整することでなんとか解消。どうも、この値がサウンドバッファの供給速度より十分速くないと、ブチブチの原因になるらしい」
  • OpenAL 1.1 Specification and Reference

    —仕様書およびリファレンス— これは「OpenAL 1.1 仕様書およびリファレンス」です。この文書は2000年6月に発行された、旧版である「OpenAL1.0 仕様書およびリファレンス」を元にしています。以下に双方の版権情報を示します。 Version 1.1 Published June 2005 Copyright © 2005 by authors Version 1.0 Draft Edition Published June 2000 Copyright © 1999-2000 by Loki Software 全コピーに版権情報およびこの許可表示を持たせるならば、このマニュアルの原文ママのコピーを作り、配布する事が可能です。 上記条件に従った改変版について、このマニュアルを他言語に翻訳しコピー、配布する事が可能です。(この文言が版権保持者に認められた訳文中で定められていなけれ

  • yunoの雑記帳 - OpenALのテスト

    MacOSXで実際に使ってみたので、そのテストコードを載せておきます。 440Hzの正弦波が1秒間鳴ります。 #include <OpenAL/al.h> #include <OpenAL/alc.h> #include <math.h> #include <stdio.h> int main() { ALCdevice *device; ALCcontext *context; ALshort data[22050]; ALuint buffer, source; int i; device = alcOpenDevice(NULL); context = alcCreateContext(device, NULL); alcMakeContextCurrent(context); alGenBuffers(1, &buffer); for (i = 0; i < 22050; ++i)

    paella
    paella 2009/04/24
    MacOSXで実際に使った、テストコード。 440Hzの正弦波が1秒間鳴ります。
  • openAL基礎 - プログラミングメモ - Seesaa Wiki(ウィキ)

    [ ごみ箱 ] プログラミングメモ 編集 履歴 添付 設定 新規ページ作成 メニュー Wiki内検索 最近更新したページ 2007-12-09 MyLinks FrontPage openAL基礎 openAL MenuBar1 MenuBar2 Profile Calendar Memo Bookmarks 最新コメント Menu タグ openAL基礎 とりあえず、ここのソースでも解説してみる このソースは自由に複製していいらしい てなわけで、勝手につかわしてもらってます まず、 ALCdevice *alcOpenDevice(const ALCchar *devicename); 名のとおり、デバイスをオープンする関数 devicenameにはオープンにするディバイスを指定します。 ここをNULLにすると、適当にいいやつをオープンするみたい? "DirectSound3D"とかも指

    paella
    paella 2009/04/24
    OpenALの関数を最初から順に説明。導入に。
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    paella
    paella 2009/04/08
    ここもCrashLandingからのSoundEngineをインスパイアしている。見てみよう
  • iPhone - Develop » Blog Archive » OpenALをいじくってるのだが

    OpenALをいじくってるのだが 昨日あたりから、音声というかサンプリングした音を再生するために、OpenALをつかうべくがんばり中。 だけど全然うまくいかない。音は再生されるのだけど、同じ音を何度かならすと、プチプチというノイズが入っちゃう。 原因は前の音が終わるときにフェードしていないからなんだけど、フェードする方法がよくわからない。 今はCrashLandingのソースからSoundEngineをパクってきているんだが、それにはフェードするためのAPI呼び出しは無さげなので自前で実装しないといけなさげ。 だけど、OpenALのドキュメントとかサンプルとかは劇的に少ないので厳しいわ。 そして、それが可能なのか検証すべくついにPianistかっちゃったんだけど、Pianistは完璧ですね。前の音とのつながりもすごくきれいだし音が良い。ということはiPhoneでもがんばればこんだけきれいに

    paella
    paella 2009/04/08
    難しそう。CrashLandingのソースのSoundEngineにOpenALを使用したのがあるみたい
  • 1