忍者ブログ

とちにすいはら式+

痒いところに手が届かない雑記ブログ。お金とDTMの話が多め

近未来的音楽素材屋3104式
↑音楽素材はこっち↑

とちにすいはら式+

SwiftでAVAudioPlayerを使ったピアノアプリの音色を変更する方法

1.はじめに

iPhoneもiPadも持ってないくせにSwiftアプリの勉強をしている筆者。本当はスマホ機種変の際にiPhoneにしようかなーと思ってたのに、入荷待ちといわれたから結局iPhoneは入手できず。

ただ、将来的にはSIMフリーの中古iPhoneやiPadを買って、一応そのユーザーの人とも話を合わせられるようにはしておきたい。

と、それはともかく、Swiftでピアノアプリを作る際、ネット上の各種記事は

「音が鳴りましたね、めでたしめでたし」

で終わってしまい、

「じゃあ動作中にピアノの音をギターの音に変えたいときはどうするんだよ!」

という話が出てこなかったので、その解法を書いてみます。

2.音を切り替える方法

流れは以下です。

  1. 音を止める
  2. 音を再割り当てする
  3. 音を鳴らす

専門用語はわからないのでこう言った表現でw

3.ソースコード

以下、AVAudioPlayerを利用します。また、Xcodeは7.1.1、Swiftは2.1です。

音を鳴らすまでのコードは

ピアノアプリ(SwiftPiano)を作ろう!追記:より短いコードで書くと。 | bick.xyz

を参考にさせていただいています。

  1. // 音を止める
  2. for var i: Int in 0...12 {
  3.     audioPlayers[i].currentTime = 0
  4.     audioPlayers[i].stop()
  5. }
  6. // 音の割り当てを消す
  7. pianoPlayer = nil
  8. audioPlayers.removeAll()
  9. for key in synthKeys {
  10.     // ファイルのパスを取得
  11.     let synthSoundURL = NSURL(fileURLWithPath:     NSBundle.mainBundle().pathForResource(key, ofType: "mp3")!)
  12.     do {
  13.         // 音を再割り当てする
  14.         pianoPlayer = try AVAudioPlayer(contentsOfURL: synthSoundURL)
  15.         pianoPlayer.prepareToPlay()
  16.         audioPlayers.append(pianoPlayer)
  17.         print("成功")
  18.     }
  19.     catch {
  20.         // 失敗
  21.         print("ぬああああああああ")
  22.     }
  23. }

ネットに情報がなかったのは、audioPlayers.removeAll()で一度全部消してしまうところで、audioPlayers.removeAll()を行わずに再度音を割り当てを行ってもうまくいかなかったのです。

あとは音色の異なるファイルを複数用意し、ボタン操作などでピアノからギターやベースなどへ音色を切り替えることが可能になります。

4.おわり

以上です。所詮勉強中の身ですので、将来的には別の方法に変える可能性があることは付記しておきます。

とりあえず直近の課題は早々にiOS端末を入手することです。


iPhoneのゲームアプリをつくろう!

拍手[0回]

Objective-C始めたんだけどHelloWorldで詰んだ

1.はじめに


MacBookAirを買いました。
10年来のWindowsユーザーなので、初めての体験中です。

2.実はAppleの製品を所有するのは初めてです


iPhoneだとかiPodだとか、いろいろな製品があったのですが、今までAppleの製品を買ったことがなかったんです。
たまに、持ってそうとは言われることもあるのですが、持ってなかったんです。

というわけで、初Apple製品。

最近はゴールドのiPadが欲しいとかなんとか・・・。

これとかこれとか見たら欲しくなるでしょう。
iOSでSC-88proとか、ついに来たか( ゚д゚ ) ガタッって感じですよ。

と、話はさておき、初めて買った記念すべきMacBookAirです。
整備品の割引品なんですが、注文してすぐ来るって林檎さんお仕事早いです。

3.Objective-CってどこがCなんですか・・・


というわけで、早速Xcodeをダウンロードしてインストールしました。
Xcodeというのは、iOSやMac用ネイティブアプリの開発環境。
WindowsでいうVisual Studioみたいなものです。

※ちなみにWindowsでアプリ開発を行いたい方がこのページをご覧になっていたら、6万円相当の開発環境を無料で入手できるVisual Studio Community 2013を今すぐチェック。

生まれてこの方、C言語とMFCとPHPをかじったぐらいしか知らないので、Objective-Cってのも初めての体験。
お約束のHello Worldから始めます。

が。

Hello Worldを表示させる時点でもうまったく意味不明なコードなんです。

iOSアプリ開発初心者に捧ぐ開発環境Xcodeの概要とインストール (4/4) | @IT

この時点ですでに謎過ぎる。
知ってる言葉が何一つない。

と。

池袋のブックオフにXcode関連の書籍が安く売ってたので買っておけばなぁと後悔中です。
今度東京行ったときに寄って買ってくるかもしれない。

4.近いうちにapp.cyber-rainforce.netというページを立ち上げたいです


