我使用 Youtube API 将内容集成到我的网站中。但是,它没有提供任何好的视频快照。它提供了一些几乎无法使用的非常低质量的快照。
https://img.youtube.com/vi/<insert-youtube-video-id-here>/0.jpg
https://img.youtube.com/vi/<insert-youtube-video-id-here>/1.jpg
https://img.youtube.com/vi/<insert-youtube-video-id-here>/2.jpg
https://img.youtube.com/vi/<insert-youtube-video-id-here>/3.jpg
例如:
https://img.youtube.com/vi/XdwaASKJGxo/1.jpg
创建以下内容:
这张快照质量太差,无法使用。所以我需要自己做!
我的目标是为每个视频制作一个独特的缩略图/预览。我想以编程方式在视频中间拍摄 3 个视频快照,以避免介绍/结尾。然后我想拍摄这些快照并生成 GIF。
我知道如何使用 PHP 生成 GIF,但我找不到拍摄视频快照的方法。
是否可以使用 PHP 或 Python 来实现?或与此相关的任何其他代码。
例子:
我终于找到了解决办法。最好的方法是使用 PageSpeed Insights API。
方法如下:
VIDEOID
是视频 ID,start
是以秒为单位的时间戳final-screenshot
这里有一个很好的tutorial.
因为您还没有添加任何您使用过的代码或方法,所以我将给您一个概述(使用 python)。
由于 YouTube API 提供的快照质量不够好,您可能需要考虑使用不同的方法从视频中提取帧。您可以使用 FFmpeg 之类的工具定期从视频中提取多个帧,并根据需要调整帧的时间和帧速率。这也会让您更好地控制帧的时间和质量。有了框架后,您可以使用 ImageMagick 或 Pillow 等图形库将它们组合成单个 GIF 图像。
告诉我你过得怎么样!