NAS系统折腾记 | TinyMediaManager刮削电影海报

搭建好了NAS系统和Emby Media Server,接下来就是怎样对下载好的电影/电视剧集等内容进行刮削来展示电影海报墙获得更好的效果了。实际上,Emby Server本身就内置了强大的元数据抓取功能,能够自动从互联网上抓取电影、电视剧的元数据和海报等信息。这意味着在大多数情况下,用户不需要依赖TinyMediaManager(TMM)或其他第三方软件来为Emby进行电影海报刮削。Emby可以直接从The Movie Database (TMDb)、IMDb、TheTVDB等多个源获取信息,包括海报、背景、剧情简介、演员列表等。

我这里选用了另外一个专门的刮削软件:TinyMediaManager。

TinyMediaManager简介

TinyMediaManager(TMM)是一个跨平台的媒体管理工具,用于组织和管理电影和电视剧集的集合。它是用Java编写的,因此可以在Windows、macOS和Linux上运行。TinyMediaManager提供了一系列功能,使用户能够轻松管理其数字媒体库。

主要功能

  1. 元数据抓取:TMM能够从各种在线源(如The Movie Database (TMDb)、IMDb、TheTVDB等)自动抓取电影和电视剧的元数据,包括标题、发布日期、评分、演员表、简介等。
  2. 艺术品管理:用户可以下载和管理电影和电视剧的封面、背景图片和海报。
  3. NFO文件生成:为电影和电视剧创建NFO文件,这对于与Kodi等媒体中心软件的兼容性尤其重要。
  4. 文件和文件夹重命名:TMM可以自动按照用户定义的规则重命名电影和电视剧的文件和文件夹,以保持媒体库的组织和一致性。
  5. 集合管理:它允许用户创建和管理电影集合,使得相似电影的整理和浏览变得更加容易。
  6. 多语言支持:TMM支持多种语言,用户可以选择不同的语言来抓取元数据。
  7. 高级搜索和过滤:强大的搜索和过滤功能使用户能够轻松找到库中的电影和电视剧。
  8. 集成播放器:虽然TMM主要是一个管理工具,但它也允许用户直接从应用内部播放媒体文件。

安装

在群晖NAS上,我选择了安装TinyMediaManager docker。另外,因为TMM v4开始收费,所以我选择了最新的v3.18版本。

进入群晖DSM container manager,在注册表里搜索tinymediamanager。

选择romancin/tinymediamanager,并下载develop-v3.1.8版本的镜像。

下载好后进入“映像”菜单,可以看到刚才下载的romancin/tinymediamanager映像,大小为250MB。选中此映像并点击“运行”。

在创建容器的向导中进行容器参数设置。可参考如下的基本设置,具体可根据自己机器的配置进行调整。

在“存储空间设置”中,需注意把NAS里的电影/电视剧集存储目录映射到docker里。

完成设置后勾选“向导完成后运行此容器”并点击“完成”。

这时候tinymediamanager容器已经正常运行了。

使用tinymediamanager刮削电影

通过浏览器访问 http://nas_server_ip:5800 来使用tinymediamanager。我的tinymediamanager环境变量设置了密码,所以需要输入密码登录。如果仅在内网使用的话也可以不用设置密码。

进入到tmm界面,检查软件更新界面可以直接关闭。

先进行一些基本的设置工作,点击“设置”。

设置界面语言为中文。

设置电影媒体库目录(需将NAS的媒体库目录映射到docker里)。

设置电影刮削器选项。可按照个人喜好设置,仅供参考。我这里选择TMDB刮削,并提供TMBD API密钥。

刮削器选项。

NFO设置。

预告片设置。

字幕刮削设置。

电视节目设置类似,不再赘述。

接下来更新电影源。选中“电影”tab,点击“更新源”。Tinymediamanager会自动扫描电影目录下的子目录并更新电影列表。

点击“搜索&刮削”,并选择一个刮削选项开始自动刮削。

电视界面的刮削方法类似,在这里不再赘述。

