APP下载 微博 微信

Hao4K影音


[软件相关] Yuran的三板斧,第一项完美成功。第二项,也有突破!

[复制链接]

发表于 2021年01月11日 17:09 9043 0 来源:影视制作> 软件相关 |只看大图 回帖奖励 |正序浏览 |

Yuran 帖主

2021-1-11 17:09

这是我的自习笔记。

为了优化整理UHD BD片源,最近,我让天龙功放8500H,歇了几周。

PC中的文档、照片、影视资料、理财资料等、都得搞好文档管理!事半功倍的方案,就是编程,用程序去自动接管...
我不是软件设计的高手,但爱折腾。 也能顺道练练:DIY编程, 实现家庭影院自动化!

如果,看了本篇(以及前期连载篇)中的、各种GIF动画演示,就会觉得,特别有意思!
PC软件的处理效率、速度,能帮大忙!反正都是:心旷神怡、一劳永逸的好事,足够今后(长时间)享用的了。

那就继续加码,潜心钻研,分批实现:三个计划。戏称“三板斧”。



第一板斧”劈下去,立竿见影。已发帖介绍:


10篇连载:《Yuran DIY制定硬盘(UHD-BD)片源存储管理规范_优化整编片源的心得_概念性指导》!

实现了以下几个功能:

  • 1.将数TB硬盘中的、百千级别的UHD BD片源,自动检查文件夹名(排除各类隐患)!
(前期连载篇中,有相关GIF动画演示)。

  • 2. 对每个文件夹,做更名的优化处理(自动添加中文片名, 整齐划一、规范化存档)。

下面这2个GIF动画/演示,是Yuran最新补充的!

Yuran将92个片源,故意弄乱(全都变成:风马牛不相及的文件夹名)。
一旦使用DIY编程的软件,就能根据不同的、movie.nfo数据,自动生成列表文件(给出92个文件夹的更名建议)。

951c.gif

随后,92个文件夹,瞬间更名(还原英文片名,增补中文片名,添加发行年代);风驰电掣般的感觉!

753.gif

  • 3.自动甄别:音视频的规格!并提供列表文件,给出参考建议
前期连载篇中,有相关GIF动画演示)。

  • 4. 最终, 将集中在下载目录中的、成百上千的片源,全部(自动)进行、分类存放
前期连载篇中,有相关GIF动画演示)。

上面的这些,只是Yuran的规划中,稳准狠的、"第一板斧"。



那"第二板斧"呢?!
正在酝酿, 恰好,借助于微软的推介,Yuran觉得:豁然开朗。现如今,也做概念性的介绍,抛砖引玉。

那些8TB、10TB的硬盘,存入大量的UHD BD片源后,肯定会,剩下一小部分(鸡肋)空间。
举例:我这里,某硬盘,尚余65GB 。若再想拷贝87GB的电影片源,空间不够。
难道就听之任之,浪费掉?!

Yuran的想法,从别的硬盘中、或从(PC)新下载的目录中,寻找:小于65GB的片源,再挪过来,正刚好!
也有别的套数,先劝退一个“胖子”,再请来两个“瘦子”
(实际也试过,优化组合嘛。
举例:原先硬盘,尚余60GB。再挪走某个、85GB电影,可用空间,就变成:145GB,
再将两个70GB左右的片源,拷贝进来。最终的结果:物尽其用!

能不能,再狠一点,尽量压榨硬盘空间?比如,让硬盘,仅剩几百兆,甚至更低(能存放字幕就行)?!
这些工作,若由人工来做,也行,就是累!  用肉眼去核查,哪些影碟的目录,够用。还得计算...



但凡人工干过的事情,不妨尝试,编程做出程序,用电脑替代人脑,提高效率。
要不然,就试着编一个程序吧。让实用软件,自动去检索、统计、比较、计算 ...

这就是,"第二板斧"的规划。

从概念、理论上来说, 必须构建两个软件模组!

  • 1. 能计算出:当前硬盘分区的、剩余空间量。
  • 2. 能报出:某个影碟文件夹的、属下全部文件的、占用空间量。

第一个模组,不难实现。

q1.jpg

有四种思路(还是那句话:若有现成的程序,就直接套用。不必DIY编程了。):

I. DIR 模式:随便编个批处理。

q2.jpg

建议大家,多学学编程。我也不是程序员,但热衷于玩这类:家庭小型自动化,乐此不彼!搞得越高深,效率就越高。干脆,直接单行输出!

q3.jpg

II. FSUTIL 模式也是Windows 10 自带的、实用工具(但需要:管理员的权限)。

q4.jpg

III. WMIC 模式:

我在前期连载篇中,就讲过:这个新奇的、微软内置的实用工具。

q5.jpg

这回,将参数,替换成 Freespace,就能立即得到:硬盘的剩余空间量!

IV. PSINFO 模式:

第三方的实用工具,需下载。

q6a.jpg

根据自己的偏好,自由选择吧。



第二个软件模组,需要直观地给出:某指定(影碟)文件夹的、涉及全部文件的、占用空间量。

海外网友的沟通中,都谈起 DUDisk Usage),这个第三方程序。

