Я использую пример приложения Tenorflow для обнаружения объектов для Android, и я хочу, чтобы он произносил вслух каждый обнаруженный объект на арабском языке, но поскольку у TextToSpeech нет арабского, я записал файлы .mp3 и сохранил их в папке активов, но это не так.не запускать звуксделайте что-нибудь.
действие, от которого я пытаюсь запустить аудио, называется DetectorActivity, и оно расширяет класс CameraActivity, звук в некоторой степени воспроизводится из CameraActivity, возможно, потому что у него есть R.layout.activity_camera иDetectorActivity - нет, просто чтобы указать, что DetectorActivity - это действие, но CameraActivity - это просто класс, расширяемый DetectorActivity и имеющий макет.
DetectorActivity.java
public class DetectorActivity extends CameraActivity implements OnImageAvailableListener {
runInBackground(
new Runnable() {
@Override
public void run() {
for (final Classifier.Recognition result : results) {
final RectF location = result.getLocation();
if (location != null && result.getConfidence() >= minimumConfidence) {
String category = result.getTitle();
playBeep(category);
}
}
}
)
public void playBeep(String filename) {
MediaPlayer m = new MediaPlayer();
try {
if (m.isPlaying()) {
m.stop();
m.release();
m = new MediaPlayer();
}
AssetFileDescriptor descriptor = getAssets().openFd(filename + ".mp3");
m.setDataSource(descriptor.getFileDescriptor(), descriptor.getStartOffset(), descriptor.getLength());
descriptor.close();
m.prepare();
m.setVolume(1f, 1f);
m.setLooping(true);
m.start();
} catch (Exception e) {
e.printStackTrace();
}
}
}