V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
7075
V2EX  ›  程序员

视频压缩有哪些具体的方法呢?不剪裁大小。

  •  
  •   7075 · 2021-07-16 18:49:11 +08:00 · 2352 次点击
    这是一个创建于 1218 天前的主题,其中的信息可能已经有所发展或是发生改变。
    有搞过工程实践的朋友来讲讲
    降码率?帧率?编码方式?
    还有其他常用手段吗?
    14 条回复    2021-07-17 18:47:22 +08:00
    xylophone21
        1
    xylophone21  
       2021-07-16 18:51:05 +08:00
    关注随便问一下,不裁剪大小的原因是?
    liuxu
        2
    liuxu  
       2021-07-16 19:14:36 +08:00
    换压缩编码,h265 挺香
    Tianao
        3
    Tianao  
       2021-07-16 19:26:49 +08:00 via iPhone   ❤️ 1
    还有帧间压缩,也可以算是帧间编码方式。
    GeruzoniAnsasu
        4
    GeruzoniAnsasu  
       2021-07-16 19:31:21 +08:00   ❤️ 1
    ……每一种视频编码方式都有非常多的参数来控制算法去实现更大的压缩率或实时性能等不同目标,建议翻看 x264/x265 编码器文档

    举些例子: 降低分辨率、降低质量要求、增加中间帧数量、增加中间帧计算量、增加运动预测搜索范围、使用更复杂更精确的运动预测搜索算法、针对视频调整动静态内容码率分配阈值……

    以上提到的都对应一个编码器的控制参数




    但我猜你想解决的问题是 “做了一个视频会话项目但是视频流太大了”
    coderluan
        5
    coderluan  
       2021-07-16 19:50:08 +08:00   ❤️ 1
    参考国内视频网站的真 4K 视频, 服务器性能强用 265, 不强用 264, 帧率 30, 剩下的拼命降低码率就行了.
    xmumiffy
        6
    xmumiffy  
       2021-07-16 20:17:24 +08:00 via Android
    视频的大小只和码率与时长有关
    hronro
        7
    hronro  
       2021-07-16 20:24:54 +08:00   ❤️ 1
    什么其他信息都不给,来就直接一句我要压缩视频大小,这像不像「怎么实现我不管,反正我就要」的产品说的话?

    如果能在什么都不影响的情况下直接降低视频大小,那体积大的视频文件还有什么理由在互联网上流传呢?

    要降低视频大小,就必然在其他方面有所取舍,比如增加编解码时间(换更高效的编码方式),或者降低画质(降低分辨率或者降低码率)等等。你使用场景也不说,能接受哪种方面的损失也不说,你问这个问题的意义何在呢?
    sphawkcn
        8
    sphawkcn  
       2021-07-16 20:54:39 +08:00   ❤️ 1
    小丸工具箱,简单快捷。
    daimaosix
        9
    daimaosix  
       2021-07-16 23:57:32 +08:00
    视频大小跟时长有一定关系,主要还是码率。
    LeeReamond
        10
    LeeReamond  
       2021-07-17 01:10:20 +08:00   ❤️ 1
    阅读 hevc 标准书,可以知道目前使用最广泛的比较先进的视频编码器使用什么技术,阅读 mpeg1 标准书可以知道原教旨主义压缩有哪些方法。
    7075
        11
    7075  
    OP
       2021-07-17 17:13:58 +08:00
    @xylophone21 用户需求可能有些就不能剪裁呀
    7075
        12
    7075  
    OP
       2021-07-17 17:14:11 +08:00
    @liuxu 如果已经是 h265 了呢
    7075
        13
    7075  
    OP
       2021-07-17 17:15:03 +08:00
    @hronro 尽可能在人眼无感知的前提下,尽可能压缩视频体积,size 不变。
    hronro
        14
    hronro  
       2021-07-17 18:47:22 +08:00   ❤️ 1
    @7075

    老实说你们如果已经上了 HEVC 编码,还想在人眼无感知的情况下减小视频体积,基本不太可能。

    实在强行要搞,只有考虑上 AV1 编码,压缩效率会高一些,然后把 encoder 的参数调成 presets=very_slow,用编码时间换压缩效率。但这么搞,一个 2 小时的视频估计要好几天才能编码完成,实际用时还要取决你的 CPU 性能。看你能不能接受的了。

    降码率、降帧率,这些肯定是人眼能够感知的。我觉得你不如研究研究,降低多少画质是你们能够接受的了的,靠降低画质减少视频体积这个方案其实要更靠谱一些。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2788 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 12:52 · PVG 20:52 · LAX 04:52 · JFK 07:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.