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

用了一圈没有一个好用的 nas 照片备份+浏览的 app,所以考虑自己开发一个

  •  
  •   fregie · 353 天前 · 9811 次点击
    这是一个创建于 353 天前的主题,其中的信息可能已经有所发展或是发生改变。

    尝试过几个方案,始终都不尽如人意

    黑群晖的 moments

    不支持 heic 格式的图片视频,而且功能有限,不能跟其他的服务组合使用,app 浏览图片体验不太好

    Nextcloud

    作为网盘还不错,app 和图片浏览相关功能做的太差了

    photoprism

    没有 app,也没有同步照片的功能


    所以目前是用 Nextcloud 同步照片到 nas,然后用 photoprism 来浏览图片,勉强能用,但是体验不好.


    我打算做一个简单的 app,就专门用于上传照片到各种协议的网络储存,同时也有体验很好的图片浏览功能,做成一个无服务端设计,只要有网络储存就能工作,也没有数据库,以简单有序的目录结构组织图片.这样的好处一是不用部署服务端可以直接用,二是储存很透明可以很容易的配合 photoprism 这种服务来组合使用.
    不知道大家有没有这方面的痛点,有没有人有兴趣共同开发?

    第 1 条附言  ·  353 天前
    很多人给了新的建议和方案,其实核心的矛盾点在于,同步好用的,在 app 端浏览体验都一般,我是希望能达到 google photo 的体验级别。体验好的,同步功能不好用。另外一个对我来说很重要的点是很多一体式服务和应用都想对封闭拓展性一般所以我希望能有一个无服务端的设计,可以在拓展 photoprism 这种的服务
    第 2 条附言  ·  353 天前
    实际上我是一个主要做服务端开发的开发者,实在被逼无奈考虑做这个 app 的开发,目前准备主要用 flutter 做这个 app 的开发,golang 写网络储存的逻辑(并非服务端,而且内嵌在 app 里的一个模块 /服务)
    已经开发了一部分,目前先在做安卓版本,后面考虑利用 flutter 的跨平台特性支持多端
    我对于客户端开发还是能力有限,感兴趣的同学可以给我发邮件我们一起完成
    邮箱: ZnJlZ2llQGZyZWdpZS5jbg==
    第 3 条附言  ·  336 天前

    我发布了第一个版本,目前只支持安卓,基本够我用了,但是仍然会持续迭代优化,有兴趣的小伙伴可以试一试了. https://github.com/fregie/pho
    不求大家给star,只求有问题多给我提issue

    已支持特性

    • 本地照片查看
    • 云端照片查看
    • 增量同步照片到云端
    • 后台定期同步
    • 无数据库,无服务端
    • 以时间组织云端存储的目录结构

    已支持网络储存

    • Samba
    • Webdav
    82 条回复    2023-07-09 17:16:04 +08:00
    muyeyong
        1
    muyeyong  
       353 天前
    威联通提供了这个功能
    angryPHP
        2
    angryPHP  
       353 天前
    photoprism 好像有第三方的 app
    luckjoe680
        3
    luckjoe680  
       353 天前 via Android
    黑群晖的最新的支持了吧
    233373
        4
    233373  
       353 天前   ❤️ 1
    黑群晖的不是 Photos 吗?可能你用的是旧版本
    syx0310
        5
    syx0310  
       353 天前 via iPhone
    照片管理类的 mtphotos 还不错
    brader
        6
    brader  
       353 天前
    大佬们,为什么你们那么热衷于 nas 啊。感觉使用场景不多呀,我就偶尔会用网盘存点东西,现在感觉阿里云盘也够用,速度够快
    DIO
        7
    DIO  
       353 天前 via Android   ❤️ 1
    @brader 等你哪天账号不知道怎么就触发机制被封号,数据拿不回来叫天天不应,叫地地不灵。就知道有多痛了
    brader
        8
    brader  
       353 天前
    @DIO 汗,我就存存文档,日常拍照照片,不至于
    lukedyue
        9
    lukedyue  
       353 天前   ❤️ 1
    Immich ?
    rming
        10
    rming  
       353 天前   ❤️ 1
    cxh116
        11
    cxh116  
       353 天前
    查看照片的话, Photoview 更简单,直接基于文件目录来看.

    https://github.com/photoview/photoview
    BaseException
        12
    BaseException  
       353 天前 via iPhone
    immich 目前用这个 绝佳
    sleepingdog
        13
    sleepingdog  
       353 天前
    mark 一下,在黑群晖里除了上述问题,
    我还碰到这个——https://www.v2ex.com/t/925190#reply15
    pcmid
        14
    pcmid  
       353 天前 via iPhone
    目前在用 immich ,非常好用
    rming
        15
    rming  
       353 天前
    最近在写一个类似的项目,已经写了 4 个月了,进展缓慢……
    rming
        16
    rming  
       353 天前
    产品比较在意的几个点是
    - 基于文件系统的相册 /文件夹管理
    - 离线存储浏览(隐私媒体)
    - 多端多协议备份支持
    beijiaoff
        17
    beijiaoff  
       353 天前
    的确 google photos 做的非常好了,但是闭源产品总有几个点可能不如人意。之前也疯狂的找最佳的方案,目前也认清现实了,这个做好非常难。个人可部署的,群晖 photos 算是不错了。
    arrando
        18
    arrando  
       353 天前
    @brader 我主要是为了看 4K 原盘的电影
    musi
        19
    musi  
       353 天前
    op 加油,开发完我给你 star
    EvanQu
        20
    EvanQu  
       353 天前
    借楼问下
    有支持读取本地文件夹目录结构的图片管理吗
    用了 photoview,photoprism 之类的
    感觉都不是很好用
    fregie
        21
    fregie  
    OP
       353 天前 via Android
    @brader 没有重要数据当然没问题,不怕数据被绑架就无所谓
    cyningxu
        22
    cyningxu  
       353 天前
    nextcloud 的图片浏览真是一坨粑粑
    shenlanAZ
        23
    shenlanAZ  
       353 天前
    照片备份这个应该方案挺多。

    但照片浏览的 App ,谁有这个需求呢? iPhone 用 iCloud ,Android 用 OneDrive 不就成了。重点是怎么把远端的照片同步到本地,然后再进行浏览。
    musi
        24
    musi  
       353 天前
    @shenlanAZ #23 用 NAS 的应该挺多的,我每次看照片不可能把 NAS 上所有的照片都同步到本地,更希望是远端浏览
    yanhuijun1996
        25
    yanhuijun1996  
       353 天前
    我目前是 icloudpd 项目同步到群晖,群晖在 sync 同步一份到 onedrive 备份。 同时安卓机用 foldersync 每天晚上同步到到安卓,安卓的谷歌插件会不占空间的原图再同步到谷歌相册
    这样就实现了 iphone 拍照,谷歌相册查
    FinnY
        26
    FinnY  
       353 天前
    op 加油,开发完我给你 star
    我也需要一个,苹果备份照片,heic 实况的都有视频。。。
    libook
        27
    libook  
       353 天前
    体验过 Photoprism ,感觉如果能配一个手机 App 就比较完美了。
    Immich 看起来还不错,但一方面不支持中文,不适合跟家人一起用,另一方面官网上“Do not use it as the only way to store your photos and videos!”的提示看得我不敢正式使用。

    现在在试用 MT Photos ,跟家里人一起用还可以,就是 App 不自动同步照片(可能被系统杀后台了?),大视频备份的时候可能会出现 timeout 错误(不知道是不是我 nginx 反代的问题),以及安卓端没有释放手机空间的功能(可能未来会有?)。

    只是同步照片的话,用过适用于同步任何文件的 FolderSync App ,走 SMB 或 WebDAV ;另外 PhotoSync 看着不错,但收费(好像各种插件也都单收费)就没试。
    kelestudio
        28
    kelestudio  
       353 天前   ❤️ 1
    我来说一下最近备份照片遇到的问题吧。
    通常备份了 DCIM ,Screenshots ,Weixin,Wechat ,等等很多的文件夹。
    文件格式呢,有大概如下几种:
    VID_20230113_225751.mp4
    SVID_20230113_225751.mp4
    SVID_20190125_173956_1.mp4
    wx_camera_1620709318500.jpg
    IMG_20220503_132307.jpg
    IMG_20220503_132307_1.jpg
    IMG_20220220_180806_edit_124919910142916.jpg
    IMG_1575279629173_20191202_174029.png
    IMG20200121184807.jpg
    Image_20210425_151020.jpg
    MYXJ_20200412144610125_fast.jpg
    Screenshot_20221126_100835_com.sina.weibo.jpg
    Screenshot_20221202_183106.jpg
    IMG-20170403-WA0000.jpg
    IMG_20200127_122849_002.jpg
    IMG_20190122_195131_BURST001_COVER.jpg
    IMG_20190122_195131_BURST002.jpg

    只是部分。。。

    有的文件名里面有时间,有的是时间戳。
    有的照片,虽然文件名不包含时间,但是 EXIF 里面有拍摄时间信息。
    有的照片,文件名包含时间戳,但是没有 EXIF 信息,比如微信照片。

    如何把这些照片,很好的收录,展示。是个技术活。。。
    damichifan
        29
    damichifan  
       353 天前
    其实这个需求我感觉挺大的,就是开发成本高。我想到的一个比较理想的是:1 、方便同步,可以是局域网或者互联网,可能更多人希望是互联网的; 2 、可以在备份的时候转化格式,群辉的 files 可以把 heic 转化成 jpg ; 2 、网页浏览的时候,可以按人脸识别分类; 3 、可以按照地图浏览,2 和 3 其实苹果自带的相册非常好用; 4 、可以切换按照文件夹浏览; 5 、可以点收藏、对图片做标签
    whypro
        30
    whypro  
       353 天前   ❤️ 1
    推荐 PhotoSync ,之前用 NextCloud 折腾了很久,最后索性购买了 PhotoSync ,节省了很多时间。
    janus77
        31
    janus77  
       353 天前
    @kelestudio #28 有文件创建时间和文件修改时间的
    dalianmao123
        32
    dalianmao123  
       353 天前   ❤️ 1
    黑群的 Synology Photos 挺好的呀,heic 也是支持的
    kelestudio
        33
    kelestudio  
       353 天前
    @janus77

    比如某个文件。在 linux 上。
    Access: 2019-11-17 22:53:43.000000000 +0800
    Modify: 2019-11-17 22:53:43.000000000 +0800
    Change: 2023-04-07 17:10:02.050688219 +0800
    Birth: 2023-03-20 12:43:23.827768694 +0800

    这个 Change 和 Birth 时间是改不了的。
    Change 是最后我修改 Access 和 Modify 的时间。
    Birth 就是我上传到 NAS 的时间。

    我把照片备份到 NAS (我是 UNAS+Nextcloud )上,自己写了个脚本,基于文件名,EXIF ,时间戳等多个因素,正则匹配出正确时间,然后改文件的 Access,Modify 时间,用 touch 就可以改,但是 Change 和 Birth 时间是改不了的。

    所以后来我想到把时间写到 EXIF 里面。但是 PNG 和 MP4 ,就没办法。写不了 EXIF 。

    反正,挺麻烦。
    kevinlexming
        34
    kevinlexming  
       353 天前
    @brader #6 为了不变 6 秒
    c1273082756
        35
    c1273082756  
       353 天前
    群晖 7.1 的 photos 很好用啊
    zddwj
        36
    zddwj  
       353 天前 via Android
    可以参考 clash 的思路,用客户端加密保证安全性,然后开放协议让第三方提供存储服务,同时定义一个 challenge 协议,存储服务提供方需要缴纳保证金,客户端可以通过 challenge 算法检验服务提供方有没有弄虚作假,challenge 失败则赔偿保证金给客户,最好再上个区块链去中心化,公钥就是账户名😄
    zddwj
        37
    zddwj  
       353 天前 via Android
    因为单纯好用的话我感觉 onedrive 就够用了,拼夕夕拼车 6 块一个月也不贵,要做到安全可控肯定需要分布式协议,往 web3 的方向发展
    x2420390517
        38
    x2420390517  
       353 天前
    有能力就自己开发吧,不过开发一个确实不容易
    Junichi
        39
    Junichi  
       353 天前
    照片功能单人体验最好的就是 Google 相册,家庭体验最好的就是 iCloud 和群晖 photos 。

    Google 相册的推荐很喜欢,经常看到十多年前的照片组,很好的回忆。

    iCloud 和群晖 photos ,很适合有小孩的家庭,父母分别拍了小孩的各种照片视频后,点几下对方就能马上看到,而且 nas 上也就只存了一份,也不用通过微信之类的发来发去,照成一张照片反复存了几次。
    sharkfu
        40
    sharkfu  
       353 天前
    群晖的 photos 好用,除了 iphone 后台不能长时间自动备份以外。
    ily433664
        41
    ily433664  
       353 天前
    看看 mt photos
    https://mtmt.tech/
    vmebeh
        42
    vmebeh  
       353 天前
    Picasa 看图不错(死在 Google 手里),同步得找其他的
    fregie
        43
    fregie  
    OP
       353 天前
    @ily433664 闭源的服务端,有点不放心
    icetea12138
        44
    icetea12138  
       353 天前
    我是威联通加密备份到百度云 浏览就用的自带的 qumagic 挺好用的
    lhlxx2010
        45
    lhlxx2010  
       353 天前
    MTphotos ,国人开发的。
    zzutmebwd
        46
    zzutmebwd  
       353 天前 via Android
    @fregie 群晖 photos 开源吗?
    km00
        47
    km00  
       353 天前
    威联通的 qumagie 还是挺不错的
    linuxgo
        48
    linuxgo  
       353 天前 via Android
    我是用 nc 做同步,用 prism 看照片
    jesky
        49
    jesky  
       353 天前
    iOS 的 live photo 有解吗 ,大佬们
    fregie
        50
    fregie  
    OP
       353 天前
    @zzutmebwd 不开源,但是是群晖官方的,相对放心一些
    fregie
        51
    fregie  
    OP
       353 天前
    @linuxgo 我目前跟你一样的方案,但是 nc 同步功能不好用,经常需要对比所有文件
    photoprism 也没有客户端,手机上浏览的体验实在不太好
    GrayXu
        52
    GrayXu  
       353 天前
    “希望能达到 google photo 的体验级别”,那为什么不直接用 google photos 呢🤔
    FrankAdler
        53
    FrankAdler  
       353 天前 via iPhone
    实测群晖 photos 支持 heic ,支持人脸识别,地区搜索,相册等功能,明明是最丰富的
    byte10
        54
    byte10  
       353 天前
    @brader @DIO @FinnY @damichifan @kevinlexming @icetea12138 @linuxgo @musi
    @arrando @shenlanAZ @yanhuijun1996
    关于云盘安全的问题,大家可以看看 alist-encrypt 可以保证你的云资料安全,支持文件上传加密,能在线播放加密的视频和图片,能在线播放加密的视频和图片,支持加密文件名。超强应用,还能分享加密文件给好友,也不会被封,不会被和谐视频。支持跨平台,因他是 nodejs 写的,支持运行在安卓的 termux ,bnodejs ,autojs 等 app 上,支持 arm 盒子,支持 docker 运行等。

    另外楼主,如果很的要搞一个 app 成本很高的。。。90%会黄掉,比如你结婚啦,要带娃啦,真的不太建议。。
    fregie
        55
    fregie  
    OP
       353 天前
    “希望能达到 google photo 的体验级别”,那为什么不直接用 google photos 呢🤔
    @GrayXu 好一个断章取义
    fregie
        56
    fregie  
    OP
       353 天前
    @byte10 感谢你的提醒,我考虑过这个问题,我只是想做一个功能比较简单的 app,就浏览和同步,不打算加很多花里胡哨的东西,我想的是几个月做完了就算完了,后面偶尔修修 bug 就好了.
    fregie
        57
    fregie  
    OP
       353 天前
    @FrankAdler 可惜我已经放弃群晖装了 unraid 了....没机会体验 photos 了
    hicdn
        58
    hicdn  
       353 天前
    家里所有人手机照片备份到群晖 moments ,局域网有台 pixel 手机, 群晖定期推新照片到手机,以备份到 google photos 。

    搜索照片用 google photos ,需要原始照片根据搜索结果去群晖取。

    https://4ft35t.github.io/post/backup-nas-photo-to-goole-photo-via-pixel-for-unlimited/
    lifanxi
        59
    lifanxi  
       353 天前
    我主要用群晖 Photos ,Google Photos 也备份一份,但是不太用,最多用用搜索。

    自建的照片管理的话,我觉得 MT Photos 是最好的,不需要“之一”。虽然不开源,但是目前完成度已经挺高了,开发还挺活跃,需求接得也很快。
    lifanxi
        60
    lifanxi  
       353 天前
    @kelestudio 写个脚本做一下归一化处理。从文件名、文件 stats 和 EXIF 中解析出日期时间,然后自己定个规则以哪个时间为准,更新 EXIF 。其它就可以直接交给照片管理软件处理了。
    cksuenlan
        61
    cksuenlan  
       352 天前
    第三方 APP 都不好用,很容易被系统杀掉,不能做到无感同步,这也是我一直没用群晖的原因,
    lovelylain
        62
    lovelylain  
       352 天前 via Android
    比较需要缩略图的功能,文件同步通过 webdav 或 smb 无论是手工复制还是其他 APP 自动同步,我都能接受,但是这俩本身都不支持缩略图,我用的 ES 文件浏览器,它要把整个文件下载后才能整出缩略图,性能太低了,希望找一个集成缩略图方案的 APP
    hanguofu
        63
    hanguofu  
       352 天前 via Android
    我觉得楼主的想法很好,支持一下!
    collery
        64
    collery  
       352 天前
    @muyeyong 威联通的 app 真难用
    WebKit
        65
    WebKit  
       352 天前 via Android
    群晖 6.x 最新版本,7.x 都支持 heic 格式。前提是你需要安装 AME 并且成果激活
    zisen
        66
    zisen  
       352 天前 via iPhone
    @kelestudio 哈哈哈我之前写的 python 脚本就是解决这个问题的 不过我解决完我的历史照片之后就停更了 因为我之后的照片统一都是 iOS 设备拍摄的了 历史照片打了一个 80G 的压缩包存在网盘里 iOS 设备拍摄的照片存在 iCloud 里 感兴趣可以看看我以前发的帖子
    lozzow
        67
    lozzow  
       352 天前
    @kelestudio 这个我真建议用 chatgpt 来生成代码,哈哈哈
    kuawo
        68
    kuawo  
       352 天前
    苹果开的土区和另外几个人一起共享 挺划算.
    然后自己买了个 pixel 手机 用来给谷歌相册传照片,用了好几年 强大之处不必多说.

    最近发现也可以通过 pixel 降 苹果的 live photo 原图传到 google photo,但是部分图片那个 live 视频会扭曲..
    linuxgo
        69
    linuxgo  
       352 天前
    @fregie #51 nc 的同步我觉得现在已经不错了啊,指定需要同步的手机目录和远程存放的位置就可以了呀,基本在你拍完照片之后它就会立即同步了 ,以前的 nc 确实不行。另外 prism 看照片我都是在浏览器里看,也可以满足要求了,生成的缩略图比 nc 好
    Donjote
        70
    Donjote  
       352 天前
    @pcmid 我今为啥自动备份的时候,总是有部分照片备份不了,华为 mate40 。不知道什么情况
    linuxgo
        71
    linuxgo  
       352 天前
    @cyningxu #22 photoprism 浏览图片比 nc 好很多
    ysjiang4869
        72
    ysjiang4869  
       352 天前
    用过 nextcloud ,感觉同步功能很够用,但是管理一般。
    买了 NAS 用了 qfile+qumagie ,觉得还是够用的,足够解决日常需求。
    kerb15
        73
    kerb15  
       352 天前
    MTphotos MTphotos MTphotos 强推!!!
    whypro
        74
    whypro  
       352 天前
    NextCloud 的同步功能我当时碰到了几个问题(我用的 iOS ):
    1. 同步后,批量下载下来后照片的 meta info (创建时间、修改时间)会被修改为下载时间。
    2. 延时摄影或者慢镜头同步后会还原为普通视频
    3. 对照片或视频在手机上编辑后,还会同步编辑前的照片
    因为这几个小问题,最终还是放弃了,转投了 PhotoSync 。
    justaname
        75
    justaname  
       351 天前
    @kerb15 看了一下,国产,不收费,不开源,还真不太敢用。。。
    kerb15
        76
    kerb15  
       351 天前
    @justaname 收费的。。。作者全职维护
    justaname
        77
    justaname  
       350 天前
    @kerb15 不好意思我没看仔细好像确实是收费的。但是我找了半天没找到价格和订阅说明。。。这对收费商业软件也太奇怪了吧,一般来说这种信息都会放在首页显眼的地方呀
    kerb15
        78
    kerb15  
       350 天前
    @justaname 因为它让你试用一个月再考虑购买的事,作者比较低调,事实就是试用的人都发现了它的好用并且很乐意购买,我也是试了市面上几款之后最终发现 它符合我的需求,不能只看文档,这些都得亲身体验才知道个中好坏,如果你真的有你说的哪些痛点需求的话,不妨先试试再考虑自己开发的问题
    kelestudio
        79
    kelestudio  
       345 天前
    @zisen 我自己也写了代码做这些事。先上传 nextcloud ,再脚本跑一边,然后重新索引。。。就是有点麻烦。
    ChenSino
        80
    ChenSino  
       338 天前
    mark 一下,我之前还向用 flutter 写一个 app 的,一直没开始行动。。。。
    arrando
        81
    arrando  
       274 天前
    @byte10 感谢,我试试看
    Apol1oBelvedere
        82
    Apol1oBelvedere  
       263 天前
    @dalianmao123 #32 单是不支持自定义目录,对于资料性图片的特定目录管理很不方便。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1179 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 18:18 · PVG 02:18 · LAX 11:18 · JFK 14:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.