V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要把任何和邀请码有关的内容发到 NAS 节点。

邀请码相关的内容请使用 /go/in 节点。

如果没有发送到 /go/in,那么会被移动到 /go/pointless 同时账号会被降权。如果持续触发这样的移动,会导致账号被禁用。
Apol1oBelvedere
V2EX  ›  NAS

群晖 DSM 快速随手压缩照片及 Office 文档有无好的方案?

  •  
  •   Apol1oBelvedere · 2022-12-13 16:37:51 +08:00 · 2175 次点击
    这是一个创建于 729 天前的主题,其中的信息可能已经有所发展或是发生改变。

    群晖 File Station 里面存储了大量的文档、照片。有一些处于冷存储状态的文件想减小其体积存储,例如:

    • Office 文档:里面的图片不需要当初的体积了,想用 NXPowerLite 类似的软件压缩为小体积。
    • 照片:一些资料性照片几兆大小压缩为几百 KB 足以满足后期回看及存储需求了。

    目前想法是在群晖 File Station 里面浏览到哪个文件了想压缩就直接点某个功能实现压缩,可能的方案例如:

    1. 群晖开发个压缩插件在右键菜单;//基本不可能。
    2. 浏览器有个脚本快捷方式调用某些软件压缩后替换;
    3. Docker 有个代码能对接群晖 File Station 里面来压缩;

    不知有什么好的办法?

    15 条回复    2022-12-14 10:29:30 +08:00
    lookStupiToForce
        1
    lookStupiToForce  
       2022-12-13 16:41:30 +08:00
    File Station 设置共享目录读写配置,windows 映射进来挂载成网络驱动器,一个 python 脚本完事
    Apol1oBelvedere
        2
    Apol1oBelvedere  
    OP
       2022-12-13 16:47:14 +08:00
    @lookStupiToForce 不需要批量的,是平时随手看到要优化的就去优化。有一些文档图片不需要压缩。
    lookStupiToForce
        3
    lookStupiToForce  
       2022-12-13 16:50:27 +08:00
    @Apol1oBelvedere #2 emmmm ,那我确实没有好方法
    不过再不济,utools 或者 quicker 这种通用工具应该能帮你忙
    Apol1oBelvedere
        4
    Apol1oBelvedere  
    OP
       2022-12-13 16:55:53 +08:00
    @lookStupiToForce 通过网络驱动器查看文件时工具很多,在群晖 File Station 就没有什么好办法了,群晖系统比较封闭。
    xiaoduhappy2018
        5
    xiaoduhappy2018  
       2022-12-13 18:16:43 +08:00
    你可以考虑用 rdfind 查找重复文件做成硬链接或者直接删掉,减少磁盘占用。
    ql562482472
        6
    ql562482472  
       2022-12-13 19:45:12 +08:00   ❤️ 1
    主要这个需求本身就非常难处理,人就很难处理,更不要说机器来处理,
    第一是自身的需求难以表达清晰,比如照片压缩,什么照片要压缩就是额外带来的问题,什么 docx 中的图片要降低质量,降低到什么程度,也是额外带来的问题;
    第二是难以自动化,压缩的时机难以表达
    第三是 NAS 系统难以做“压缩存储”这样的需求,这带来了额外的问题

    相对来说,加硬盘是个更省事并且没有增加问题的方案。
    DoveAz
        7
    DoveAz  
       2022-12-13 20:09:05 +08:00 via Android   ❤️ 2
    办法总比困难多,我觉得可以在浏览器上做个油猴脚本,给 file station 增加压缩按钮,识别地址,再配合服务器脚本对该地址的图片文件进行压缩并替换,我觉得我都可以开发,这项目你给我投 2 万块,包我身上了
    jeesk
        8
    jeesk  
       2022-12-13 20:21:55 +08:00
    @DoveAz 最后两句笑喷了。
    lifanxi
        9
    lifanxi  
       2022-12-13 21:29:33 +08:00
    类似把原来高清的图片缩分辩率、把视频转码压缩体积、把音乐从无损变成有损这样的事情,十几年前我经常做,现在我已经不做了。十几年前 320×480 分辨率的视频都能看,现在 4K 都不觉得有过于清晰。有损压缩压完了就再也回不去原来了,没有后悔药。现在存储这么便宜,未来也会越来越便宜,实在不值得去这么做。
    Apol1oBelvedere
        10
    Apol1oBelvedere  
    OP
       2022-12-13 21:38:44 +08:00
    @ql562482472 这些想法考虑过,只是在看看大家有没有奇思妙想:)
    Apol1oBelvedere
        11
    Apol1oBelvedere  
    OP
       2022-12-13 21:39:09 +08:00
    @DoveAz 就是这个想法,要是群晖加上这个功能就真实太好了。
    mgrddsj
        12
    mgrddsj  
       2022-12-14 01:46:17 +08:00
    如果非要 File Station 里面操作的话,我这里有个思路:从文件名入手,NAS 上跑一个监测文件变动的脚本,检测到某种文件名就对它进行操作。

    花了十几分钟随手用 Python 写了个 POC 。这个脚本一直在后台监测文件变动,一旦发现文件名中含有 "[towebp]",就会调用 ffmpeg 把它转换成 webp 格式的图片。

    上演示视频和代码:


    https://gist.github.com/mgrddsj/35f1339941ff1b3eabb15e99c34e3ae0

    考虑到 NAS 系统里的 Python 通常不带 pip (说的就是你,QNAP ),就从网上找了个不用第三方库的检测文件变动的代码改了改来用。图片压缩上,我图省事直接用了 ffmpeg ,高手可以玩玩 imagemagick 。ffmpeg 的参数我就没细调了,直接用的默认参数(有损 webp 压缩),效果已经不错了。文档的话,可能得找个类似的命令行工具咯。

    因为这玩意操作起来没楼上说的那么优雅,我就只收 1.5 万吧 ;)
    goodryb
        13
    goodryb  
       2022-12-14 09:57:56 +08:00
    不过话说回来,这样压缩之后能节省多少空间呢, 现在存储越来越便宜的情况下似乎收益不高
    Apol1oBelvedere
        14
    Apol1oBelvedere  
    OP
       2022-12-14 10:28:24 +08:00
    @mgrddsj 非常棒,我来在群晖上进行试验。
    Apol1oBelvedere
        15
    Apol1oBelvedere  
    OP
       2022-12-14 10:29:30 +08:00
    @goodryb 还有个好处是在线加载提速,有的 Office 文档看起来几十兆,NXPowerLite 压缩后就一兆多效果仍很好。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3239 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 10:39 · PVG 18:39 · LAX 02:39 · JFK 05:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.