1. 常见错误

error(-38, 0)

我觉得-38表示在当前的MediaPlayer状态下,不能运行你的操作。

详细怎样做请參考:Android MediaPlayer

另外我在其它资料中。发现有人觉得-38定义在:pvmf_return_codes.h文件里:

-38: DRM clock is not available or cannot be read

0: Return code for pending completion

  /*
* DRM clock is not available or cannot be read
*/
const PVMFStatus PVMFErrDrmClockError = (-38);
/*
* Return code for pending completion
*/
const PVMFStatus PVMFPending = 0;

error (1, -2147483648)

1: 事实上代表MEDIA_ERROR_UNKNOWN

-2147483648: (0x80000000)没有做什么说明,实际上它也是代表unknown error

这中错误大多是在播放MP4的时候出现,主要原因是由于当前的机器不支持这样的视频编码(H263。H264,MPEG-3等,不是视频容器格式)

2. MediaError.h

enum {
MEDIA_ERROR_BASE = -1000, ERROR_ALREADY_CONNECTED = MEDIA_ERROR_BASE,
ERROR_NOT_CONNECTED = MEDIA_ERROR_BASE - 1,
ERROR_UNKNOWN_HOST = MEDIA_ERROR_BASE - 2,
ERROR_CANNOT_CONNECT = MEDIA_ERROR_BASE - 3,
ERROR_IO = MEDIA_ERROR_BASE - 4,
ERROR_CONNECTION_LOST = MEDIA_ERROR_BASE - 5,
ERROR_MALFORMED = MEDIA_ERROR_BASE - 7,
ERROR_OUT_OF_RANGE = MEDIA_ERROR_BASE - 8,
ERROR_BUFFER_TOO_SMALL = MEDIA_ERROR_BASE - 9,
ERROR_UNSUPPORTED = MEDIA_ERROR_BASE - 10,
ERROR_END_OF_STREAM = MEDIA_ERROR_BASE - 11, // Not technically an error.
INFO_FORMAT_CHANGED = MEDIA_ERROR_BASE - 12,
INFO_DISCONTINUITY = MEDIA_ERROR_BASE - 13,
INFO_OUTPUT_BUFFERS_CHANGED = MEDIA_ERROR_BASE - 14, // The following constant values should be in sync with
// drm/drm_framework_common.h
DRM_ERROR_BASE = -2000, ERROR_DRM_UNKNOWN = DRM_ERROR_BASE,
ERROR_DRM_NO_LICENSE = DRM_ERROR_BASE - 1,
ERROR_DRM_LICENSE_EXPIRED = DRM_ERROR_BASE - 2,
ERROR_DRM_SESSION_NOT_OPENED = DRM_ERROR_BASE - 3,
ERROR_DRM_DECRYPT_UNIT_NOT_INITIALIZED = DRM_ERROR_BASE - 4,
ERROR_DRM_DECRYPT = DRM_ERROR_BASE - 5,
ERROR_DRM_CANNOT_HANDLE = DRM_ERROR_BASE - 6,
ERROR_DRM_TAMPER_DETECTED = DRM_ERROR_BASE - 7,
ERROR_DRM_NOT_PROVISIONED = DRM_ERROR_BASE - 8,
ERROR_DRM_DEVICE_REVOKED = DRM_ERROR_BASE - 9,
ERROR_DRM_RESOURCE_BUSY = DRM_ERROR_BASE - 10, ERROR_DRM_VENDOR_MAX = DRM_ERROR_BASE - 500,
ERROR_DRM_VENDOR_MIN = DRM_ERROR_BASE - 999, // Heartbeat Error Codes
HEARTBEAT_ERROR_BASE = -3000,
ERROR_HEARTBEAT_TERMINATE_REQUESTED = HEARTBEAT_ERROR_BASE,
};

3. MediaPlayer

