【问题标题】:How to compress video with uniform blur being the only side effect of compression?如何压缩具有均匀模糊的视频是压缩的唯一副作用?
【发布时间】:2017-02-18 20:34:35
【问题描述】:

关键是要以某种方式压缩视频文件,显着降低比特率,但不改变其外观质量,而且因为它适合设计,我想我会模糊视频。我猜在光栅图像处理中,它会更接近平均模糊,或者有点像浑浊玻璃效果。

理想情况下,我希望能够在使用更强烈的模糊压缩更多和使用更少强烈模糊压缩更少之间进行选择,无论如何都看起来很漂亮。

我尝试了一些 ffmpeg 后处理库,包括 fspp、spp、uspp(需要很长时间才能渲染)等。我几乎达到了使用 fspp 参数 5:60:15 的目标。但是对于某些对象来说,模糊要么非常强烈,要么留下了其他不想要的伪影。尽管 uspp 做得很好并且看起来很漂亮,但它使帧中大约一半的图像不模糊,而我正在寻找整个帧中更均匀的模糊。因为有时候会花很多时间,所以我没有尝试uspp的所有功能。

这是我关于视频流的 ffmpeg 输入数据:

 时长:00:01:03.02,开始:0.000000,比特率:4010 kb/s
    流 #0:0(und):视频:h264(高)(avc1 / 0x31637661)、yuv420p、1280x720 [SAR 1:1 DAR 16:9]、3870 kb/s、23.98 fps、23.98 tbr、24k tbn、47.95待定(默认)
    元数据:
      handler_name : 视频处理程序
    流 #0:1(eng):音频:aac (LC) (mp4a / 0x6134706D),44100 Hz,立体声,fltp,133 kb/s(默认)
    元数据:
      handler_name : SoundHandler

编辑:示例输入和输出:

【问题讨论】:

  • 你有你要找的输出例子吗?你的意思是像渐进式 JPEG 的初始渲染?
  • 我的意思是像平滑
  • 你试过像 vaguedenoiser 这样的降噪过滤器吗?
  • 不,我尝试的东西不多。有时需要几分钟才能渲染几秒钟。这就是为什么我在这里问这个问题
  • 试试-vf vaguedenoiser=threshold=50:method=hard:percent=50。不过先试试 unsharp 滤镜,速度很快,可以 GPU 加速-vf unsharp=la=-0.8

标签: video ffmpeg compression video-processing blur


【解决方案1】:

感谢穆尔维亚!

-vf uspp=8:12,然后-vf unsharp=la=-1.1,效果很好。

确切的命令:

ffmpeg -i video.mp4 -vf uspp=8:12 video_uspp8-12.mp4
ffmpeg -i video_uspp8-12.mp4 -vf unsharp=la=-1.1 video_uspp8-12__unsharp_la-1.1.mp4

将视频文件大小减少到原始文件的 56%(17.7MB 与 31.6MB)并保持质量。

uspp 主要是压缩视频,渲染需要很长时间(对我来说,视频的每一秒需要超过 10 秒),图片模糊,但如果你做了很多它会使图片的某些部分比任何地方都模糊得多。

unsharp 工作速度快数百倍,压缩更少但平衡 uspp,应用更均匀的模糊。

如果你需要更少的模糊和模糊点,更多的平滑和更多的“浑浊玻璃效果”,并且你不需要太多的压缩,那么你应该更倾向于unsharp.

【讨论】:

  • 您可以将过滤器链接在一起,而不是运行两个单独的命令:-vf "uspp=8:12,unsharp=la=-1.1" 此外,如果您只想重新复用 (stream copy) 音频,请添加 -c:a copy 作为输出选项重新编码它。如果您有更多 ffmpeg cli 工具问题,您应该在 Super User 询问他们,因为 Stack Overflow 仅用于编程问题(但实际上它已成为超级用户克隆)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-03-02
  • 2021-02-05
  • 1970-01-01
  • 1970-01-01
  • 2023-03-09
相关资源
最近更新 更多