Android 音/视频 相关

Android支持的视频格式

Android支持的音/视频编码方式包括:AMR-NB,H.263,输出的视频格式也只*.3gp或者*.mp4

T-Mobile G1设备中增加了对WMA,WMV,H.264  AVC格式解码的支持。


Android  播放/录制视频

Android支持的编码方式,如下:

相关类描述说明
MediaRecorder.AudioEncoder音频编码当时AMR_NB:AMR NB编码
MediaRecorder.AudioSource声音采样设备MIC:麦克风
MediaRecorder.OutputFormat录制输出格式MPEG_4:*.mp4
RAW_AMR:*.amr
THREE_GPP:*.3gp
MediaRecorder.VideoEncoder视频编码方式H263:H.263编码
H264:H.264编码
MPEG_4_SP:mp4编码
MediaRecorder.VideoSource视频采样设备CAMERA:数码相机



从Android数据库中获取音乐文件的信息

Android系统提供了MediaScanner,MediaProvider,MediaStore等接口,也提供了一个数据库表 。
MediaStore中定义了一系列的数据表,通过ContentResolver提供的查询接口,可以得到音乐相关的信息。
 ContentResolver的查询接口:

        Cursor  query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder);  

        Uri:指明要查询的数据库名称加上表的名称,从MediaStore中 可以查到相应信息的参数,具体可参考 开发文档。
        Projection: 指出要查询数据库表中的哪几列,返回的游标中将包括相应的信息。若设为 Null则返回所有信息。
        selection:  查询条件
        selectionArgs:参数信息,这个String数组可以为null。
        SortOrder:指定查询结果的排列顺序
下面的命令将返回外部存储卡上的音乐文件的信息:
Cursor cursor = query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null, MediaStore.Audio.Media.DEFAULT_SORT_ORDER);  

得到cursor后, 可以调用Cursor的相关方法得到具体的音乐信息:

歌曲ID:MediaStore.Audio.Media._ID

Int id = cursor.getInt(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media._ID));  

 

歌曲名称 :MediaStore.Audio.Media.TITLE

String tiltes = cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.TITLE));  

 

歌曲专辑名:MediaStore.Audio.Media.ALBUM

String albums = cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.ALBUM));  


歌手名: MediaStore.Audio.Media.ARTIST
String artists = cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.ARTIST));  

歌曲文件的路径 :MediaStore.Audio.Media.DATA

String url = cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.DATA));    

歌曲的总播放时长 :MediaStore.Audio.Media.DURATION

Int  mDuration = cursor.getInt(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.DURATION));    

歌曲文件的大小 :MediaStore.Audio.Media.SIZE

Int  mSize = cursor.getLong(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.SIZE));

-------------------------------------------------------------------------------------------------------------------------------------------------------

参考网络

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值