0

フォルダー内のオーディオファイルを特定の方法で表示することに焦点を当て、そのようなオーディオファイルを再生する機能を備え、再生の基本的な制御オプションを示す趣味のプロジェクトから始めたいと思います。しかし、私はこれに適したプログラミング言語を見つけるのに苦労しています。

表示部分はそれほど難しくないはずであり、おそらくほとんどのプログラミング言語で実行できます。オーディオ部分は、プロジェクトの主な焦点ではなく、限られた作業のみを行う必要があり(したがって、それほど難しくないはずです)、現在知っているプログラミング言語でのサウンドサポートについて何も知らないため、私が最も懸念している部分です。。(Java、CおよびC ++)

具体的には、次のことができるようにしたいと思います。

  1. サウンドファイルを再生する
  2. 再生中の曲を停止/一時停止します
  3. 音量を調整する
  4. 曲の現在位置を表示するバーを表示する

ほとんどのファイルは.mp3ファイルになりますが、他の形式を処理できることは確かにプラスです。これは小さなプロジェクトなので、 Windowsだけで実行しても問題ありません。スケーラビリティは素晴らしいですが、必須ではありません。

個人的な経験だけでなく、これらの単純なことをそれほど複雑ではない方法で達成できるプログラミング言語のオーディオサポート/オーディオライブラリの概要(私は常に新しいものを求めています)があると便利です。

このようにして、どのプログラミング言語が私のプロジェクトに最も適しているかをよりよく理解できるようにしたいと思います。(プロジェクトの途中で言語を変更する必要はありません)

-

編集:これは、最初の部分が成功した場合のプロジェクトの後の段階でのみ使用されます。表示されるオーディオファイルのファイル名を変更したいと思います。(特定の形式に従うようにするため)

4

2 に答える 2

2

私はオーディオ処理プログラムをあまり書いていませんが、CおよびC++用に多くのプログラムが存在することを知っています。Javaの場合もそうかもしれませんが、私はJavaを知りません。ゲームでSDLでオーディオを使用したことがありますが、それほど多くの機能がないため、お勧めしません。

Cのライブラリを求めるこの質問があり、SOが側に持ち出す同様の質問がいくつかあります。あなたはそれらを見てみたいと思うかもしれません。

また、さまざまなファイルタイプをロードするライブラリを探す必要があります。少なくともSDLは.wavファイルを開くだけで、ほとんどの再生ライブラリがサポートすると思います。MP3の場合、ほとんどの場合、追加のライブラリが必要になります。AudacityがLAMEMp3を使用していることを知っているので、それは良いことだと思います。

必要な機能のいくつかは、自分でも実行できます。たとえば、音楽の長さとすでに読んだ量がわかれば、オーディオのどこまで進んでいるかがわかります。音量の調整は、ライブラリが提供していない場合にオーディオデータに対して実行できる乗算(最も単純な場合)でもあります。

非常に良い選択は、Audacityで使用されているPortAudioのようであり、上記の質問の受け入れられた回答でも推奨されています。

于 2012-07-29T15:20:13.213 に答える
0

私はJavaとC++の両方でオーディオアプリを作成しました。Javaの開発は、より強力な言語であり、ガベージコレクションがあるため、はるかに高速ですが、JavaSoundはオーディオ用のかなりひどいソリューションです。もちろん、FFMPEGやその他のもののラッパーがあるので、多くのことを機能させることができます。Javaオーディオアプリの例を次に示します:http://www.indabamusic.com/help/mantis

OTOH、C ++は、多くの制御、低レイテンシー、豊富なライブラリーを提供します。(別の回答では、Portaudioについて言及されていますが、これは確かに素晴らしいことです。)しかし、開発サイクルもはるかに長いことは間違いありません。

あなたは確かにあなたがどちらの言語でもやりたいことをすべて行うことができます。

于 2012-07-29T23:10:34.603 に答える