2016-12-16 98 views
1

我正在使用裁切图像/裁剪视频功能为Android创建应用程序。对于iOS,这个应用程序已经创建。如何使用裁剪图像裁剪和旋转Android中的视频并转换图像库?

对于iOS用于编辑的lib视频LLVideoEditor 和图像裁剪的lib和旋转TOCropViewController

对于Android的,我发现uCrop库图像裁剪和ffmpeg-for-Android库的视频裁剪。

为了裁剪视频,我拍摄了视频的第一帧,然后用uCrop库裁剪它以接收裁剪的坐标。 (X,Y,宽度,高度,旋转角度)。 接收到的坐标作为命令传递给ffmpeg-for-Android作为命令行。 命令看起来像:

要作物的视频我用命令:

ffmpeg -y -i /sdcard/video/in.mp4 -vf crop=Width:Height:X:Y /sdcard/video/out.mp4 

作物和90度顺时针旋转视频我用命令:

ffmpeg -y -i /sdcard/video/in.mp4 -vf crop=Width:Height:X:Y transpose=1 /sdcard/video/out.mp4 

我有的问题:

  1. 当我选择裁剪图像区域并按90度旋转图像并按下时,uCrop库会返回我X,Y,裁剪图像宽度,裁剪图像高度,角度。在这种情况下,Y应该等于0,但是我接收Y> 0,即Y =图像上方黑色区域的高度。裁剪图像区域被选定后,uCrop库不会进行正确的图像缩放。

enter image description here

  • 转换与FFMPEG库中的视频作品非常缓慢。我转换的视频只有5秒的长度,因此转换速度应该很快。但大约需要15秒。与iOS相比,它需要很长时间。
  • 问题是: 1.是这样我选择裁剪视频是正确的吗? 2.我在哪里可以找到适用于Android的类似库,以便使我可以获得与iOS应用程序相同的Android应用程序功能,即接收正确的裁剪图像坐标和快速裁剪视频?

    回答