android - 将视频从 Android 应用程序导出到 SD 卡

标签 android video-streaming video-processing android-mediacodec textureview

我正在使用下面的演示在 Android 应用程序中创建慢动作和快 Action 视频。

https://github.com/google/grafika

我可以在应用程序中播放慢动作和快 Action 视频,但现在我想将此视频导出到 SD 卡。

我使用 TextureView 在应用程序中显示视频。 我使用这个 java 文件来控制视频的速度。 https://github.com/google/grafika/blob/master/src/com/android/grafika/SpeedControlCallback.java

我该怎么做? 任何帮助将不胜感激。

最佳答案

您好,您必须使用 MediaMuxer,为视频轨道调用 AddTrack,并在对每个帧进行编码后将数据写入该轨道并写入 muxer。您可以在 grafika 页面中看到一些示例,其中之一可能是:https://github.com/google/grafika/blob/master/src/com/android/grafika/ContinuousCaptureActivity.java (在这里你可以如何在屏幕上显示和在 SD 上录制) 另一个:https://github.com/google/grafika/blob/master/src/com/android/grafika/CameraCaptureActivity.java

您还可以在这里找到更多示例: http://www.bigflake.com/mediacodec/

谢谢

关于android - 将视频从 Android 应用程序导出到 SD 卡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35015463/

相关文章:

video - 不使用 DirectShow 作为 Windows 的 CUDA 视频处理管道的基础是不是很愚蠢?

flutter - 在 flutter 中录制像 Tiktok/Smule 这样的 Duet 视频

android - 从通知启动 Activity 并返回到上一个 Activity

html - 流式预签名 Amazon Cloudfront URL 的良好到期时间

Android MediaRecorder setOutPutFile() 使用套接字进行流式传输

html - 我的 Azure 媒体服务视频无法在 Azure 媒体播放器中播放

.net-3.5 - 如何使用 DirectShow.net 获取视频帧?

android - Android Studio错误:(1,0)找不到ID为 'com.android.application'的插件

android - Recyclerview 与 GridLayout Manager 在另一个 recyclerview 中

android - 无法分配 CursorWindow