【Mac】簡単にC++上から音声(MP3)を再生する

私はMacC++言語を使ってプログラムをしていた。その時、音を出したい場面に遭遇した!

結論:

system関数を使って外部の音声再生プログラムを呼び出して再生するのが一番簡単なようだ...
Macでは標準でafplayコマンドが利用可能であり、引数にファイル名を指定することによってメディアが再生できる。

#include // system関数を利用するためにcstdlibをインクルード

int main() {
system("afplay filename.mp3"); // filename.mp3を再生
}

非同期で再生する場合は&を付けると良いようだ。

system("afplay filename.mp3&"); // filename.mp3を非同期再生

afplayコマンドはオプション次第で再生速度や音量なども変えることができます。

実際は、OpenALと呼ばれるオーディオライブラリがあるので、バリバリオーディオ関係使う場合はこちらを使うのかな。(そもそもC++で高レベルにオーディオ触るのは辛い気がする笑)

ちなみにWindowsだとDirectXサウンド機能を使って簡単に再生できるみたいです。

SourceTree で Invalid username or password. が出た時の対処

SourceTree でファイルをPush するときに、パスワードを求められた。
ここで間違ったパスワードを入力すると、以降、以下のエラーが永遠と出るようになる。(パスワードの再入力画面が勝手に開かない...)


remote: Invalid username or password. If you log in via a third party service you must ensure you have an account password set in your account profile.

解決策:

Read more

背景差分とフレーム差分の違い

画像処理における背景差分とフレーム差分の違いのメモです。


背景差分:
・何も写り込んでいない背景画像を元に差分をとる手法。

フレーム差分:
・複数の画像を比較しながら差分をとる手法。


ざっくりですので、補足を是非コメントに書いて頂けると...

IoTとユビキタスコンピューティングの違い

違いがいまいちわからなかったので整理します。


結論:

  • IoT

あらゆるものがインターネットに繋がるという「概念」

コンピュータをあらゆるモノに内臓し、役立てていこうという「概念」

つまり:
IoTはモノを中心に、ユビキタスはコンピュータを中心に考えているのではなかろうか。


以下、定義など:

Wikipediaによると・・・

モノのインターネット(IoT)の概念はユビキタスと同じであり、TRONが元祖であることを坂村健は主張している。
Wikipedia ユビキタスとIoT

一緒かーい笑。もう少し調べてみる。

IoTとは?

Internet of Things(モノのインターネット)の頭文字で、自動車や家電など身の回りのあらゆるものがネットにつながるという考え方。機器の遠隔操作などができるようになる。ただ、ネットを介してウェブカメラの映像を見られたり、データを盗み取られたりするリスクも生じ、パスワード設定などのセキュリティー対策が重要になる。
朝日新聞掲載「キーワード」の解説

ユビキタスとは?

あらゆるものにコンピューターが内蔵され、いつでも、どこでもコンピューターの支援が得られるような世界や概念を指す。語源はラテン語で、いたるところに存在する(遍在)という意味。インターネットなどの情報ネットワークに、いつでも、どこからでもアクセスできる環境が整えば、場所にとらわれない働き方や娯楽が実現できるようになるとされる。ユビキタス・コンピューティングともいう。ユビキタスの一分野に、人がコンピューターを身につける方法を研究するウェアラブル・コンピューターがある。
朝日新聞掲載「キーワード」の解説


少なくとも大きな違いはなさそうです。

人工知能の到来で、私たちの生き方はどのように変わるのか。

というタイトルの講演会がうちの大学でありましたので、その感想を書きます。


人工知能について広く解説されていたのですが、自分がキーポイントだと感じたのは次の2点です
人工知能が暖かい心をもつか(ホスピタリティ面)
② 高度な人工知能の前に人間はどうすることができるか

①について
人工知能の研究で先端を行くアメリカや中国で最も重視されていることは最適な解を出す人工知能をつくることだそう。たとえば目的地に行くための最適なルートであったり、患者の病気を当てたりなど。
これはこれで役に立ちそうだが、この人工知能に地球の環境を改善するにはどうしたら良いかと質問するとどんか回答が返ってくるだろうか。高確率で「人間を滅亡させると良い」という回答が返ってきそうだ。そういった意味では人工知能に人間のような心を持たせる必要性があると先生はおっしゃられていた。
そこで鍵になってくるのが「日本」と先生。何故なら日本には鉄腕アトムドラえもんなど暖かい心をもつロボットが好きで人工知能の研究をされている研究者が多いからだという。私もドラえもんのようなロボットと一緒に暮らせるような未来にはわくわくするし、そういったロボットを作り出せるような技術者になりたいと改めて強く思った。

②について
高度な人工知能によって多くの仕事がなくなる未来。そこでの鍵は「個人性」「創造性」「不合理な判断」「協業」だと先生は語った。ここで面白いと感じたのは人工知能と人の「協業」というもの。先生は以下のチェスの対戦ついてお話しされた。

Aチーム:パソコンが得意でないがチェスの強いプレイヤ+強力なコンピュータ
Bチーム:チェスが得意でないハッカー+強力なコンピュタ

が勝負するとどちらが勝つか。結果はBだったそう。チェスが強くなくてもコンピュータと協業できた方が強かったそうだ。

もっとコンピュータと仲良くなりたいと思った笑



それではまた.

人工知能の到来で、私たちの生き方はどのように変わるのか。

というタイトルの講演会がうちの大学でありましたので、その感想を書きます。


人工知能について広く解説されていたのですが、自分がキーポイントだと感じたのは次の2点です
? 人工知能が暖かい心をもつか(ホスピタリティ面)
? 高度な人工知能の前に人間はどうすることができるか

?について
人工知能の研究で先端を行くアメリカや中国で最も重視されていることは最適な解を出す人工知能をつくることだそう。たとえば目的地に行くための最適なルートであったり、患者の病気を当てたりなど。
これはこれで役に立ちそうだが、この人工知能に地球の環境を改善するにはどうしたら良いかと質問するとどんか回答が返ってくるだろうか。高確率で「人間を滅亡させると良い」という回答が返ってきそうだ。そういった意味では人工知能に人間のような心を持たせる必要性があると先生はおっしゃられていた。
そこで鍵になってくるのが「日本」と先生。何故なら日本には鉄腕アトムドラえもんなど暖かい心をもつロボットが好きで人工知能の研究をされている研究者が多いからだという。私もドラえもんのようなロボットと一緒に暮らせるような未来にはわくわくするし、そういったロボットを作り出せるような技術者になりたいと改めて強く思った。

?について
高度な人工知能によって多くの仕事がなくなる未来。そこでの鍵は「個人性」「創造性」「不合理な判断」「協業」だと先生は語った。ここで面白いと感じたのは人工知能と人の「協業」というもの。先生は以下のチェスの対戦ついてお話しされた。

Aチーム:パソコンが得意でないがチェスの強いプレイヤ+強力なコンピュータ
Bチーム:チェスが得意でないハッカー+強力なコンピュタ

が勝負するとどちらが勝つか。結果はBだったそう。チェスが強くなくてもコンピュータと協業できた方が強かったそうだ。

もっとコンピュータと仲良くなりたいと思った笑



それではまた.