编辑android VideoView帧

Dan*_*npe 7 android motion-detection android-source android-4.2-jelly-bean android-videoview

环境:

Nexus 7 Jelly Bean 4.1.2

问题:

我正在尝试使用VideoView制作适用于RTSP的运动检测应用程序.

我希望有类似onNewFrameListener的东西

videoView.onNewFrame(Frame frame)
Run Code Online (Sandbox Code Playgroud)

我试图通过VideoView访问RTSP流的原始帧,但在Android SDK中找不到任何支持.

我发现VideoView封装了Android的MediaPlayer类.

所以我潜入media_jnilib尝试找到一种方法来访问原始帧,但找不到字节缓冲区或代表帧的任何东西.

题:

任何人都知道我在哪里或如何找到这个缓冲区并获得访问权限?

或者通过VideoView实现运动检测的任何其他想法?

即使我需要重新编译AOSP也是如此.

小智 1

在您的情况下,如果您正在使用实时动态而不是录制的视频,我将使用相机预览而不是视频视图。您可以使用相机预览回调来捕获相机捕获的每一帧。该回调实现:

onPreviewFrame(byte[] data, Camera camera)
Called as preview frames are displayed.
Run Code Online (Sandbox Code Playgroud)

我认为这对你可能有用。

http://developer.android.com/reference/android/hardware/Camera.PreviewCallback.html

告诉您这是否是您正在寻找的内容。

祝你好运。