2012-05-12 25 views
6

Mặc dù ứng dụng hoạt động như mong đợi, tôi nhận được thông báo trong bảng điều khiển mà tôi muốn hiểu chi tiết hơn.AudioQueue cắt tỉa và kích thước bộ đệm

Thiết lập như sau. Một AVAudioPlayer được tạo ra và một tập tin .m4a (03:22 chiều dài và 618 KB trong kích thước) được nạp. Tệp có tốc độ bit là 23 kbps. Tôi nhận thấy rằng tốc độ bit rất thấp, nhưng điều này là chấp nhận được đối với ứng dụng.

Bất cứ khi nào, tôi điều chỉnh thuộc tính currentTime của trình phát âm thanh, tôi nhận được thông báo sau được ghi vào bảng điều khiển.

AudioQueue: Yêu cầu để cắt 2112 + 0 = 2112 khung hình từ bộ đệm chứa 1024 khung

Kết quả của việc thiết lập thuộc tính currentTime được như mong đợi, nhưng tôi tự hỏi thông điệp gì này có nghĩa là chính xác và những gì Tôi có thể làm để ngăn nó hiển thị.

+0

Tôi cũng nhận này và rất thích biết lý do. Bạn đã bao giờ tìm ra? – Marky

+0

Thật không may, tôi không tìm thấy câu trả lời hoặc thậm chí là một gợi ý của câu trả lời cho câu hỏi này. –

Trả lời

5

Làm việc cho tôi: Dừng trình phát trước khi thiết lập thuộc tính CurrentTime của nó. Sau đó đặt currentTime, PrepareToPlay và chơi.

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

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

+0

[Dừng trình phát] đã khắc phục lỗi này, nếu bạn không đặt thời gian hiện tại sau đó. Cảm ơn rất nhiều! – coco

Các vấn đề liên quan