作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有成千上万的电影剪辑需要在 Imagick 中逐帧处理。我目前正在使用 ffmpeg-php 获取帧并通过 Imagick 处理每个帧。 Imagick 不能(至少我不知道如何)直接访问帧,所以我必须将帧转换为 GD 并将其捕获为二进制字符串。对于超过百万帧的数千个剪辑来说,这很慢。如何从 Imagick 中的 ffmpeg getFrame 访问/转换帧?或其他快速/肮脏的转换方式?提前致谢!
$movie = new ffmpeg_movie('any.avi', 0);
$im = new Imagick();
ob_start();
imagejpeg($movie->getFrame($i)->toGDImage());
$im->readImageBlob(ob_get_contents());
ob_end_clean();
// do Imagick process....
echo $im_im;
最佳答案
使用 Imagick 代表并不难,请参阅:
<?php
$im = new imagick();
$im->newPseudoImage( 200, 200, "ffmpeg:test1.mpg[40]" );
$im->setImageFormat( "png" );
header( "Content-Type: image/png" );
echo $im;
?>
关于php - 难题 : How to access ffmpeg_php getFrame in Imagick without convert to GD?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4438539/
我是一名优秀的程序员,十分优秀!