アプリメインの話題は今後そちらで展開したいので、そういうサブドメインを作る予定です。
ただし、現状ではページ立ち上げ以前に右も左も良くわからないので困った(´・ω・`)

関連記事


さくらのインターネットで取得したドメインにサブドメインを追加する方法

拍手[0回]

Windows用ブログ記事管理アプリを作りたい!

1.はじめに


今日は思いつきで始まり、たぶん1日で忘れてしまう記事。
ブログ記事管理アプリを作りたいのです。

2.作りたいと思った経緯


ご覧の通り、現状でこのブログの更新に力を入れております。
それで、どちらも記事数が100記事超とだいぶ増えてきました。

そうなると、過去に書いた記事とかの管理がめんどうになってくるのです。

・・・端的に書くと、前に書いた記事を忘れる笑

ので、関連記事を貼ろうにも同じ記事だけになってしまってるという。

ということで、Windows上のオフラインで、前に書いた記事を簡単にチェックしたりできる機能を持ったアプリがあったらなーと思ったのです。

3.ざっくりとこんな機能が欲しい


とりあえず欲しい機能を考えてみる。
要求仕様決めってところです。

  • オフラインで各記事をストレス無く閲覧できること
  • 日付やカテゴリで記事を管理できること
  • ついでにURLも管理できたり
  • 記事検索機能
  • ファイル入出力

などなど?

冷静に考えると1記事200文字程度だとしても、100記事あったら20,000文字。
記事数が多くなるほど、結構ファイル大きくなりそう。

ついでに関連記事リストを自動で抽出できるぐらいに頭よければ良いけど、それは頭良すぎなのでちょっとむずい。
まずは、カテゴリ別にストレス無しに閲覧できれば良いと思う。

あ、もちろんアプリ上で記事執筆もできるのがいい。
HTML形式で出力できれば、忍者のエディットボックスにソースごと貼り付けるだけで済むもんね。

ちなみに言語としてはC#で作るのが良いのかな?
C#は使ったこと無いんだけど、覚える機会としてちょうどいいのかも。

4.結構時間がかかりそう


趣味で作るにしては結構めんどうかも。
でも作れたら便利で物書きが捗りそうなので、ちょっと考えます。

以上、ひとりごと。
続きがあったらまた書きます。

正直作ってみたいアプリはいっぱいあるんだけど、なにぶん気力が無くて何も進まない(だめ人間
そもそも、冬ボで買ったVisual Studio 2012を壊れかけのvostro 1200に入れたのが運の尽きなんだな、きっと。

AeroslimはDTM専用機になるはずだったんだ・・・。
いつの間にか株取引マシンになってる説。

関連記事

忍者ブログにタグ付けをしてみる
Aero Slimイヤッッホォォォオオォオウ


擬似タグ : /忍者ブログ | /プログラミング | /日常のお話

拍手[0回]

スポンサーリンク

PR

ブログ内検索

記事書いてる人

運営者:
さいれほ@planet_f108
30代個人事業主のDTMerで3104式の中の人。

音楽以外にはお金の話が好き。株式投資や投資信託もやってるよ。
マイクロ法人立ち上げを目指し、脱雇われ人の道を模索中。

活動域は青森県八戸市周辺。一緒にお仕事しましょう。

プロフィール詳細はとちにすいはら式+についてをご覧ください。

バトルモード3

2016年春M3の企画はバトルモード3!!


ついったー

お問い合わせフォーム

筆者の知識や経験であなたの力になれますか?

必要事項をご記入の上、送信ボタンをクリックすると、運営者宛にメールが送信されます。

ブログ内リンク

レビュー・改造系記事まとめリンク レビュー・改造系記事まとめリンク
PC・トイカメラなどのレビュー記事リストです。

DTM機材レビュー記事まとめリンク DTM機材レビュー記事まとめリンク
DTM機材に関するレビュー記事リストです。

クラブ関連記事まとめリンク集 クラブ関連記事まとめリンク集
音楽を流すクラブにいってきた話まとめ。

トラブル・お悩み解決系記事まとめリンク トラブル・お悩み解決系記事まとめリンク
ソフトのインストールなどで躓いた記事リストです。

サイト作り系まとめリンク サイト作り系まとめリンク
サイトのアクセス増、ユーザビリティに関する記事リストです。

忍者ブログカスタマイズまとめリンク 忍者ブログ運用術から収益化まで
忍者ブログ運用術から収益化までをまとめた記事リストです。

雅楽の舞改めポーチュラカリア成長記事まとめリンク 雅楽の舞改めポーチュラカリア成長記事まとめリンク
2011年から育てている雅楽の舞に関する記事リストです。

とちにすいはら式+アクセスアップ経過記録まとめリンク とちにすいはら式+アクセスアップ経過記録まとめリンク
本ブログのアクセス推移を記録した記事リストです。

お金持ち本まとめリンク お金持ち本まとめリンク
筆者が読んだお金持ち本あれこれまとめリンク。

無職関連の記事まとめリンク 無職関連の記事まとめリンク
無職関連の記事リストです。

スマホでUSENの記事まとめリンク スマホでUSENの記事まとめリンク
スマホで使える有線放送まとめ。データ量も測ってみました。

最新コメント

[01/20 かんりにん]
[01/20 シモハチ]
[04/03 かんりにん]
[04/01 シン]
[04/01 かんりにん]

フリーエリア

QRコード

とちにすいはら式+

サイトご利用上の注意

ブログ記事の著作権はとちにすいはら式+にあります。 引用される際には、必ず引用元として弊ブログのURLも記載していただくようお願いいたします。 記事の一部もしくは全ての無断転載はご遠慮ください。

記事を参考にされる際には、自己責任にてお願いいたします。