Làm thế nào để làm cho Android phát nhạc đáng tin cậy, mà không bị chặt?


10

Khi tôi cố gắng phát nhạc trên Android 2.3 (sử dụng nhiều trình phát khác nhau, bao gồm PowerAmp) trên Sony Ericsson Xperia X10, tôi nhận được âm thanh không đáng tin cậy. Âm nhạc tạm dừng trong một thời gian ngắn, ví dụ, khi:

  • Tôi nhấn nút nguồn (đặc biệt là lặp đi lặp lại) ( request_suspend_state: sleep;request_suspend_state: wakeupbằng dmesg)
  • Khi tôi thấy tin nhắn như send sigkill to 15497 (ndroid.settings), adj 8, size 6428trong dmesg
  • Khi một số chương trình phản ứng với thay đổi hướng màn hình.
  • Khi kết nối wifi được thiết lập, khi tôi buộc nó phải "liên kết lại"
  • Khi tôi đi đến / từ ứng dụng từ màn hình chính (AWDLauncher), ngoại trừ đến / từ màn hình WidgetLocker.
  • Khi tôi bật / tắt Chế độ trên máy bay.
  • Khi màn hình tắt (khó chịu nhất)

Khi chỉ có cách phát nhạc thực sự ổn định là sử dụng StayAwake để bật hiển thị, tắt Wi-Fi, bật Chế độ trên máy bay và không chuyển đổi ứng dụng. Việc khởi động CPU như thế while true; do true; donenào không ảnh hưởng đến việc băm nhỏ.

Và nó đã chơi tốt hơn hoặc ít hơn trên Android 2.1.

Quá trình "trung gian" (ghi vào / dev / msm_pcm thừng) có io thời gian thực và ưu tiên lập lịch, nhưng dù sao âm thanh cũng bị chói. Nếu tôi bắt đầu chơi từ bảng điều khiển với mplayer -ao pcm:file=/dev/msm_pcm_outâm thanh nhỏ hơn (đáng chú ý là nó không bị gián đoạn bởi nút nguồn / tải các quá trình nặng), nhưng vẫn hoạt động không bình thường khi màn hình tắt (thậm chí ionice -c1 -p4 cat /dev/urandom > /dev/msm_pcm_outlà bị giật)

Khi tôi bắt đầu phát nhạc A bằng cách thông thường và nhạc B sử dụng mplayer để / dev / msm_pcm thừng (làm cho chúng bị trộn lẫn) âm nhạc A phát ra nhiều hơn bình thường và tôi thường nghe thấy B khi A bị chặt. Khi tôi tắt màn hình, cả hai A và B đều đồng bộ hóa (dừng B dẫn đến phát lại A tương đối trôi chảy hơn theo cách này).

Làm cách nào để phát nhạc trên Android một cách đáng tin cậy khi có tải nền? Tôi có nên báo cáo lỗi ở đâu đó không?

Cập nhật Tìm thấy một cách chơi nhạc. Bất tiện, nhưng không chặt :

  1. Bắt đầu WakeLock ở chế độ "CPU bật, Tắt màn hình, Tắt bàn phím"
  2. Sử dụng mplayer để phát nhạc bỏ qua Android:
ionice -c1 -n4  \
  schedtool -R -p 3 -e \
  mplayer -really-quiet \
        -af volume=-26 -quiet \
        -ao pcm:file=/dev/msm_pcm_out,nowaveheader \
    /mnt/sdcard/music/something.ogg
# (created script to start it easily, of course)

Chơi mà không cắt bất kể tôi khởi động bao nhiêu ứng dụng, làm gì với chế độ Wifi, định hướng và máy bay. Ngay cả với thống đốc cpufreq "powersave" (mọi thứ rất chậm, nhưng âm nhạc vẫn chơi tốt). Vì vậy, phần cứng có đủ tài nguyên để chơi nó.

Cập nhật 2 Hình như đang làm

for i in `pgrep ''`; do schedtool -D $i; done

tức là "Đặt mức độ ưu tiên nhàn rỗi cho tất cả các quy trình" giúp âm nhạc phát tốt ngay cả khi tôi {khởi động chương trình, khóa màn hình, xoay màn hình; nó kết nối lại với các trạm mạng di động khác} với chi phí của một số độ trễ đầu vào trong trò chơi. Không biết chính xác tại sao nó xảy ra.


bạn có thiết bị gì? Âm thanh như nó rất hạn chế tài nguyên. Có lẽ một ROM tùy chỉnh nhanh và nhẹ sẽ cải thiện hiệu suất.
Dòng chảy

Sony Xperia Xperia X10. "Tài nguyên bị hạn chế" nghĩa là gì? Nó nên ưu tiên phương tiện truyền thông hơn các hoạt động thông thường, cho phép phát lại thành thạo một cách độc lập về mức độ tải nền. Ngoài ra, việc cố gắng gây ra tải bằng cách sử dụng rõ ràng các ứng dụng nặng làm hỏng CPU và bộ nhớ không dẫn đến âm thanh bị vỡ trong khi chỉ liên kết lại Wifi luôn tạo ra tiếng kêu. Ngoài ra, nó chơi tốt hơn hoặc ít hơn trên Android 2.1
Vi0

Âm nhạc chơi tương tự ngay cả khi tôi buộc thống đốc cpufreq powersave (và CPU tải không đẹp là khoảng 20% ​​trong trường hợp này). Tài nguyên nào có thể ngắn?
Vi0

Từ những gì tôi có thể đọc từ ý kiến ​​bổ sung của bạn: không có. Và tôi cũng chưa bao giờ nghe nói rằng X10 có vấn đề chung về phát lại âm thanh.
Lưu lượng

Bao gồm sau khi cập nhật lên Android 2.3?
Vi0

Câu trả lời:


0

Hãy thử tắt mọi ứng dụng hoặc phần cứng sử dụng nhiều tài nguyên của điện thoại. Tắt GPS, WIFI, Dịch vụ mạng và làm mờ đèn nền. Đồng thời tắt mọi ứng dụng đang chạy khác ngoài những ứng dụng bạn cần để phát nhạc. Nếu điều này vẫn không hoạt động, thiết bị của bạn có thể không có đủ bộ nhớ.


Trông giống như một lời khuyên chung chung, không phải là một giải pháp / cách giải quyết cho lỗi. Tôi đã thử các chế độ khác nhau (được mô tả trong câu hỏi). Kẻ giết người OOM chỉ là một trong những điều gây ra lỗi.
Vi0

0

Tăng Audio Bufferkích thước của bạn .

Tôi sử dụng PlayerPro Music Player với gói DSP của nó. Gói DSP cho phép tôi điều chỉnh kích thước bộ đệm âm thanh. Tôi không bao giờ cần sử dụng tính năng này, nhưng nó sẽ giúp bạn.

Bạn cũng có thể tìm các trình phát nhạc khác để hỗ trợ tính năng này. Điều quan trọng là Audio Buffer.

Ngoài ra, bạn có thể giảm chất lượng âm nhạc cũng như tải hệ thống.


Ít nhất là thiết lập kích thước bộ đệm tối đa trong trình phát Mixzing không giúp ích gì.
Vi0

1
"giảm chất lượng âm nhạc cũng như tải hệ thống" -> cách khắc phục, không khắc phục. Tôi đã có cách giải quyết hacky (xem "Cập nhật")
Vi0
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.