一个逻辑问题,求知道的告知下,情况是这样的。

2022-07-13 17:29:48 +08:00
 zjvbqla

一个逻辑问题,求知道的告知下,情况是这样的。某文件夹下有 N 段视频,这里随便举个例子,比如 10 段

分别为视频 1.mp4 2.mp4 3.mp4 以此类推到 10.mp4.

视频时长不等。

想做到

需求 1

自动检测这 N 段视频,并按照时长 8 秒分割这些视频,最后剩余的如果小于于 6 秒则删除,分割后建立对应视频名称的文件夹并写入。

需求 2

抽取这些文件夹里面的 8 秒片段视频,每个文件夹仅抽取一段,10 个文件夹的话就是 10 段,合成一个视频,并记录合成视频采用片段的前后排序关系。完成后继续合成,并读取该文件,确保再次合成的视频顺序不和前面生成的视频有相同之处。这样的话其实应该有很多种可能

写的有点乱,大概通俗的说,我要生成的视频每小段均取自分别的 8 秒视频片段,但是排序不同有很多可能。不知道怎么表达?我凌乱了。

或者给我几个关键词。我研究研究。

893 次点击
所在节点    问与答
7 条回复
imicksoft
2022-07-13 17:51:12 +08:00
视频处理有一个 ffmpeg ,可以编程调用
zjvbqla
2022-07-13 17:59:58 +08:00
@imicksoft 是的,这个我知道,我主要是想不明白这种排序有多可能,不知道怎么表达, 比如只有 3 段的话 就有 123 ,132 ,321
213 (这个就不行)因为 213 中的 13 和 132 这个的 13 排序重复
231 同理,231 的 23 和 123 的 23 排序重复

但是 10 段不知道会不会有很多变化,脑子不好用了。
misdake
2022-07-13 18:20:23 +08:00
是不是只要出现过 AB ,其他排列里都不能出现 AB 。2 段都不允许重复的话,更长的其实也不用考虑了。
问题就变成了给定 1 到 n 共 n 个数,这些数有哪些排列,使得所有排列中其中任意前后连续 2 个数字不重复出现。
2 个数字的组合共有 n*(n-1)种,每一个排列会消耗 n-1 种,所以最多能得到 n 个排列满足条件。接下来的问题就是是否一定能得到 n 个排列,和怎么得到这些排列。
我再想想
LLaMA2
2022-07-13 18:21:17 +08:00
说, 你是不是想免费使用别人的视频平台,先乱序组合上传,然后再解码复原,如果是这样大可不必这样,
如果不知道排列最和,最简单的是每个文件加里面的内容看成一个数组,然后就有 N 个数组,每个数组中有多个 8 秒视频,分别是 1 2 3 4 .. ,然后每一轮遍历数组随机取出数组中的一个元素并移除,组合放到别的地方,如此重复。
老实人,说出你真实的目的,网友的骚套路太多了
neteroster
2022-07-13 18:21:47 +08:00
@zjvbqla 那 132 和 321 这个 32 不重复吗?
zjvbqla
2022-07-13 18:34:09 +08:00
@neteroster 哦,对,刚刚举例疏忽了。是这意思。
@misdake 是的,没错,就是连续 2 段不能重复。谢谢。我也想想
@ye4tar 你说的方法可以做到不重复,但是生成数量应该会远远小于实际按照这个条件可以生成的数量
imicksoft
2022-07-15 15:32:23 +08:00
“123 ,132 ,321”中 132 和 321 中的“32”是不是重了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/865954

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX