标签: media-player

如何在确定模式下使用Android ProgressBar?

我正在写一个媒体播放器,我想有一个进度条显示这首歌的进展.我找到了ProgressBar类,但我可以在屏幕上看到的是一个圆形旋转图标.我正在寻找的是一个真正的酒吧.

如何将ProgressBar的样式更改为条形(不是圆形)以及如何将其与MediaPlayer一起使用?

谢谢

android media-player progress-bar

28
推荐指数
2
解决办法
7万
查看次数

如何恢复媒体播放器?

我正在使用媒体播放器.

我可以选择启动,停止和暂停播放器.我遇到的问题是我找不到从之前暂停的那一点恢复歌曲的选项.

任何帮助提供将是非常有帮助的.

android media-player

28
推荐指数
3
解决办法
4万
查看次数

Android ExoPlayer:它是否解决了Android Media Player的无间隙/无缝播放问题

有没有人尝试使用ExoPlayer来实现这一目标?我尝试在线查看但没有成功.

当我说无缝播放时,我指的是使用媒体播放器背靠背播放本地视频的问题.在完成第一个视频播放后,在第二个视频开始之前会有明显的1秒延迟.

希望这个问题有助于进一步理解这个问题.如需参考,请查看以下问题:

Android:MediaPlayer无缝或无缝视频播放

android media-player android-video-player android-mediaplayer exoplayer

28
推荐指数
1
解决办法
2592
查看次数

应用程序线程与服务线程

在活动中的线程或服务中的线程中放置冗长的网络访问代码有哪些优点/缺点?它会如何影响应用程序?我正在编写流媒体音频播放器,从我到目前为止所读到的内容中将代码放入服务中仍然会阻止应用程序,因此需要一个新的线程,是否有人知道放置这段代码是否更有意义在服务中.

service multithreading android media-player

27
推荐指数
1
解决办法
1万
查看次数

用Java处理视频(DVD,.avi .mkv)

在环顾四周寻找一个体面的图书馆用Java播放视频之后,我已经不知所措了.周围的每个人都在尖叫不要使用JMF,因为它已经过时,过时而且需要用户安装它,其他替代品如VLCJ似乎很好,如果它们工作但仍然相对不稳定并依赖大量本机代码,并且至于处理DVD,在免费图书馆看起来像金尘!

当前选项:

  • 现在JavaFX 2正在获得动力,这是我一直在认真研究的东西(因此我的问题在这里)但是到目前为止我没有运气试图弄清楚如何让它比标准的FLV视频更糟糕.
  • VLCJ的工作做得很好(参见我目前的答案),目前我正在努力.它使用libvlc来做任何事情,因为它可以播放几乎任何文件并且开箱即用DVD.最大的问题是你必须为每个玩家使用多个虚拟机才能使其稳定运行,这意味着响应速度相对较慢.我还没有这种方法在Mac上工作.
  • JMF是荒谬的过时,可怕的,就我而言,并不是一个真正的选择.我过去玩过它,经验不是很好!
  • FMJ表示这是JMF的替代下降.我还没有像我和其他大多数人那样让它发挥作用,这本身就让我对它的质量和理解感到厌倦,即使我设法让它发挥作用!
  • Xuggler非常适合它的功能,它有很棒的教程,而且编写得非常好.虽然它对于低级转码工作很有用,播放视频并以正确的顺序和同步等方式获取帧只是一个正常工作的噩梦,并再次添加更多代码,这意味着更多的维护,可能更多的错误等等...
  • 我还没有尝试过任何愤怒的GStreamer-Java,虽然它似乎不支持DVD播放(它是一个我正在研究的开源应用程序,所以商业插件也不是一个选项)并且它的编解码器支持不会似乎是最宽的.
  • JCodec是一项有趣的工作,是我见过的唯一一个从纯Java角度实现视频支持的工作 - 但目前缺乏对格式的支持,这是一个相对较新的项目.
  • 在我想要支持的每个平台的不同本地库中自己写一些东西.这是绝对的最后选择,因为它需要额外的维护和编码时间.

基于以上(或其他任何你能想到的),人们会推荐哪些选项,还有其他任何我错过的合理选择吗?或者其他任何人认为可能在不久的将来可用?

java api video media-player

27
推荐指数
1
解决办法
2万
查看次数

我应该使用AudioTrack,SoundPool还是MediaPlayer?

我需要播放多个音频文件,持续时间不同,如5到30秒.我想为右/左声道独立设置音量,也可以应用效果,如Reverb或Distortion.那么,我应该使用哪种API?

另外,我在AudioTrack API上找不到太多的文档.你知道我在哪里可以找到例子吗?谢谢.

audio android media-player audiotrack

27
推荐指数
4
解决办法
2万
查看次数

JavaFX:尝试通过MediaPlayer类播放mp3文件时未初始化"Toolkit"

我正在尝试使用以下内容在程序的后台进行简单的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)

根据问题的原因,任何人都有任何想法吗?

java media-player javafx-2

27
推荐指数
3
解决办法
3万
查看次数

Android停止背景音乐

编辑 - 找到一个简单的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)

android background media-player

26
推荐指数
1
解决办法
5万
查看次数

Android MediaPlayer停止和播放

我正在创建包含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 media-player

26
推荐指数
3
解决办法
9万
查看次数

Android媒体流错误?java.io.FileNotFoundException:没有内容提供者:http://

我跟着这个播放流媒体广播在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秒的时间有时需要花费太长时间....当我播放它显示此错误然后它连接到服务器..并且播放

请帮我解决这个问题

android stream radio media-player

26
推荐指数
3
解决办法
4万
查看次数