android6.0 MediaRecorder录像,想通过setOutputFile(sender.getFileDescriptor()),获取流,启动失败

Thnantos 2016-11-01 04:36:20
在android6.0上通过MediaRecorder的setOutputFile(sender.getFileDescriptor())获取视频流,结果启动录像失败,在android5.1上是可以的
错误日志:

11-01 16:21:59.653: I/MediaRecorderJNI(8899): prepare: surface=0xee8cc100
11-01 16:21:59.773: E/MediaRecorder(8899): start failed: -2147483648
11-01 16:21:59.773: D/AndroidRuntime(8899): Shutting down VM
11-01 16:21:59.773: E/AndroidRuntime(8899): FATAL EXCEPTION: main
11-01 16:21:59.773: E/AndroidRuntime(8899): Process: com.example.bgrecordvideo, PID: 8899
11-01 16:21:59.773: E/AndroidRuntime(8899): java.lang.RuntimeException: Unable to start service com.example.bgrecordvideo.VideoRecorderService@4a36cc3 with Intent { flg=0x10000000 cmp=com.example.bgrecordvideo/.VideoRecorderService VirtualScreenParam=Params{mDisplayId=-1, null, mFlags=0x00000000)} }: java.lang.RuntimeException: start failed.
11-01 16:21:59.773: E/AndroidRuntime(8899): at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:4079)
11-01 16:21:59.773: E/AndroidRuntime(8899): at android.app.ActivityThread.access$2400(ActivityThread.java:221)
11-01 16:21:59.773: E/AndroidRuntime(8899): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1897)
11-01 16:21:59.773: E/AndroidRuntime(8899): at android.os.Handler.dispatchMessage(Handler.java:102)
11-01 16:21:59.773: E/AndroidRuntime(8899): at android.os.Looper.loop(Looper.java:158)
11-01 16:21:59.773: E/AndroidRuntime(8899): at android.app.ActivityThread.main(ActivityThread.java:7233)
11-01 16:21:59.773: E/AndroidRuntime(8899): at java.lang.reflect.Method.invoke(Native Method)
11-01 16:21:59.773: E/AndroidRuntime(8899): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
11-01 16:21:59.773: E/AndroidRuntime(8899): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
11-01 16:21:59.773: E/AndroidRuntime(8899): Caused by: java.lang.RuntimeException: start failed.
11-01 16:21:59.773: E/AndroidRuntime(8899): at android.media.MediaRecorder._start(Native Method)
11-01 16:21:59.773: E/AndroidRuntime(8899): at android.media.MediaRecorder.start(MediaRecorder.java:946)
11-01 16:21:59.773: E/AndroidRuntime(8899): at com.example.bgrecordvideo.VideoRecorderService.initializeVideo(VideoRecorderService.java:464)
11-01 16:21:59.773: E/AndroidRuntime(8899): at com.example.bgrecordvideo.VideoRecorderService.onStartCommand(VideoRecorderService.java:370)
11-01 16:21:59.773: E/AndroidRuntime(8899): at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:4062)
11-01 16:21:59.773: E/AndroidRuntime(8899): ... 8 more
11-01 16:26:59.833: I/Process(8899): Sending signal. PID: 8899 SIG: 9

...全文
1192 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Echo_1025 2019-03-19
  • 打赏
  • 举报
回复
解决了吗??
Thnantos 2018-08-10
  • 打赏
  • 举报
回复
没解决,放弃这个方法了
grf123 2018-06-02
  • 打赏
  • 举报
回复
6.0好像在底层给屏蔽掉这种方法了
LiJiangOP 2017-05-15
  • 打赏
  • 举报
回复
同问
chezi008 2017-03-14
  • 打赏
  • 举报
回复
解决了吗 ??????
媒体盒子 2017-02-16
  • 打赏
  • 举报
回复
android录像如果要实时处理录像信息或者网络发送必须采用MediaMuxer + AudioRecorder+ Camera + Mediacodec 的方式,其他方法我试过根本实现不了
我就是我 2017-02-15
  • 打赏
  • 举报
回复
楼主解决这个问题了吗,我最近也在搞这块,想问问你有没有什么思路
qq_34746716 2016-12-27
  • 打赏
  • 举报
回复
兄弟,你的问题解决了没,我也遇到了相同的问题,可否分享下

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