Android'de ses ile ilgili bir sorunum var.AAC biçimi Android içinde
Kısa Soru:
ben aac formatında bir bütün Android cihazları oynamak ve kayıt ses gerekir. API 10'dan başlamanın mümkün olduğunu buldum, ancak BLU aygıtımda (2.3.5), MediaRecorder
ve MediaPlayer
kullanarak çalışır. Ancak HTC Nexus One'da çalışmıyor. Herhangi bir öneriniz var mı?
Uzun soru:
kaydetmek ve ben aşağıdaki kodu kullanıyorum AAC formatında Ses Ekleme. Oldukça basit ve aptalca, ama test için çalışıyor.
String pathForAppFiles = getFilesDir()
.getAbsolutePath();
pathForAppFiles += "/bla.mp4";
if (audioRecorder == null) {
File file = new File(pathForAppFiles);
if (file.exists())
file.delete();
audioRecorder = new MediaRecorder();
audioRecorder
.setAudioSource(MediaRecorder.AudioSource.MIC);
audioRecorder
.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
audioRecorder
.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);
audioRecorder.setOutputFile(pathForAppFiles);
try {
audioRecorder.prepare();
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
audioRecorder.start();
} else {
audioRecorder.stop();
audioRecorder.release();
audioRecorder = null;
new AudioUtils().playSound(pathForAppFiles);
}
new AudioUtils().playSound(pathForAppFiles);
- MediaPlayer oluşturur ve dosyadan ses çalma;
Nexus üzerinde çalışmasını sağlamak için aac-decoder numaralı telefonu denedim - dosyayı sonuna kadar oynatmıyor (10 saniyelik dosyanın yalnızca 6 saniyesi oynatılıyor). Ve yukarıdaki kod tarafından kaydedilmiş ses çalmıyor.
Ayrıca, FFmpeg'i yüklemeyi denedim, ancak bu kitaplığı çalıştırmayı deneyimlemedim.
Bir şey önerebilir misin?
https://code.google.com/p/aacplayer-android/ –
aac-decoder, aacplayer'ın kısa bir sürümüdür. Sonuna kadar aac dosyası oynatmaz ve cihaza kaydedilen sesi çalmaz. – Yanny
Kısmi çözümler buldum. 1. Bazı cihazlarda ses çalınmıyor çünkü ben derectiory - data/data/com.myapp.player/files/music.aac dosyasından çalmaya çalışıyorum. 2. Bazı cihazlarda çalışmıyor ancak aacdecoder dosya sonuna kadar oynayabilir. Sadece AACPlayer aacPlayer = new MultiPlayer (clb, 200, 200); – Yanny