2012-05-12 34 views
6

Uygulama beklendiği gibi çalışıyor olsa da, daha ayrıntılı olarak anlamak istediğim konsolda bir ileti alıyorum.AudioQueue kırpma ve arabellek boyutu

Kurulum aşağıdaki gibidir. Bir AVAudioPlayer oluşturuldu ve bir .m4a dosyası (03:22 uzunluk ve 618 KB boyutunda) yüklenir. Dosyada 23 kbps'lik bir bit hızı var. Bit oranının çok düşük olduğunu biliyorum, ancak bu uygulama için kabul edilebilir.

Ses oynatıcısının currentTime özelliğini ayarladığımda, konsolda aşağıdaki iletiyi günlüğe alırım.

AudioQueue: CurrentTime özelliğini ayarlayarak sonucu beklenen, ama bu mesajı tam olarak ve ne anlama geldiğini merak ediyorum gibi 1024 çerçeveleri

içeren tampon den 2112 +0 = 2.112 kare kesmek için istek Gösterilmesini engellemek için yapabilirim.

+0

Ben de bu alıyorum ve nedenini bilmek isteriz. Hiç öğrendin mi? – Marky

+0

Maalesef, bu soruya bir cevap veya hatta bir cevap bulamadım. –

cevap

5

Benim için çalıştı: currentTime özelliğini ayarlamadan önce oynatıcıyı durdur. Sonra currentTime'ı ayarlayın ,ToToPlay'ı çalıştırın ve oynatın.

[avAudioPlayer stop]; 
[avAudioPlayer setCurrentTime:newCurrentTime]; 
[avAudioPlayer prepareToPlay]; 
[avAudioPlayer play]; 

kaynak: http://eureka.ykyuen.info/2010/06/10/iphone-add-an-uislider-for-avaudioplayer/

+0

[player stop], daha sonra geçerli bir zaman belirlemezseniz bu hatayı düzeltir. Çok teşekkürler! – coco