在Android中剪辑/裁剪视频文件

4

当用户通过我的应用程序播放视频时,我希望能够提取其中一部分。在播放视频时,用户可以指定开始和结束时间来剪切视频。那么,有没有办法根据持续时间来剪切视频并保存到SD卡中?


你可以使用摄像头录制流。 - Vipin Sahu
曾经使用过SurfaceView…… - Vipin Sahu
1
是的,我想要剪切预先录制的视频。 - Ravi Bhojani
这不是讨论此事的正确场所。请写信到mp4parser讨论邮件列表。(提示:尝试使用FileChannel对象打开IsoFile,因为它们可以进行内存映射技巧) - Sebastian Annies
这个库非常适合剪辑视频。https://dev59.com/Lmgu5IYBdhLWcg3wnYPo#11551682 - Ravi Bhojani
显示剩余4条评论
5个回答

0

我认为可以使用MP4Parser来完成,它是纯Java编写的,可与Android一起使用,而且在这里有一个在Java中缩短视频的示例(作者为Sebastian-annies)。


嘿,Vivek,你能否把第二个链接改成这个,因为它已经被更改了。 - MashukKhan

0

0

0

-7

@Ravi --- 视频可以在Android内置的Videoview或Surfaceview类中播放。在Surfaceview中,您可以启动一个线程来记录您从选择的位置到想要的位置的视频,使用MediaRecorder。

    MediaRecorder recorder = new MediaRecorder();
    recorder.setVideoSource(MediaRecorder.VideoSource.DEFAULT);
    recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
    recorder.setVideoEncoder(MediaRecorder.VideoEncoder.MPEG_4_SP);
        recorder.setOutputFile("/sdcard/recordvideooutput.3gpp");
        recorder.setPreviewDisplay(mHolder.getSurface());
    recorder.prepare();

YOUR mholder 是 SurfaceHolder 持有者,用于附加表面视图

调用这两个方法将开始和停止录制,并将文件写入 /sdcard/recordvideooutput.3gpp

recorder.start();
recorder.stop();

请使用开发者指南http://developer.android.com/reference/android/media/MediaRecorder.html


4
这个回答根本没有回答问题。 - tactoth

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接