Articles of 媒体播放器

Runnable中的上下文

我尝试播放R.raw的声音。 在一个线程/ Runnable内但我不能让它工作。 new Runnable(){ public void run(){ //这给了我一个NullPointerException,因为getBaseContext为null MediaPlayer mp = MediaPlayer.create(getBaseContext(),R.raw.soundfile); while(true){ 如果(某事) 发挥一些东西 } } 如何在run方法中获得真正的Context? 无论我尝试什么,它都是null。 或者有更好的方法吗?

音频记录输出的mimetypes设置为video

我写了一个简单的录音机程序。 我将输出格式设置为THREE_GP,但生成的文件的mimetypes设置为video(当我尝试查看文件详细信息时)。 知道为什么吗? mRecorder = new MediaRecorder(); mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC); mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC); mRecorder.setOutputFile(recordingFilePath);

即时解密音频/video到MediaPlayer

我一直在寻找几天,但无法得到如何做到这一点的明确答案。 我的SD卡上有一些加密的音频/video文件,我想将它发送到MediaPlayer,并在解密工作的同时开始播放。 它最初会创建一个缓冲区,当它有足够的初始数据开始播放时,MediaPlayer将开始播放,并在后台解密并继续发送数据。 我环顾四周,大部分解决方案似乎都指向了localhttpserver,然后将文件发送到服务器,当它返回时,它将开始播放音频/video,就像直播一样。 我不知道的是解密代码在哪里? 在服务器端? 如果是这样,在哪一部分呢? 我也看过这个http://libeasy.alwaysdata.net/解决方案,它可能能够解决它,但我似乎无法理解它是如何工作的。 我知道它创建了一个本地服务器,但在Cipher部分,我自己的解密如何发挥作用? private void myPlay(String path) { mServer = new LocalSingleHttpServer(); mServer.setCipher(myGetCipher()); mServer.start(); path = mServer.getURL(path); mVideoView.setVideoPath(path); mVideoView.start(); } public void onCompletion(MediaPlayer mp) { // MediaPlayer.OnCompletionListener interface mServer.stop(); } 因为我对Android开发很新,所以如果我不清楚或者其他什么,请耐心等待。 谢谢。

VideoView:MediaPlayer.getVideoWidth中的IllegalStateException

我有一个包含VideoView和video播放列表的片段。 它允许用户单击播放列表中的video以交换VideoView的内容。 它还允许用户在每个video周围寻找。 在这里发布整个代码是不可行的,但我试图缩小问题,以便我可以添加一个示例。 我发现如果我快速更改VideoView的源并在VideoView ,我会收到IllegalStateException : W/dalvikvm: threadid=1: thread exiting with uncaught exception (group=0x415fe8b0) E/AndroidRuntime: FATAL EXCEPTION: main E/AndroidRuntime: java.lang.IllegalStateException E/AndroidRuntime: at android.media.MediaPlayer.getVideoWidth(Native Method) E/AndroidRuntime: at android.widget.VideoView$2.onPrepared(VideoView.java:346) E/AndroidRuntime: at android.media.MediaPlayer$EventHandler.handleMessage(MediaPlayer.java:2048) E/AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99) E/AndroidRuntime: at android.os.Looper.loop(Looper.java:213) E/AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:5225) E/AndroidRuntime: at java.lang.reflect.Method.invokeNative(Native Method) E/AndroidRuntime: at java.lang.reflect.Method.invoke(Method.java:525) E/AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:741) E/AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557) E/AndroidRuntime: at […]

Android中的浮动video播放器?

我在我的Android应用程序中添加了Vitamio播放器。 它工作正常。 在Vitamio或任何其他播放器中是否有任何方法,以便我可以让播放器漂浮在其他应用程序上并像这样重新resize?

Android:MediaPlayer,如何获取音频流的属性?

我可以使用MediaPlayer接口成功收听音频流,但是如何获取流的属性,如当前比特率或流文本(许多流如在线无线电包括当前正在播放的音轨)? 我试图find这些信息,但不能,如果这些东西可能是在android开发网站上的某个地方列出各种可用的’属性’列出?

如何从ShoutCast 7.html获取内容types

这里我正在开发无线电,无线电链接可以是aacp,aac或mpeg格式。 我正在使用MultiPlayer jar播放aacp格式并使用Default MediaPlayer播放mpeg格式,我知道MultiPlayer可以播放这两种格式但我根据客户要求使用不同的jar,有没有办法知道流式url是aacp,aac或来自ShoutCast 7.html页面的mpeg? 谢谢

Android Media Player没有停止

我创建了一个Android应用程序,使用一个Media-Player在应用程序启动时启动音乐,在应用程序停止时停止。 在我的应用程序中,Media-Player没有停止。 我的代码是: public void StartPlayer() { mPlayer = MediaPlayer.create(getApplicationContext(), R.raw.siren); mPlayer.setLooping(true); mPlayer.start(); } public void StopPlayer() { if(mPlayer!=null && mPlayer.isPlaying()) { mPlayer.stop(); mPlayer.release(); mPlayer = null; } }

Android,如何从onBufferingUpdate显示缓冲%

我有一个媒体播放器服务,播放互联网流,但我有问题如何在我的xml中显示缓冲百分比,目前我只是显示一条消息,因为我试过的所有方式给了我一个静态长号。 这是我的播放器服务的代码: @Override public void onBufferingUpdate(MediaPlayer mp, int percent) { setBufferPosition(percent * getMusicDuration() / 100); myMain.EstadoRadio.setText(” Reproductor \n Buffering… “); } 正如你所知道的那样,我的xml中的EstadoRadio是一个文本视图,它在myMain活动中工作,我希望显示流的缓冲百分比。 谢谢你的帮助。 编辑:我在大多数情况下看到使用onBufferingUpdate(MediaPlayer mp,int percent)的’%’,如下所示: myMain.EstadoRadio.setText(” Reproductor \n” + percent + “%”); 但在我的情况下,百分比总是-2147483648,我不知道为什么,或者为什么它没有改变或更新,这里有一点来自我的日志猫: 05-17 13:34:37.005: V/MediaPlayer(25382): message received msg=3, ext1=-2147483648, ext2=0 05-17 13:34:37.005: V/MediaPlayer(25382): buffering -2147483648 05-17 13:34:37.005: V/MediaPlayer(25382): callback application 05-17 13:34:37.005: V/MediaPlayer(25382): […]

如何获得比特率,采样率和没有。 android中的音频文件的频道

我需要你的帮助以获得以下查询: 查询:有没有办法获取音频文件的跟踪信息。 采样率,通道,音频文件的比特率。 为了提取比特率,可以使用“MediaMetadataRetriever”API(METADATA_KEY_BITRATE)。 请建议是否可以使用任何Android API完成。 在下面find了API,但它的使用实际上是不同的。 http://developer.android.com/reference/android/medi/AudioTrack.html 我想使用Android API程序提取这些:输入音频文件的采样率,量化,通道。 请帮忙。 提前致谢。