原创
如何让代码使我们的工作和生活更加轻松
type
status
date
slug
summary
tags
category
icon
password
kind
supplier
supplierlink
现在学日语要下载比较多的视频,但是现在下一个视频,保存到电脑往往是分割成了几十个甚至上百个视频片段(见下图)。
这样的话就需要对这些视频进一步处理,不然的话使用起来不太方便。
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9f58fa47-bf18-4e83-b689-c62307b3ca84%2Ff425e3df-939c-49eb-b9d2-865ccb4ce857%2FGEIAW_GaIAAl38K.png?table=block&id=503a414b-931b-451e-9b34-37386079ba03&t=503a414b-931b-451e-9b34-37386079ba03&width=432&cache=v2)
下载视频手工步骤
- 将这些零碎视频合并成一个完整视频放在其它目录下;
- 删除那些源视频;
- 接着下载下一个视频。
自动化处理
如此的话,如果一次下载很多个视频就会很繁琐,也容易混淆出错。为此我就做了一个小工具,解决这个问题(见下图)。有了这个工具,我下完一个视频,然后输入一个文件名,点击开始处理就好了。
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9f58fa47-bf18-4e83-b689-c62307b3ca84%2F2dbf02a1-4a72-424d-80e6-7fae9fb0be62%2FGEIBHIUb0AAMw7k.png?table=block&id=daee9006-0544-4f82-86ed-db3b887f898d&t=daee9006-0544-4f82-86ed-db3b887f898d&width=880&cache=v2)
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9f58fa47-bf18-4e83-b689-c62307b3ca84%2F38b17934-0a3d-4d59-957e-07d2dbf88659%2FGEIDYHsbIAAnlsV.png?table=block&id=ad57f305-0284-4dcd-9c07-d3943f1f9450&t=ad57f305-0284-4dcd-9c07-d3943f1f9450&width=331&cache=v2)
自动处理完成后,我就接着下载下一个视频,不用去管源文件夹,目标文件夹,也不会出现这个文件夹那个文件夹切来切去,文件剪切粘贴删除等,也不用命令行反复去执行。
一切操作就简化成了,复制粘贴个文件名,然后点下开始处理。
一点经验分享
以上实现代码现在要写估计10分钟足够,然后加上界面整整,辅助提示搞搞,一两个小时就足够了。
但是我敢打赌一般这样直接写出来的根本就不能实用,因为实际生活中应用,一次往往要合并成百个文件。比如我的应用场景是每次接近100个或100多个零碎视频。
功能实现到能实际应用
也就是说,程序一运行就会卡死。
卡死,那就改成异步的,异步是不卡死,但完不成任务还是无限完不成。
那就想更好的算法。
这样的话,对于一般人来说,写个小工具就变成再一次折腾折磨自己。
我先来举个例子,假如有1000斤大米,让10个人来搬,每人一次搬100斤。
这10个人排成一排,第一个就搬不动这100斤,然后就停摆了。
怎么办呢?
让这10个人横着排成一排,能扛动100斤的就扛走了,但是搬不动的还是停在那。
实际解决办法很简单,100斤分成5份20斤,多跑几趟,可能不一定比直接扛100斤完成得慢。
复杂问题简单化
现在回到程序大家应该明白了。
实际好用的代码其实并不需要多高大上,只需要对实际处理的问题能有一个思路清晰的解决方案就可以。
我这个小工具就是采用了上面的思路,实际应用下来没有出过一次错,每次最多耗时2、3秒。而写这个工具只花1个小时,大大减轻了我下载四五百个视频的处理工作。
如果手动处理整理那几万个零碎小视频,那真的苦不堪言。所以不管是时间还是精力上面,花1个小时写工具都是超值的。
如果回到工作上来看也是如此,很多人疲于奔命工作,却成效甚微,很多时候也是做着做着,把工作要解决的目的给抛掉了。
然后把精力耗费在了整工具装备上面,炫奇技淫巧上面,到头来就好比开着兰博基尼跑车送快递,只有在平坦大道上,而且快递也有各种要求才体现出优势。
简单,少费脑,工作才会轻松一些。我时常会想起霍金,他的时间简史,有关他所追求的:
我们的目标是一个统一的理论,可以解释宇宙中的一切,从宇宙的大爆炸开始到我们自己的存在。 一个简洁的公式可以解释世界的一切。
核心代码分享
这个工具我是用C#写的,以下是C#的核心代码:
- 作者:東桂
- 链接:https://dongguixishi.com/article/it001
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。