刮削完成后在emby里的显示效果。

作者Blog原文:NAS系统折腾记 | TinyMediaManager刮削电影海报 - HY's Blog

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/690622.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

NestJS入门:不同请求方式前后端写法

前文参考: NestJS入门1 NestJS入门2:创建模块 //GET http://localhost:3000/userGet()async findAll() {return this.userService.findAll();}// POST http://localhost:3000/user Body加上X-www-form-urlencoded数据 Post()create(Body() createUs…

论UI的糟糕设计:以百度网盘为例

上面这一排鼠标一经过就会弹出来(不是点才弹出来),然后挡住你的各种操作, 弹出来时你就必须等它消失,卡一下才能操作。 在用户顺畅地操作内容时,经常就卡一下、卡一下、卡一下…… 1、比如鼠标从下到上&am…

基于YOLOv7算法和Widerface数据集的高精度实时人脸检测系统(PyTorch+Pyside6+YOLOv7)

摘要:基于YOLOv7算法和Widerface数据集的高精度实时人脸检测系统可用于日常生活中检测与定位人脸目标,此系统可完成对输入图片、视频、文件夹以及摄像头方式的目标检测与识别,同时本系统还支持检测结果可视化与导出。本系统采用YOLOv7目标检测…

【springboot+vue项目(十五)】基于Oauth2的SSO单点登录(二)vue-element-admin框架改造整合Oauth2.0

Vue-element-admin 是一个基于 Vue.js 和 Element UI 的后台管理系统框架,提供了丰富的组件和功能,可以帮助开发者快速搭建现代化的后台管理系统。 一、基本知识 (一)Vue-element-admin 的主要文件和目录 vue-element-admin/ |…

【社区投稿】给Rust的Struct自动实现trait

给Rust的Struct自动实现trait 我们通常使用 #[derive(Clone, Debug)] 这样的方式给struct自动实现相应的trait,从而让struct具备某些特性,但是如果我们想让编译器给struct自动实现自己定义的trait要怎么办? 首先我们需要有一个trait&#xff…

蓝桥杯刷题--python-9(2023填空题2)

001串的熵 - 蓝桥云课 (lanqiao.cn) import mathn 23333333for i in range(1, n >> 1):j n - ia -(i / n) * (math.log2(i / n)) * i - (j / n) * (math.log2(j / n)) * ja round(a, 4)if a 11625907.5798:print(i)break0求和 - 蓝桥云课 (lanqiao.cn) n20230408 pr…

opencv进行人脸识别

目录 一:准备工作 二:人脸图片识别 三:视频人脸识别 一:准备工作 1:github网站下载开源人脸特征数据 haarcascade_frontalface_default.xml 下载链接:

如何确定分库还是 分表?

分库分表 分库分表使用的场景不一样: 分表因为数据量比较大,导致事务执行缓慢;分库是因为单库的性能无法满足要求。 分片策略 1、垂直拆分 水平拆分 3 范围分片(range) 垂直水平拆分 4 如何解决数据查询问题&a…

【Jvm】性能调优(拓展)Jprofiler如何监控和解决死锁、内存泄露问题

文章目录 Jprofiler简介1.安装及IDEA集成Jprofiler2.如何监控并解决死锁3.如何监控及解决内存泄露(重点)4.总结5.后话 Jprofiler简介 Jprofilers是针对Java开发的性能分析工具(免费试用10天), 可以对Java程序的内存,CPU,线程,GC,锁等进行监控和分析, 1.安装及IDEA集成Jprofil…

车载软件架构 —— Adaptive AUTOSAR软件架构中时间同步、网络管理和软件更新策略

车载软件架构 —— Adaptive AUTOSAR软件架构中时间同步、网络管理和软件更新策略 我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师(Wechat:gongkenan2013)。 老规矩,分享一段喜欢的文字,避免自己成…

解决用IPV6+DDNS访问UNRAID webui周期性失效的问题,smb不能访问的问题

