有啥软件可以提取视频中某一帧图片?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有啥软件可以提取视频中某一帧图片?相关的知识,希望对你有一定的参考价值。
cx
1、提取一个视频中的某帧需要使用Adobe Premiere,首先打开软件导入视频; 2、击左边或者右边的箭头,移动到要截取的地方,拖动滑块也可以; 3、点击导出帧按钮,如下图所示: 4、接着更改好文件名,如下图所示: 5、然后选择保存的格式,如下图所示: 6、最后点击确定按钮即可。 参考技术A 1、提取一个视频中的某帧需要使用Adobe Premiere,首先打开软件导入视频; 2、击左边或者右边的箭头,移动到要截取的地方,拖动滑块也可以; 3、点击导出帧按钮,如下图所示: 4、接着更改好文件名,如下图所示: 5、然后选择保存的格式,如下图所示: 6、最后点击确定按钮即可。 参考技术B 1、提取一个视频中的某帧需要使用Adobe Premiere,首先打开软件导入视频; 2、击左边或者右边的箭头,移动到要截取的地方,拖动滑块也可以; 3、点击导出帧按钮,如下图所示: 4、接着更改好文件名,如下图所示: 5、然后选择保存的格式,如下图所示: 6、最后点击确定按钮即可。 参考技术C 1、提取一个视频中的某帧需要使用Adobe Premiere,首先打开软件导入视频; 2、击左边或者右边的箭头,移动到要截取的地方,拖动滑块也可以; 3、点击导出帧按钮,如下图所示: 4、接着更改好文件名,如下图所示: 5、然后选择保存的格式,如下图所示: 6、最后点击确定按钮即可。 参考技术D 用专业视频编辑软件可以提取视频中的某一帧,如Pr、AE还有小视频编辑软件也行,如快剪辑、剪映等等软件!Unity 获得视频的某一帧,生成缩略图
Unity 并无直接获取视频某一帧图像的API,所以想要生成缩略图就要自己写方法了,
图片和视频都可以用这种方式生成缩略图,另,转载请标明出处,谢谢。
1 using System.Collections; 2 using System.Collections.Generic; 3 using UnityEngine; 4 using UnityEngine.Video; 5 using System.IO; 6 7 8 public class NewBehaviourScript : MonoBehaviour { 9 10 VideoPlayer vp; 11 Texture2D videoFrameTexture; 12 RenderTexture renderTexture; 13 void Start() 14 { 15 videoFrameTexture = new Texture2D(2, 2); 16 vp = GetComponent<VideoPlayer>(); 17 vp.playOnAwake = false; 18 vp.waitForFirstFrame = true; 19 20 vp.sendFrameReadyEvents = true; 21 vp.frameReady += OnNewFrame; 22 vp.Play(); 23 24 25 } 26 int framesValue=0;//获得视频第几帧的图片 27 void OnNewFrame(VideoPlayer source, long frameIdx) 28 { 29 framesValue++; 30 if (framesValue==100) { 31 renderTexture = source.texture as RenderTexture; 32 if (videoFrameTexture.width != renderTexture.width || videoFrameTexture.height != renderTexture.height) { 33 videoFrameTexture.Resize (renderTexture.width, renderTexture.height); 34 } 35 RenderTexture.active = renderTexture; 36 videoFrameTexture.ReadPixels (new Rect (0, 0, renderTexture.width, renderTexture.height), 0, 0); 37 videoFrameTexture.Apply (); 38 RenderTexture.active = null; 39 vp.frameReady -= OnNewFrame; 40 vp.sendFrameReadyEvents = false; 41 } 42 } 43 44 void OnDisable() 45 { 46 if (!File.Exists(Application.persistentDataPath+"/temp.jpg")) { 47 ScaleTexture (videoFrameTexture, 800, 400, (Application.persistentDataPath+"/temp.jpg")); 48 } 49 } 50 //生成缩略图 51 void ScaleTexture(Texture2D source, int targetWidth, int targetHeight,string savePath) 52 { 53 54 Texture2D result = new Texture2D(targetWidth, targetHeight,TextureFormat.ARGB32, false); 55 56 for (int i = 0; i < result.height; ++i) 57 { 58 for (int j = 0; j < result.width; ++j) 59 { 60 Color newColor = source.GetPixelBilinear((float)j / (float)result.width, (float)i / (float)result.height); 61 result.SetPixel(j, i, newColor); 62 } 63 } 64 result.Apply(); 65 File.WriteAllBytes(savePath, result.EncodeToJPG()); 66 } 67 68 }
以上是关于有啥软件可以提取视频中某一帧图片?的主要内容,如果未能解决你的问题,请参考以下文章