112.jpg

正好刚看到,微软Windows10的系统更新,也主动向用户推荐, DU!

9.jpg

微软都将其收购,加入Windows10 的更新中。可见,这个DU ,非常棒!
微软官网/下载信息: https://docs.microsoft.com/zh-cn/sysinternals/downloads/du

去搜寻 微软 diskusage  就能查到,相关的新闻。



我这里,立即下载DU,随后拷贝到: c:\windows\system32  文件夹中。
弄了几个"假想敌",立即编程、实验。果不其然:召之即来、来之能战...

q7.jpg

虽然,我本人,也能设计出:累加计算文件夹内、所有文件大小的软件模块。

但毕竟:DU 是微软推荐的,不久的将来,Win10新的升级补丁中,就直接放到系统中了。
DU的效率很高,针对各个待选的文件夹,都能立即报出:实际的空间/大小。



后续的流程。Yuran的思路:剔除超标的(片源目录,占用空间太大,超过硬盘的可用空间)。

再从合适的文件夹中,"择优录取"(尽可能地、接近于:硬盘的可用空间)
但是,数据对比时,有点麻烦。

硬盘的空间,按目前的惯例、以字节为单位。TB级别的数值,非常之大。
不仅编程困难,也有隐患(得留有余量,适应将来的、更大的硬盘)。

32位的最大值 2,147,483,647  ,换算成二进制0111 1111 1111 1111 1111 1111 1111 1111

(有效位数31,而最前面的位,描述正负的标志位)。 用这个来表述硬盘空间, 也就2GB 左右。



而TB级别的硬盘,比如 1.8TB左右的硬盘,字节数,是 1,982,584,098,816 ,换算成二进制:

1 1100 1101 1001 1011 0011 1000 1001 0000 0000 0000


41位了



为避免数据对比时,留下隐患。Yuran决定,不考虑:数据的直接对比。
改从字符串中,按 TB、GB、MB、KB的等级,分别摘取,再分别比较。

  • n1 是TB级别 (十进制的3位, 最大999);
  • n2是GB级别 (十进制的3位, 最大999);
  • n3是MB级别 (十进制的3位, 最大999);
  • n4是KB级别 (十进制的3位, 最大999);
  • n5是字节级别(十进制的3位, 最大999);

像上面提及的、1.8TB 的硬盘,用 n1=1;n2=982;n3=584;n4=098;n5=816 来分别代表。

与其它硬盘比对时,都先拆分。

  • 硬盘的可用空间,用y1、y2、y3、y4、y5来表述;
  • 待选目录的占用空间,用c1、c2、c3、c4、c5表达。

先从高位(c1) 比较,

  • 若c1 >y1,直接判定超标(忽略低位的比较);
  • 若c1 <y1,直接判定合格(忽略低位的比较);
  • 若c1 =y1,不做判定,转交给:下一级的流程(用c2去比较y2)...

就这样,按优先级来判断。让软件,在相关变量的Flag,上做标记。程序就能综合判断:给出(比较)结果。
编程后,实战测试,切实可行。

q8.jpg

精心准备的、四个“假想敌”,最终被判定: 一个超标,三个合格。达到预期效果!
除了屏显之外,又生成一个列表文件,将待选者,罗列出来(文件夹的size,都没超过:硬盘可用空间):

q9.jpg

也有拓展的空间:即使是 999TB的硬盘,我设计的程序,也能比对!(无非就是,y1=999, c1=999...)



后续工作,Yuran需要设计的(软件)流程,就是排序!
在待选文件夹中,逐一比对,找出那个:与硬盘可用空间,最相近的那个(就能最大限度地、压榨硬盘空间了)。

如果,排序比对的实验,设计成功。那就给出一个列表文件,存入(待选)优胜者的文件夹名。
甚至还可以:安排 MOVE 的指令,直接操作:将待选的文件夹,整体挪到:被压榨的那个硬盘中。
毕竟是:影视资料盘,不必预留空间。

良好的开始,是成功的一半(先到这里,正在编写后续流程的脚本、再逐级测试...)

评分

参与人数 1活跃 +1 H币 +8 收起 理由 (评分规则)
流年似春水 + 1 + 8 很给力!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

返回列表 本版积分规则



绑定微信 + 关注公众号,第一时间获得消息通知!
:
版主
:
介绍未填写

主题

帖子

积分3672

Hao4K影音app客户端下载