我使用的unraid系统使用ddns(DDNSGO)绑定域名(阿里域名)与主机的ipv6地址进行远程访问,unraid是6.12.8。 遇到的问题是,配置当时是没问题的,但是过几天就会失效,无法通过域名访问we…

linux查看磁盘占用命令

查看系统整体的磁盘占用情况 df -h查看当前文件夹下所有子文件夹的磁盘占用情况 du -ah --max-depth1按照文件大小从大到小排序 du -ah --max-depth1 .|sort -hr查看当前文件夹以及所有子文件夹的磁盘占用汇总 du -sh *按照文件大小从大到小排序 du -sh *|sort -nr

MongoDB聚合运算符:$arrayElemAt

MongoDB聚合运算符$arrayElemAt用于返回数组中指定位置的元素。 语法 { $arrayElemAt: [ <array>, <idx> ] }<array>可以是任何能被解析为数组的表达式。<idx>可以是任何可以被解析为整数的表达式。 使用 如果<idx>为0或正整数&#xff0c;则…

【SQL注入】基于extractvalue函数的报错注入原理

一、ExtractValue函数 ExtractValue()函数是MySQL数据库中用于提取XML数据中指定路径的值的函数。它基于XPath语法&#xff0c;允许用户根据特定的路径表达式从XML格式的数据中获取所需信息。以下是关于MySQL中ExtractValue()函数的详细讲解&#xff1a; 1.1语法 EXTRACTVAL…

【国产MCU】-CH32V307-通用定时器(GPTM)-编码模式与旋转编码器驱动

通用定时器(GPTM)-编码模式与旋转编码器驱动 文章目录 通用定时器(GPTM)-编码模式与旋转编码器驱动1、通用定时器编码模式介绍2、旋转编码器介绍3、驱动API介绍4、编码模式使用示例本文将详细介绍如何使用CH32V307通用定时器的编码模式。 1、通用定时器编码模式介绍 编码器…

Maven高级(一)

文章目录 Maven高级&#xff08;一&#xff09;1. 分模块设计与开发1.1 介绍1.2 实践1.2.1 分析1.2.2 实现 1.3 总结 2. 继承与聚合2.1 继承2.1.1 继承关系2.1.1.1 思路分析2.1.1.2 实现 2.1.2 版本锁定2.1.2.1 场景2.1.2.2 介绍2.1.2.3 实现2.1.2.4 属性配置 2.2 聚合2.2.1 介…

扫码即可快速协作:草料二维码底部协作面板功能详解

功能介绍 在二维码上添加 底部协作面板 功能后 &#xff0c;扫码后不仅可以阅读设备信息、产品资料等基本信息&#xff0c;还可以在二维码底部输入内容评论并他人快速协作&#xff0c;支持添加图文、语言、手写签名等操作。 底部协作面板是提供给组织内部成员快速协作的功能&…

《汇编语言》- 读书笔记 - 第10章-CALL 和 RET 指令

《汇编语言》- 读书笔记 - 第10章-CALL 和 RET 指令 10.1 ret 和 retf检测点 10.1 10.2 call 指令10.3 依据位移进行转移的 call 指令检测点 10.2 10.4 转移的目的地址在指令中的 call 指令检测点 10.3 10.5 转移地址在寄存器中的 call 指令10.6 转移地址在内存中的 call 指令检…

数据模型概念

一、概念 (1) 定义 在数据库系统中针对不同的使用对象和应用目的&#xff0c;采用不同的数据模型。根据模型的应用的不同目的&#xff0c;可以将这些模型划分为两类&#xff1a; (2) 分类 A&#xff1a;概念数据模型 它也称信息模型它是按用户的观点&#xff08;观念世界&…

Android 基础技术——Synchonized 关键字

笔者希望做一个系列&#xff0c;整理 Android 基础技术&#xff0c;本章是关于Synchonized 关键字 Synchronized 关键字的作用是什么&#xff1f; 原子性&#xff1a;确保线程互斥访问同步代码 可见性&#xff1a;保证共享变量的修改能够及时可见&#xff0c;就是通过 Java 内存…