如何在 ffmpeg 中使用 Lapsharp 滤镜

如何在 ffmpeg 中使用 Lapsharp 滤镜

我一直在 HandBrakeCLI 中使用 lapsharp 滤镜,我想知道 ffmpeg 是否有这个滤镜,或者如何像 lapsharp 一样进行锐化。我使用 lapsharp 中等预设将 1080p 缩小到 720p,我喜欢这个滤镜,因为它不会像反锐化滤镜那样在边缘应用锐化。

答案1

通过检查 Handbrake 中的 Lapsharp 滤波器代码,它使用定义的边缘检测器之一进行卷积,然后将结果值与原始图像像素值相减,然后将此操作的结果乘以用户提供的强度并添加到原始图像像素值,最后将其剪辑到 0 - 255 范围内。这可以通过 ffmpeg 一个卷积和多个混合滤波器来完成(首先使用混合滤波器的 GrainExtract 模式进行卷积输入和原始输入帧,以及自定义表达式 - 将值相乘并将它们添加到最终输出)。如果您提供使用 handbrake 的 lapsharp 最常用的参数,我可以编写 filtergraph,它应该通过使用 ffmpeg 滤波器给出准确的结果。

相关内容