簡體   English   中英

Java Android:Mediaplayer自動消失

[英]Java Android: Mediaplayer fades automatically

我發現Android 4.4.2上的MediaPlayer似乎會自動淡入Audiofile。 我正在使用MediaPlayer播放不能淡入的聲音。它與帶有4.2.1的Smarthpone一起使用時效果很好,但是在帶有4.4.2的另一部手機上會出現淡入淡出。

我也看過SoundPool,但是它錯過了讓我知道File是否還在播放的功能。

我是否可以關閉自動淡入功能,還是需要使用Soundpool自己監視音軌的長度?

謝謝,VanDahken

您可以嘗試在開始播放之前設置AudioAttributes(AudioAttributes屬性)

 atrs = new AudioAttributes.Builder()
             .setUsage(AudioAttributes.USAGE_MEDIA)
             .setContentType(AudioAttributes.CONTENT_TYPE_MUSIC)
             .build();

嘗試玩CONTENT_TYPE

我有同樣的問題。 好消息是它可以在其他兩個Android版本上使用,因此希望只有4.4.2可以解決此問題。 我發現的第一個解決方案是使用未壓縮的音樂文件...(數據格式為LEI16的.wav),但是音樂文件太大。

我還發現,如果將音頻流類型設置為STREAM_RING,則似乎不會發生淡入,但這可能不是一個好主意,因為它是用於電話鈴響的。

對於我的應用程序,我只有一個關鍵位置(應用程序首次啟動時),音樂必須在播放時沒有淡入淡出,而我能夠解決此問題。 在音樂開始播放前,簡介需要花費幾秒鍾的時間,因此我正在做的是:

-prepareAsync()在簡介開始時

-然后在准備好之后,將Volume()設置為0f並啟動()

-然后,經過一小段延遲(對於我來說,這是最后幾秒鍾:完成應用程序簡介所需的時間),添加搜索監聽器和seekTo(0)

-搜索完成后,將音量設置為所需值

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM