0
現在、Gracenote SDKを使用してAndroidアプリを開発中です。 サンプルを聞いて音楽を識別したいので、開発者ガイドの99ページにあるすべての手順を実行しました(「ストリーミングの音楽を特定する」) マイクを初期化するときに問題が発生しました 私は、 (スマートフォンでの)アプリに許可を与える。Gracenote SDKを使用したオーディオレコードandroid
誰かが私を助けることができれば、私は喜んでいるよ。 をお読みいただきありがとうございました。
をここで私は、受信したエラーがある。
W/System.err: com.gracenote.gnsdk.GnException: Failed to initialize audio source
W/System.err: at com.gracenote.gnsdk.gnsdk_javaJNI.GnMusicIdStream_audioProcessStart__SWIG_0(Native Method)
W/System.err: at com.gracenote.gnsdk.GnMusicIdStream.audioProcessStart(GnMusicIdStream.java:89)
W/System.err: at com.musimap.trackproperties.GraceNoteTest$2.onClick(GraceNoteTest.java:115)
W/System.err: at android.view.View.performClick(View.java:5156)
W/System.err: at android.view.View$PerformClick.run(View.java:20755)
W/System.err: at android.os.Handler.handleCallback(Handler.java:739)
W/System.err: at android.os.Handler.dispatchMessage(Handler.java:95)
W/System.err: at android.os.Looper.loop(Looper.java:145)
W/System.err: at android.app.ActivityThread.main(ActivityThread.java:5832)
W/System.err: at java.lang.reflect.Method.invoke(Native Method)
W/System.err: at java.lang.reflect.Method.invoke(Method.java:372)
W/System.err: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399)
W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194)
に
マイコード
IGnMusicIdStreamEvents musicStreamEvent = new IGnMusicIdStreamEvents() {
@Override
public void musicIdStreamProcessingStatusEvent(GnMusicIdStreamProcessingStatus gnMusicIdStreamProcessingStatus, IGnCancellable iGnCancellable) {
Log.d("Processing", "yessir");
}
@Override
public void musicIdStreamIdentifyingStatusEvent(GnMusicIdStreamIdentifyingStatus gnMusicIdStreamIdentifyingStatus, IGnCancellable iGnCancellable) {
}
@Override
public void musicIdStreamAlbumResult(GnResponseAlbums gnResponseAlbums, IGnCancellable iGnCancellable) {
Log.d("album", gnResponseAlbums.toString());
}
@Override
public void musicIdStreamIdentifyCompletedWithError(GnError gnError) {
Log.d("error identification", gnError.toString());
}
@Override
public void statusEvent(GnStatus gnStatus, long l, long l1, long l2, IGnCancellable iGnCancellable) {
}
};
try {
mic = new GnMic();
streamMusic = new GnMusicIdStream(user, GnMusicIdStreamPreset.kPresetMicrophone, musicStreamEvent);
streamMusic.options().lookupData(GnLookupData.kLookupDataContent, true);
streamMusic.options().lookupData(GnLookupData.kLookupDataSonicData, true);
streamMusic.options().resultSingle(true);
} catch (GnException e) {
e.printStackTrace();
}
start.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mic.sourceInit();
try {
streamMusic.audioProcessStart(mic);
streamMusic.identifyAlbumAsync();
} catch (GnException e) {
e.printStackTrace();
}
}
});
そして最後に、私のマニフェスト:
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
サンプルアプリケーションを実行して認識をテストできましたか? – WYH
サンプルを使用しようとしましたが、アプリがバグすぎます。私は認識を開始することはできません。 – Huuusey
実際に私のクライアントIDのために私はそれを使用することはできません。ここに、私がログで受け取るメッセージがあります。 "ユーザ作成新規:現在のライセンスでサポートされていないクライアントID 'MYCLIENTID'、GCSLデータタイプ" – Huuusey