Articles of 媒体

获取图像缩略图文件路径

我正在尝试获取thumnail 路径 ,而不是位图对象。 当我查询这些时,由于某种原因,某些缩略图路径为空。 (我的设备中有1028个缩略图,光标长度确实是1028,但仍然返回空值)我知道有1028个缩略图,因为我查了一下。 这是我的代码: String[] projection = {MediaStore.Images.Thumbnails._ID}; // Create the cursor pointing to the SDCard cursor = this.getContentResolver().query( MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI, projection, // Which columns to return null, // Return all rows null, MediaStore.Images.Thumbnails.IMAGE_ID); // Get the column index of the Thumbnails Image ID Log.d(Global.TAG, “BEFORE”); columnIndex = cursor.getColumnIndex(MediaStore.Images.Thumbnails._ID); Log.d(Global.TAG, “AFTER1”); for(int i =0;i<cursor.getCount();i++){ […]

如何获取已安装的媒体播放器列表

在我的应用程序中,我有一个菜单项,我想打开用户首选的媒体播放器,只对音频感兴趣。 理想情况下,当用户第一次选择此项时,如果他们只安装了一个,则会选择手机上唯一的媒体播放器,如果他们有一个以上,则为他们提供一个列表。 然后,我会保留他们的选择,以便下次打开那个。 据我了解,Android没有默认的媒体播放器。 我有原始的Droid,它有一个媒体播放器,但我了解其他运营商使用自己的,或者用户可以卸载标准的。 我尝试过一些东西,却无法正常工作。 我尝试了这个代码,它应该得到一个支持意图的包列表。 它适用于“application / pdf”和“video / *”之类的东西。 当我用“audio / *”尝试它时,我得到一个空列表,即使我安装了Android媒体播放器和MixZing。 也尝试了“媒体/ *”,什么都没得到。 PackageManager packageManager = getPackageManager(); Intent testIntent = new Intent(Intent.ACTION_VIEW); testIntent.setType(“audio/*”); List list = packageManager.queryIntentActivities(testIntent, 0); 我已经看到这个代码工作并使用默认播放器打开音频文件,但我不想打开文件,我只想打开音频应用程序,就像用户从应用程序抽屉打开它一样。 Intent i = new Intent(Intent.ACTION_VIEW); Uri u = Uri.withAppendedPath(MediaStore.Audio.Media.INTERNAL_CONTENT_URI,”1″); i.setData(u); startActivity(i); 我能想到的另一件事就是走出去获取最受欢迎的媒体播放器的包名并硬编码,并搜索手机以查看安装了哪些,但这似乎不是最好的方法。 我不明白为什么第一段代码不起作用。 可能没有为这些应用程序正确设置intentfilter,或者我使用了错误的代码或mimetypes。

Android – MediaStore.Video.query()返回null

我正在尝试使用MediaStore.Video.query()方法从video文件(标题,语言,艺术家)中检索元数据。 但是,该方法始终返回null。 代码如下: 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.Video.VideoColumns.TITLE)); 关于如何使用android返回video元数据的任何建议? ==更新 当我在很多地方搜索时,我尝试了一个使用CursorLoader的解决方案。 但是,CursorLoader中的方法loadInBackground()也返回null。 代码如下所示: String[] columns = { MediaStore.Video.VideoColumns.TITLE }; Uri videoUri = Uri.parse(“content://mnt/sdcard/Movies/landscapes.mp4”); CursorLoader loader = new CursorLoader(getBaseContext(), videoUri, columns, null, null, null); Cursor cursor = […]

Android,如何将元数据设置为MP4文件?

我想将元数据设置为MP4文件。 我通过以下方式创建MP4文件: new MediaMuxer(mPath, MediaMuxer.OutputFormat.MUXER_OUTPUT_MPEG_4) 和文件有元: Title: unknown Artist: unknown Album: unknown Comment: … 类似于: 这里 我发现对于API21 +我可以通过以下方式制作元数据: MediaMetadata.Builder但是如何将元数据保存到创建的MP4文件? 请不要extern图书馆。 谢谢。

Android Show MediaController

我正在将MediaController添加到VideoView中,但除非我点按手机,否则它不会显示。 一段时间后控制器消失。 有没有办法让我总能拥有MediaController节目? 谢谢克里斯

在Android中扩展音量面板

我目前正在开发一个用于将video投射到Chromecast的应用。 我想通过硬件按钮控制Chromecast音量。 另外,我想将我的app volume seekbar添加到Volume面板(我们有Ring,Media和Alarm搜索栏)。 实际上所有这些点已经在Youtube应用程序中实现(参见截图)。 与我的问题有关的最接近的问题有答案 ,我可以用某种方式使用VolumePanel.java类来实现这一点,但我还没有find任何示例如何实现它。

在Android中组合音频文件的最佳方式

我正在开发包含暂停/播放选项的录制应用程序。 我尝试使用Media Recorder和AudioRecord 在AudioRecord的情况下,录制的音频消耗更大的尺寸,因此如果录制尺寸增加,例如:如果我录制1分钟的音频,则消耗40到50MB ,通过将其转换为合并真的很痛苦。 原始文件 并发送到PHP服务器 。 所以我尝试使用Media Recorder ,它消耗的尺寸较小 ,但无法使用Audio Record中处理的先前方式进行组合。 下一步我尝试使用Android NDK – 甚至设置过程都很痛苦。 现在我的问题是哪个是组合录制的音频文件的最佳方式 使用Android NDk 从音频中读取字节数据并进行组合 – 如果我使用它,那么记录格式的标题就会出现问题,比如amr,wav就是这样。 此外,如果我尝试这个 ,我无法获得javax.sound包,所以我尝试使用插件,但没有运气.. 请建议最好的方法来做到这一点。 此外,我尝试了所有这些以下链接 音频链接1 音频链接2 音频链接3 音频链接4 提供好的教程或样品或链接。谢谢。

给定Android音乐播放列表名称,如何find播放列表中的歌曲?

可以通过MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI上的查询find播放列表名称,然后查看MediaStore.Audio.PlaylistsColumns.NAME列。 还有一个数据列,MediaStore.Audio.PlaylistsColumns._DATA,但它返回null。 歌曲列表( MediaStore.Audio.Media.EXTERNAL_CONTENT_URI/id )似乎没有显示任何播放列表关联。

android rest客户端不支持的媒体types

我尝试从android模拟器发送请求到一个安静的服务器。 但我总是得到错误: 415不支持的媒体types。 客户代码: public JSONtest() throws Exception, IOException{ HttpPost request = new HttpPost(AppServerIP); JSONObject param = new JSONObject(); param.put(“name”, “weiping”); param.put(“password”, “123456”); StringEntity se = new StringEntity(param.toString()); request.setEntity(se); HttpResponse httpResponse = new DefaultHttpClient().execute(request); String retSrc = EntityUtils.toString(httpResponse.getEntity()); System.out.println(httpResponse.getStatusLine().getReasonPhrase()); } 服务器的代码: public class resource { @POST @Path(“/trigger”) @Consumes(MediaType.APPLICATION_JSON) public Response trigger(JSONObject notify) throws Exception{ return […]

如何使用MediametadataRetriever从android中的album / Artist中获取歌曲?

首先,我是一个新手,其次我知道有一个解决方案“如何从Android中的专辑中获取歌曲?” 但这是通过使用游标和MediaStore,我已经使用MediametadataRetriever和它完全不同我没有使用哈希映射和所有…..所以它有点困难….请任何解决方案为此???不使用hashmaps和mediastore ??? 这是我用来显示所有歌曲及其艺术家的代码………. import java.io.File; import java.io.FileFilter; import java.io.FilenameFilter; import java.io.Serializable; import java.lang.reflect.Array; import java.util.ArrayList; import java.util.List; import android.annotation.SuppressLint; import android.content.Context; import android.content.Intent; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.media.MediaMetadataRetriever; import android.media.MediaPlayer; import android.net.Uri; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.ListFragment; import android.util.DisplayMetrics; import android.util.TypedValue; import android.view.ContextMenu; import android.view.ContextMenu.ContextMenuInfo; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuItem; import […]