public static final int MEDIA_ERROR_IO
Added in API level 17 File or network related operation errors. Constant Value: -1004 (0xfffffc14)
public static final int MEDIA_ERROR_MALFORMED
Added in API level 17 Bitstream is not conforming to the related coding standard or file spec. Constant Value: -1007 (0xfffffc11)
public static final int MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK
Added in API level 3 The video is streamed and its container is not valid for progressive playback i.e the video's index (e.g moov atom) is not at the start of the file. See Also
MediaPlayer.OnErrorListener
Constant Value: 200 (0x000000c8)
public static final int MEDIA_ERROR_SERVER_DIED
Added in API level 1 Media server died. In this case, the application must release the MediaPlayer object and instantiate a new one. See Also
MediaPlayer.OnErrorListener
Constant Value: 100 (0x00000064)
public static final int MEDIA_ERROR_TIMED_OUT
Added in API level 17 Some operation takes too long to complete, usually more than 3-5 seconds. Constant Value: -110 (0xffffff92)
public static final int MEDIA_ERROR_UNKNOWN
Added in API level 1 Unspecified media player error. See Also
MediaPlayer.OnErrorListener
Constant Value: 1 (0x00000001)
public static final int MEDIA_ERROR_UNSUPPORTED
Added in API level 17 Bitstream is conforming to the related coding standard or file spec, but the media framework does not support the feature. Constant Value: -1010 (0xfffffc0e)
public static final int MEDIA_INFO_BAD_INTERLEAVING
Added in API level 3 Bad interleaving means that a media has been improperly interleaved or not interleaved at all, e.g has all the video samples first then all the audio ones. Video is playing but a lot of disk seeks may be happening. See Also
MediaPlayer.OnInfoListener
Constant Value: 800 (0x00000320)
public static final int MEDIA_INFO_BUFFERING_END
Added in API level 9 MediaPlayer is resuming playback after filling buffers. See Also
MediaPlayer.OnInfoListener
Constant Value: 702 (0x000002be)
public static final int MEDIA_INFO_BUFFERING_START
Added in API level 9 MediaPlayer is temporarily pausing playback internally in order to buffer more data. See Also
MediaPlayer.OnInfoListener
Constant Value: 701 (0x000002bd)
public static final int MEDIA_INFO_METADATA_UPDATE
Added in API level 5 A new set of metadata is available. See Also
MediaPlayer.OnInfoListener
Constant Value: 802 (0x00000322)
public static final int MEDIA_INFO_NOT_SEEKABLE
Added in API level 3 The media cannot be seeked (e.g live stream) See Also
MediaPlayer.OnInfoListener
Constant Value: 801 (0x00000321)
public static final int MEDIA_INFO_UNKNOWN
Added in API level 3 Unspecified media player info. See Also
MediaPlayer.OnInfoListener
Constant Value: 1 (0x00000001)
public static final int MEDIA_INFO_VIDEO_RENDERING_START
Added in API level 17 The player just pushed the very first video frame for rendering. See Also
MediaPlayer.OnInfoListener
Constant Value: 3 (0x00000003)
public static final int MEDIA_INFO_VIDEO_TRACK_LAGGING
Added in API level 3 The video is too complex for the decoder: it can't decode frames fast enough. Possibly only the audio plays fine at this stage. See Also
MediaPlayer.OnInfoListener
Constant Value: 700 (0x000002bc)

最新文章

  1. zlib-1.2.7/libpng-1.5.9 instead of zlib-1.2.8/libpng-1.6.6
  2. Circuit Breaker Pattern(断路器模式)
  3. 【树莓派】 Failed to fetch http://mirrordirector.raspbian.org/raspbian/pool/main/c/chkconfig/chkconfig_11.4.54.60.1debian1_all.deb Could not resolve 'mirrordirector.raspbian.org'
  4. VMware Player安装Debian系统
  5. [Git]在Windows上安装Git
  6. PASCAL==CALLBACK==WINAPI==__stdcall
  7. 基于Chromium构建Chrome WebBrowser for .net 控件(还有点心得体会)
  8. MyEclipse下如何安装和使用ibatis插件(网上的资料对于myeclipse8.5根本就是没有用的,所以我还是自己选择了装了一个eclipse,然后将插件装在了eclipse中)
  9. 在线生成ICO图标、站标
  10. LINUX如何查看其他用户的操作
  11. hdu 4786 Fibonacci Tree (2013ACMICPC 成都站 F)
  12. Android实例-退出程序(XE8+小米2)
  13. iOS频繁打开相册崩溃: ALAssetsLibrary error - “Too many contexts. No space in contextList.”
  14. github中删除项目
  15. 浅讲JUnit
  16. Kubernetes - kubectl proxy
  17. vs 调试 iis中的网站
  18. QueryRunner使用之可变条件的处理
  19. JS获取IOS版本号
  20. node 学习系列-hello world

热门文章

  1. delphi xe5 android 开发数据访问手机端(二)
  2. python中的单下划线和双下划线意义和作用
  3. LibLinear(SVM包)的MATLAB安装
  4. 练习--python中的Queue与多进程(multiprocessing)
  5. Android textAppearance的属性设置及TextView属性详解
  6. Programming Concepts
  7. 微软开放技术发布针对 Mac 和 Linux 的更新版 Azure Node.JS SDK 和命令行工具
  8. HDOJ --1172
  9. 分布式基础通信协议:paxos,totem和gossip
  10. win7常用键