Ffmpeg Alfresco无法创建视频缩略图

Ffmpeg Alfresco无法创建视频缩略图,ffmpeg,alfresco,Ffmpeg,Alfresco,正如错误日志所说:空输入文件…结果是ImageMagick的源图像大小为零。(/data/was/alfresco/tomcat/temp/alfresco/ImageMagickContentTransformerWorker_source8718262212685093199.jpg)。当我手动将源映像替换为普通映像并再次执行该命令时,没有错误 命令:/data/was/alfresco/common/bin/convert/data/was/alfresco/tomcat/temp/alf

正如错误日志所说:
空输入文件…
结果是
ImageMagick
的源图像大小为零。(
/data/was/alfresco/tomcat/temp/alfresco/ImageMagickContentTransformerWorker_source8718262212685093199.jpg
)。当我手动将源映像替换为普通映像并再次执行该命令时,没有错误

命令:/data/was/alfresco/common/bin/convert/data/was/alfresco/tomcat/temp/alfresco/ImageMagickContentTransformerWorker_source_8718262212685093199.jpg[0]-自动定向-调整“100x100>”-条带-安静/数据/was/alfresco/tomcat/temp/alfresco/ImageMagickContentTransformerWorker_目标_76520684136589026.png

因此,我认为源图像可能是由
FFMPEG
通过捕获视频的某一帧而生成的。 而
FFMPEG
不知何故未能做到这一点。不确定我的猜测是否正确

但是我的
FFMPEG
效果很好,因为
FFMPEG-version
显示了正确的版本信息。
FFMPEG
root
运行,Alfresco守护进程实例由
root
运行。看来没什么问题

请复习一下。这是整个露天共享日志:

Caused by: org.alfresco.service.cmr.repository.ContentIOException: 09160037 Content conversion failed:
   reader: ContentAccessor[ contentUrl=store:///data/was/alfresco/tomcat/temp/Alfresco/ComplextTransformer_intermediate_mp4_262176879279399174.jpg, mimetype=image/jpeg, size=0, encoding=UTF-8, locale=en_US]
   writer: ContentAccessor[ contentUrl=store:///data/was/alfresco/tomcat/temp/Alfresco/FailoverTransformer_intermediate_ComplexContentTransformer_5223852355212570043.png, mimetype=image/png, size=0, encoding=UTF-8, locale=en_US]
   options: {use=doclib, contentReaderNodeRef=null, contentWriterNodeRef=null, sourceContentProperty=null, imageAutoOrient=true, targetContentProperty=null, commandOptions=, imageResizeOptions=ImageResizeOptions [width=100, height=100, maintainAspectRatio=true, percentResize=false, resizeToThumbnail=false, allowEnlargement=false], includeEmbedded=null}
   limits: {timeoutMs=120000, pageLimit=1}
        at org.alfresco.repo.content.transform.AbstractContentTransformer2.transform(AbstractContentTransformer2.java:350)
        at org.alfresco.repo.content.transform.ComplexContentTransformer.transformInternal(ComplexContentTransformer.java:492)
        at org.alfresco.repo.content.transform.AbstractContentTransformer2.transform(AbstractContentTransformer2.java:272)
        ... 32 more
Caused by: org.alfresco.service.cmr.repository.ContentIOException: 09160036 Failed to perform ImageMagick transformation:
Execution result:
   os:         Linux
   command:    /data/was/alfresco/common/bin/convert /data/was/alfresco/tomcat/temp/Alfresco/ImageMagickContentTransformerWorker_source_8718262212685093199.jpg[0] -auto-orient -resize "100x100>" -strip -quiet /data/was/alfresco/tomcat/temp/Alfresco/ImageMagickContentTransformerWorker_target_7652060684136589026.png
   succeeded:  false
   exit code:  1
   out:
   err:        .convert.bin: Empty input file `/data/was/alfresco/tomcat/temp/Alfresco/ImageMagickContentTransformerWorker_source_8718262212685093199.jpg' @ error/jpeg.c/JPEGErrorHandler/331.
.convert.bin: NoImageForProperty "%w" @ warning/property
        at org.alfresco.repo.content.transform.magick.ImageMagickContentTransformerWorker.transformInternal(ImageMagickContentTransformerWorker.java:205)
        at org.alfresco.repo.content.transform.magick.AbstractImageMagickContentTransformerWorker.transform(AbstractImageMagickContentTransformerWorker.java:284)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.alfresco.repo.management.subsystems.SubsystemProxyFactory$1.invoke(SubsystemProxyFactory.java:79)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
        at com.sun.proxy.$Proxy28.transform(Unknown Source)
        at org.alfresco.repo.content.transform.ProxyContentTransformer.transformInternal(ProxyContentTransformer.java:107)
        at org.alfresco.repo.content.transform.AbstractContentTransformer2.transform(AbstractContentTransformer2.java:272)
        ... 34 more
在alfresco-global.properties中:
ffmpeg.exe=/usr/local/bin/ffmpeg/ffmpeg

*更新按照Robert的建议,变压器日志级别更改为调试。 但是日志太长,无法粘贴到这里。正文有30000个字符的限制,所以github没有。 所以请参考github问题,我将日志粘贴到了那里。

您所描述的已经是相应的错误。 视频预览由所谓的复杂变形金刚(变形金刚管道)创建。请启用变压器的日志记录,然后重试以找出初始问题

log4j.logger.org.alfresco.repo.content.transform.TransformerDebug=DEBUG
log4j.logger.org.alfresco.repo.content.transform=DEBUG
一些可能对您有所帮助的来源:


测试变压器的一种简单方法是按照您的建议安装和使用

,变压器日志级别更改为调试。但是日志太长,无法粘贴到这里。正文有30000个字符的限制,所以github没有。所以请参考github问题,我将日志粘贴到了那里。非常感谢您的帮助和关心。它看起来像您的
命令:sh-c“/usr/local/bin/ffmpeg/ffmpeg-y-ss 10-i…
生成一个空图像文件。按照日志中的说明,在命令行中手动尝试转换步骤。我猜您可能有ffmpeg安装不支持的视频,或者您在alfresco属性中的lib路径不适合。也许这也是一个错误的环境Alfresco执行命令,因此您可以设置:
log4j.logger.org.Alfresco.util.exec.RuntimeExec=debug
,或者在执行过程中查看完整的环境集:
log4j.logger.org.Alfresco.util.exec=trace
我尝试了另一个
mp4
文件,其中一些文件已成功创建缩略图!但我不知道这些文件之间有什么区别。也许我的
ffmpeg
遗漏了一些编解码器?或者需要调整开始时间?(
-ss
标志)。你能告诉我哪个露天配置文件有开始时间选项吗?我想10秒太大了。我需要把它改成1或2。