我正在写一个媒体播放器,我想有一个进度条显示这首歌的进展.我找到了ProgressBar类,但我可以在屏幕上看到的是一个圆形旋转图标.我正在寻找的是一个真正的酒吧.
如何将ProgressBar的样式更改为条形(不是圆形)以及如何将其与MediaPlayer一起使用?
谢谢
我正在使用媒体播放器.
我可以选择启动,停止和暂停播放器.我遇到的问题是我找不到从之前暂停的那一点恢复歌曲的选项.
任何帮助提供将是非常有帮助的.
有没有人尝试使用ExoPlayer来实现这一目标?我尝试在线查看但没有成功.
当我说无缝播放时,我指的是使用媒体播放器背靠背播放本地视频的问题.在完成第一个视频播放后,在第二个视频开始之前会有明显的1秒延迟.
希望这个问题有助于进一步理解这个问题.如需参考,请查看以下问题:
android media-player android-video-player android-mediaplayer exoplayer
在活动中的线程或服务中的线程中放置冗长的网络访问代码有哪些优点/缺点?它会如何影响应用程序?我正在编写流媒体音频播放器,从我到目前为止所读到的内容中将代码放入服务中仍然会阻止应用程序,因此需要一个新的线程,是否有人知道放置这段代码是否更有意义在服务中.
在环顾四周寻找一个体面的图书馆用Java播放视频之后,我已经不知所措了.周围的每个人都在尖叫不要使用JMF,因为它已经过时,过时而且需要用户安装它,其他替代品如VLCJ似乎很好,如果它们工作但仍然相对不稳定并依赖大量本机代码,并且至于处理DVD,在免费图书馆看起来像金尘!
基于以上(或其他任何你能想到的),人们会推荐哪些选项,还有其他任何我错过的合理选择吗?或者其他任何人认为可能在不久的将来可用?
我需要播放多个音频文件,持续时间不同,如5到30秒.我想为右/左声道独立设置音量,也可以应用效果,如Reverb或Distortion.那么,我应该使用哪种API?
另外,我在AudioTrack API上找不到太多的文档.你知道我在哪里可以找到例子吗?谢谢.
我正在尝试使用以下内容在程序的后台进行简单的mp3播放:
Media med = new Media(getClass().getResource("intro.mp3").toExternalForm());
MediaPlayer mPlayer = new MediaPlayer(med);
mPlayer.play();
Run Code Online (Sandbox Code Playgroud)
intro.mp3文件与其他.class文件一起放在我的包的bin文件夹中.
问题是我的程序终止于:
Exception in thread "main" java.lang.IllegalStateException: Toolkit not initialized
Run Code Online (Sandbox Code Playgroud)
完整终止日志是:
Device "Intel(R) HD Graphics Family" (\\.\DISPLAY1) initialization failed :
WARNING: bad driver version detected, device disabled. Please update your driver to at least version 8.15.10.2302
Exception in thread "main" java.lang.IllegalStateException: Toolkit not initialized
at com.sun.javafx.application.PlatformImpl.runLater(PlatformImpl.java:153)
at com.sun.javafx.application.PlatformImpl.runLater(PlatformImpl.java:148)
at javafx.application.Platform.runLater(Platform.java:52)
at javafx.scene.media.MediaPlayer.init(MediaPlayer.java:450)
at javafx.scene.media.MediaPlayer.<init>(MediaPlayer.java:365)
at PokerApp.<init>(PokerApp.java:33)
at PokerApp.main(PokerApp.java:105)
Run Code Online (Sandbox Code Playgroud)
根据问题的原因,任何人都有任何想法吗?
编辑 - 找到一个简单的5-10线解决方案!看下面我自己的答案!好极了!!!!!!!!!
我搜索了5个小时,数十个SO帖子,没有答案,这似乎是最简单明显的怪异事!
编辑顺便说一句,这不是一个音乐播放器的应用程序,只是一个应用程序来查看图片和文本,打开多个活动,如菜单和关于,查看差异类型的图片等.我只想播放一些简单的背景音乐,同时通过图片看和文字,为什么这么难?
另一个编辑 - 似乎主要的问题是:"为什么按下主页按钮不打开onPause或onStop ???" - 我可以知道何时停止媒体播放器?我在市场上下载的游戏怎么做到这个???
家庭活动开始
然后
媒体播放器开始:
player = MediaPlayer.create(this, R.raw.idil);
player.setLooping(true);
player.setVolume(100,100);
player.start();
Run Code Online (Sandbox Code Playgroud)
玩家在onCreate之外宣布
MediaPlayer player;
Run Code Online (Sandbox Code Playgroud)
当其他活动被打开时,背景音乐继续不间断,这很好,这就是我想要的.
现在,当我完成了我非常简单的应用程序(只显示差异活动中的一些图片和文本)时,我要么多次单击BACK以进入主页/原始活动,然后又一次"退出",或者,我只是按回家"退出",因为我已经完成了这个应用程序,我不再需要听到那个音乐了.
选项1
通话player.stop();中的onPause覆盖,这是不是我想要的,因为当我离开家的活动像"菜单"和"约",我也没有什么用暂停和打开新的活动的时候,因为我做恢复等活动的背景音乐停止不希望漂亮的背景音乐"跳过"或被打断.
方案2
@Override
protected void onPause() {
super.onPause();
if (this.isFinishing()){
player.stop();
}
}
Run Code Online (Sandbox Code Playgroud)
这是更好的,因为背景音乐不会在活动之间停止,当我从我的家庭活动按BACK时,音乐停止,我可以继续享受安卓的安卓手机,但问题是,当按下HOME时按钮"退出"我的应用程序,那讨厌的背景音乐继续播放.
奇怪
@Override
protected void onStop() {
super.onStop();
if (this.isFinishing()){
player.stop();
}
}
Run Code Online (Sandbox Code Playgroud)
与onPause相同(我确实理解实际的差异)
编辑 - 这似乎没关系,如果player.stop(); 高于或低于super.onStop(); 但它影响我无法看到的东西,无论哪种方式,仍然没有解决方案:(
OOOOO
OOOOO
编辑 - 另一个选项 - 但不工作
public void onUserLeaveHint() { …Run Code Online (Sandbox Code Playgroud) 我正在创建包含2个按钮的Android应用程序,点击每个按钮播放一个mp3文件.问题是当我播放button1它时播放sound1,当我点击button2播放时sound2.
我检查其他玩家的每个按钮是否正常工作,我停下来播放点击的按钮
但是,如果我点击两次相同的按钮,它会在后台播放第一个音频并再次播放另一个音频
我试图检查isPlaying()并停止它,但它不起作用!
我想如果我点击button1它播放sound1,如果再点击它就停止它并从头开始再次播放.
我的代码:
package com.hamoosh.playaudio;
import android.app.Activity;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class PlayaudioActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button b= (Button) findViewById(R.id.button1);
Button b2= (Button) findViewById(R.id.button2);
final TextView t= (TextView) findViewById(R.id.textView1);
final MediaPlayer mp = MediaPlayer.create(PlayaudioActivity.this, R.raw.far); …Run Code Online (Sandbox Code Playgroud) 我跟着这个播放流媒体广播在Android中
在这里它的工作精细但播放器加载位慢点击后我需要等待30秒以上的时间
但是我在控制台中收到此错误
MediaPlayer: setDataSource IOException happend :
java.io.FileNotFoundException: No content provider: http://www.example.com:8000/live.ogg
at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1074)
at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:927)
at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:854)
at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1087)
at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1061)
at org.oucho.radio.Player.playLaunch(Player.java:237)
at org.oucho.radio.Playlist.onPostExecute(Playlist.java:98)
at org.oucho.radio.Playlist.onPostExecute(Playlist.java:35)
at android.os.AsyncTask.finish(AsyncTask.java:632)
at android.os.AsyncTask.access$600(AsyncTask.java:177)
at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:645)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:145)
at android.app.ActivityThread.main(ActivityThread.java:5951)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1400)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1195)
Run Code Online (Sandbox Code Playgroud)
在链接中您可以看到所有文件,如播放器等
由于此错误,我的流很慢.请任何人帮我这个类型
这里的错误不是.ogg我试过的文件.mp3和Just/live
http://www.example.com:8000/beet.ogg
http://www.example.com:8000/mouthorgan.mp3
http://www.example.com:8000/live
Run Code Online (Sandbox Code Playgroud)
音频正在播放但是在这个错误之后它需要大约30秒的时间有时需要花费太长时间....当我播放它显示此错误然后它连接到服务器..并且播放
请帮我解决这个问题
media-player ×10
android ×8
java ×2
api ×1
audio ×1
audiotrack ×1
background ×1
exoplayer ×1
javafx-2 ×1
progress-bar ×1
radio ×1
service ×1
stream ×1
video ×1