云计算、AI、云原生、大数据等一站式技术学习平台

网站首页 > 教程文章 正文

利用代码实现_剪映小助手数据生成器_的audio_infos功能

jxf315 2025-08-02 18:59:10 教程文章 3 ℃

一、原来剪映小助手流程

1、str_to_list 字符串转数组-背景音乐

2、输入和输出的数据

3、测试的数据

1)、输入

{
  "mp3_urls": [
    "https://lf6-lv-music-tos.faceu.com/obj/tos-cn-ve-2774/osYfJMUfcfSpheyAn8GVf77Yp92MIjrllBEmoA"
  ],
  "timelines": [
    {
      "end": 16008000,
      "start": 0
    }
  ]
}

2)、输出

{
  "infos": "[{\"audio_url\":\"https://lf6-lv-music-tos.faceu.com/obj/tos-cn-ve-2774/osYfJMUfcfSpheyAn8GVf77Yp92MIjrllBEmoA\",\"start\":0,\"end\":16008000}]"
}

二、代码实现

1、分析

通过分析得知,小助手就是将音频数组和时间线进行拼接,形成一个字符串。

只需处理texts(音频数组)、timelines(04a里面生成的时间线);然后在代码里面进行拼接形成一个字符串。

2、核心代码

import json
async def main(args: Args) -> Output:
    params = args.params    
    infos_list = []
   
    # 遍历文本和时间轴创建信息列表
    for text, timeline in zip(params["mp3_urls"], params["all_timelines"]):
        info = {
            "start": timeline["start"],
            "end": timeline["end"],
            "audio_url": text           
        }
        infos_list.append(info)
    
   
    
      # 构建输出对象
    ret: Output = {
      # 生成最终结果并序列化为紧凑JSON格式   
      "infos": json.dumps(
            infos_list,
            ensure_ascii=False,  # 保留中文原样
            separators=(",", ":")  # 移除JSON中的多余空格
        )
    }
    return ret

3、运行截图

最近发表
标签列表