Android MediaPlayer.Create()返回null
我正在开发一个播放一些声音的Android应用程序.为此,我正在创建MediaPlayer的对象.以下是代码: mp = MediaPlayer.create(this, R.raw.testSound); 这里的MP对于Android 2.3.3(API级别10)为无效,我尝试使用其他版本的Android(2.1、2.2等),它可以正常工作.但是,使用Android 2.3.3(API级别10)MediaPlayer.Create()呼叫返回null. 声音文件(testsound.wav)是一个WAV文件.我尝试解析WAV文件,以查看其是否损坏.看起来还不错. 另外,我可以使用Windows Media Player播放此声音文件. 这是testsound.wav文件: testsound.wav 和以下是详细的代码: public MediaPlayer mp; // OnCreate() funciton mp = MediaPlayer.create(
0 2023-11-27
编程技术问答社区
安卓系统。语音记录和保存音频
我正在处理应用程序,该应用程序将记录用户的语音并将文件保存在SD卡上,然后允许用户再次收听音频. 我能够允许用户使用识别器记录他的声音,但是我无法弄清楚如何保存音频文件并允许用户听到音频.如果有人可以帮助我,我会很感激.我在下面显示了我的代码: // Setting up the onClickListener for Audio Button attachVoice = (Button) findViewById(R.id.AttachVoice_questionandanswer); attachVoice.setOnClickListener(new OnClickListener() { public void onClick(View v) { Intent voiceIntent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH); v
如何刷新回收视图的前一个项目的行视图?
大家好,希望大家都很好. 我正在开发一个Android应用程序,该应用将播放不同的动物声音. 我正在使用Recycle View,您可以在下面的屏幕截图中看到.现在我要面对问题,我的行内有一个播放按钮,每当我从项目0播放声音或它在视图内显示我的暂停选项时,它都会播放动物的声音.但是每当我单击下一个项目1或其他任何其他项目时,它都不会更改上一个项目0的图像. 我通过使用以下代码来刷新适配器列表来进行此操作. 但是我认为这不是一个好习惯. t1.recyclerView.setAdapter(null); t1.customAdapter=new CustomAdapter(t1.animalList,ctx); t1.recyclerView.setAdapter(t1.customAdapter); 我尝试使用notifyItemChanged(oldPosition)之
0 2023-11-19
编程技术问答社区
我使用这段代码在下载过程中播放视频,但当我试图播放视频时_view不能播放视频。
我正在使用此代码,但是当我尝试在下载视频中播放视频时 private String videoPath="http://codechair.com/video/1496139752333.mp4"; private String outFilePath="/sdcard/file_name_soniji.mp4"; //My Mobile Ip private String serverPath="10.92.234.117"; private VideoDownloadAndPlayService videoService; public class Testing extends AppCompatActivity { VideoView videoView; MediaController mediaController; @Override protected void onCreate(Bundl
Nodejs, Android-视频流
我正在处理一个显示Nodejs&MongoDB服务器视频的应用程序. 这里的问题是因为视频没有流式传输,Android上的MediaPlayer完全下载了视频,然后显示它,这确实很慢. 我不是母语的人,所以阅读文档大多数很难理解. 我应该走哪条路? RTSP或HTTP流.有什么提示如何实现目标? 最好的问候,您的所有帮助. 解决方案 虽然专用流媒体服务器可能是任何可靠的解决方案或任何需要良好性能的解决方案的更好解决方案,但您绝对应该能够从标准node.js应用程序流式传输视频文件. 最简单的方法是将视频放在服务器上某个地方的目录中并作为静态内容. 以下非常基本的节点,JS应用程序将使用视频 - 您从基本URL访问它,然后是目录和视频文件名 - 例如. http://[您的服务器url]/videos/[视频文件的名称] var express = require('express'); var fs = require('fs'); va
0 2023-11-19
编程技术问答社区
安卓AudioFlinger服务器死亡|媒体服务器死亡
我正在尝试在Android设备上开发HLS播放器,并且可以使用一些测试流.我遇到的一个问题是HLS流只是"停止",在某些随机位置冻结,可能是在1分钟之后或20之后.我遇到的错误是: 11-20 14:14:10.484:w/audiosystem(18531):Audioflinger Server死了! 11-20 14:14:10.484:w/imediadadeathnotifier(18531):媒体服务器死亡 和 11-20 14:14:10.484:E/MediaPlayer(18531):错误(100,0) 我基本上不知道如何预防或重新启动流.我什至不知道为什么会发生.因此,如果有人可以回答这个问题,我会很高兴:). // Create a new media player and set the listeners mMediaPlayer = new MediaPlayer(); mMediaPlayer.set
0 2023-11-18
编程技术问答社区
带认证的MediaPlayer RTSP视频流
我能够在未经授权的情况下从IP摄像头传输视频,但是现在我需要使用授权来执行此操作.我发现很少有信息说Android不支持RTSP的身份验证,但是我找到了另一种信息,说通过使用该方法添加标头: setDataSource(上下文上下文,URI URI,MAP标头).我的代码看起来像这样: @Override public void surfaceCreated(SurfaceHolder holder){ String authHeader = getB64Auth("user","password"); Map headers = new HashMap(); headers.put("Authorization", authHeader); Uri srcUri = Uri.parse("rtsp://10.0.0.113:554/channel1"); try{
2 2023-11-18
编程技术问答社区
打开流媒体视频时出错
我试图通过提供视频的URL来打开视频流.我正在使用VideoView.这里是我的代码: public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); VideoView videoView = (VideoView) findViewById(R.id.stream_video_view); videoView.setVisibility(View.VISIBLE); MediaController mc = new MediaController(this);
0 2023-11-18
编程技术问答社区
我的安卓媒体播放器的同步问题
我有一个简单的Android媒体播放器,可以在单个屏幕上同时播放多个视频.因此,基本上,单个媒体播放器屏幕分为4个部分,其中4个mediaPlayer实例粘合在一起,每个部分都播放一个给定的视频. 当我的视频文件本地存储在设备上时,它几乎可以正常工作.有同步问题,但很小.但是,当我输入用于HTTP流的URL时,存在明显的同步问题.问题是什么?通常,如何删除同步问题? 我唯一能做的就是首先实例化媒体播放器和prepare(),然后又一个接一个地致电start(),至少起始时间与彼此相近. 在这里,我有一种返回每个实例的方法: MediaPlayer mediaPreparation(String filename, boolean setMute) { String url = "myURL"; // your URL here // create mediaplayer instance MediaPlayer mediaPlayer =
0 2023-11-18
编程技术问答社区
解码实时RTSP流:在安卓系统上使用MediaPlayer的视频滞后较大
我正在播放从PC上的VLC到Android MediaPlayer类(都在同一本地网络上)的实时RTSP流.它的播放顺利而没有任何错误 - 问题是屏幕上的解码视频落后于5到7秒. 从调试和回调中,我可以看到启动mMediaPlayer.prepareAsync()后,实时数据已在设备onPrepared()在我称之为mMediaPlayer.start()的地方称为onPrepared().看起来这个start()播放最初从准备阶段开始捕获的视频. 我已经尝试了seekTo(5000) seekTo(5000) start()之前和之后都没有对滞后没有影响. 对于实时视频通话应用程序,几秒钟的设置延迟非常好,但是一旦显示视频的滞后对我来说是不可能的. public void surfaceCreated(SurfaceHolder holder) { mMediaPlayer = new MediaPlayer(); mMediaPlayer.setA
0 2023-11-18
编程技术问答社区
Android VideoView MediaPlayer OnInfoListener-events未被触发
给出了以下源代码段: videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { @Override public void onPrepared(MediaPlayer mediaPlayer) { mediaPlayer.setOnInfoListener(new MediaPlayer.OnInfoListener() { @Override public boolean onInfo(MediaPlayer mp, int what, int extra) { if (what == MediaPlayer.MEDIA_INFO_BUFFERING_END){ activity.dism
2 2023-11-18
编程技术问答社区
安卓工作室:压缩视频和音频
努力在Android Studio中压缩视频和音频文件.我需要有用的建议和链接. 我浏览了其中一些链接,但没有发现太多有用. 如何在Android中压缩视频, 在Android中的音频和视频文件可以编程?, FFmpegFrameGrabber crashes 100% of time attempting在Android上压缩视频 请帮助我.谢谢 解决方案 您可以在Android项目中使用FFMPEG来压缩视频. 有多种方法,但是一种常见的方法是在FFMPEG命令行工具周围使用包装器.这允许您使用已有文献记录的MPEG的常规语法. 作为一个例子,此代码使用FFMPEG在Android中压缩MP4文件: String argv[] = {"ffmpeg", "-i", videoFileToCompress.getAbsolutePath(), "-strict", "experimental",
0 2023-11-18
编程技术问答社区
媒体播放器播放声音但不播放视频
我正在尝试使用SurfaceView. 播放Android的视频 我可以加载视频,声音播放正确,但我看不到视频. 这是我的活动: public class VideoTest extends Activity implements OnBufferingUpdateListener, OnCompletionListener, OnPreparedListener, OnVideoSizeChangedListener, SurfaceHolder.Callback, OnErrorListener { private static final String TAG = "MediaPlayerDemo"; private int mVideoWidth; private int mVideoHeight; private MediaPlayer mMediaPlayer; private SurfaceView mPreview
6 2023-11-18
编程技术问答社区
媒体播放器中没有调用OnBufferingUpdate。
当我尝试与MediaPlayer一起使用时,我的bufferingupdate永远不会被打电话.我正在使用保存在SDCARD上的视频作为媒体来源.我认为这是问题的根源,我想知道OnbufferingUpdate是否仅适用于Internet流.我使用的代码在下面. public class FullImageActivity extends Activity implements SurfaceHolder.Callback, OnPreparedListener, OnInfoListener, OnErrorListener, OnBufferingUpdateListener{ private static final String TAG = "MediaPlayer shit"; MediaPlayer player; Surf
4 2023-11-18
编程技术问答社区
Youtube Player API安卓版在某些设备上播放时崩溃了
这是我从设备(Sony Xperia Miro)获得的堆栈跟踪,当我尝试使用播放器API播放视频时. 这是错误的堆栈跟踪.欢迎任何帮助. 该代码似乎在其他一些设备上正常工作,例如Galaxy Nexus,Nexus 7等. FATAL EXCEPTION: main java.lang.NullPointerException at com.google.android.apps.youtube.core.player.AdStatsMacros.a(SourceFile:185) at com.google.android.apps.youtube.core.client.DefaultAdStatsClient.a(SourceFile:481) at com.google.android.apps.youtube.core.client.DefaultAdStatsClient.a(SourceFile:467) at com.google.android.apps.y
0 2023-11-18
编程技术问答社区
支持全面的安卓媒体解码器?
当我使用Android MediaCodec类解码如火如荼的视频时,输出总是在工作室摆动?我是否缺少视频文件中的标题? 我知道在Android 24之后,我可以使用MediaFormat class设置COLOR_RANGE_FULL? 对此有任何帮助吗?似乎甚至设置 MediaFormat.setInteger(MediaFormat.KEY_COLOR_RANGE, MediaFormat.COLOR_RANGE_FULL); 也对Android 24也无济于事. 解决方案 我与Google的Android团队的工程师进行了交谈,他们提到该代码的这一部分应由OEM(例如三星和高通公司)实施.确实,当我与高通的工程师接触时,他们确认这不是在他们身边实施的.我没有任何ETA,但似乎他们已经开始处理这种情况.
0 2023-11-18
编程技术问答社区
安卓系统是否支持慢动作视频播放?
我需要在Android上使视频播放器以慢动作和不同的播放速度播放.我仍然找不到本机API或一些代码来执行此操作. Android 2.2-2.3是否支持视频慢动作,我们可以控制视频播放速度吗? 解决方案 是的,来自API 23 Android具有其他解决方案 您可以尝试为此探索LIBVLC. Android的VLC播放器几乎是到期的.检查他们的网站. 检查该线程讨论您的工作方式. libvlc开发人员文档在这里使用正常的播放示例.您需要修改此示例以逐帧播放视频或降低帧速率.
2 2023-11-18
编程技术问答社区
安卓WebView HTML5视频产生的MediaPlayer在三星S4上永存[发现的黑客答案]
从我能够发现的东西来看,这似乎是针对最近三星设备的. S4会这样做. Nexus 7不会. 如果具有WebChromeClient的WebView开始播放HTML5视频,则会创建MediaPlayer实例.视频结束后,似乎没有一种方法可以杀死System.Exit(0). 这是我的整个MainActivity.java package com.test.webviewtest; import android.app.Activity; import android.os.Bundle; import android.webkit.WebChromeClient; import android.webkit.WebView; public class MainActivity extends Activity { WebView webView; @Override protected void onCreate(Bundle savedIn
2 2023-11-18
编程技术问答社区
如何在安卓系统中上传视频文件到网络服务器?
嗨,我想将视频文件上传到Android中的Web服务器中.我遵循本教程: 使用Android上的帖子将文件上传到HTTP服务器. 但是.我在logcat中发现了这个错误.我也从服务器收到了一条消息. 09-11 10:20:55.088: D/dalvikvm(284): GC_FOR_MALLOC freed 1137 objects / 74200 bytes in 70ms 09-11 10:20:55.768: I/dalvikvm-heap(284): Grow heap (frag case) to 3.611MB for 1048592-byte allocation 09-11 10:20:55.918: D/dalvikvm(284): GC_FOR_MALLOC freed 202 objects / 10144 bytes in 142ms 09-11 10:20:56.178: D/dalvikvm(284): GC_FOR_MALLOC
0 2023-11-18
编程技术问答社区
Android-MediaStore.Video.query()返回null
我正在尝试使用Method MediaStore.video.query()从视频文件(标题,语言,艺术家)中检索元数据.但是,该方法始终返回零.代码是波纹管: String[] columns = { MediaStore.Video.VideoColumns._ID, MediaStore.Video.VideoColumns.TITLE, MediaStore.Video.VideoColumns.ARTIST }; Cursor cursor = MediaStore.Video.query(getApplicationContext().getContentResolver(), videoUri,columns); if (cursor != null) { cursor.moveToNext(); } String title = cursor.getString(cursor.getColumnIndex(MediaStore.Vi
0 2023-11-18
编程技术问答社区