Token导航 LogoToken导航TokenDH.com
音频生成操作浏览器github未标认证来源可访问许可证需确认审计提醒

music-video-producer音乐视频制作人

Agent Skill

用于辅助视频生成、动画合成、脚本化剪辑或 Remotion 等视频项目开发。它适合让 Agent 组织镜头、生成素材说明、维护合成代码或排查渲染问题。使用时需要确认分辨率、时长、素材路径和导出格式;涉及外部素材、人物肖像或商业发布时,应先核对版权授权和内容审核要求。

总安装

212

周安装

9

GitHub Stars

1

下载量

74
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:music-video-producer(音乐视频制作人)
来源仓库:https://github.com/mmcmedia/openclaw-agents
仓库路径:skills/music-video-producer
安装命令:
npx skills add https://github.com/mmcmedia/openclaw-agents --skill music-video-producer
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/mmcmedia/openclaw-agents --skill music-video-producer

简介

music-video-producer 用于辅助视频生成、动画合成和 Remotion 项目开发,适合让 Agent 组织镜头或维护合成代码。

  • 适用于音频生成类视频制作场景,需确认分辨率、时长和导出格式。
  • 通过 npx skills add 命令从指定 GitHub 仓库安装,需确认权限范围和维护状态。
  • 涉及外部素材或人物肖像时应先核对版权授权要求。
  • 当前无原始 SKILL.md 内容摘录,建议进一步查阅项目文档了解详细功能。

SKILL.md

Music Video Producer - Remotion Assembly

Build music videos programmatically using Remotion, syncing video clips, lyrics, and audio into polished final renders.

Prerequisites

Install Remotion:

npm install remotion @remotion/cli

Or create new Remotion project:

npx create-video@latest

Required inputs:

  1. Scene plan JSON (from creative-director)
  2. Video assets (from video-asset-manager)
  3. Audio file (MP3/WAV)
  4. Lyrics file (.srt or plain text)

Workflow

1. Set Up Remotion Project

Project structure:

music-video-project/
├── src/
│   ├── Root.tsx          # Main composition registration
│   ├── MusicVideo.tsx    # Main video component
│   ├── Scene.tsx         # Individual scene component
│   └── LyricOverlay.tsx  # Lyric display component
├── public/
│   ├── audio/
│   │   └── song.mp3
│   ├── assets/
│   │   ├── scene-01-sunrise.mp4
│   │   └── ...
│   └── lyrics.srt
├── package.json
└── remotion.config.ts

2. Build Remotion Composition

Root.tsx - Register composition:

import { Composition } from 'remotion';
import { MusicVideo } from './MusicVideo';

export const RemotionRoot: React.FC = () => {
  return (
    <Composition
      id="MusicVideo"
      component={MusicVideo}
      durationInFrames={6300} // 3:30 at 30fps
      fps={30}
      width={1920}
      height={1080}
    />
  );
};

MusicVideo.tsx - Main video logic:

import { Audio, Sequence, useCurrentFrame } from 'remotion';
import { Scene } from './Scene';
import { LyricOverlay } from './LyricOverlay';
import sceneplan from '../scene-plan.json';

export const MusicVideo: React.FC = () => {
  const frame = useCurrentFrame();

  return (
    <>
      <Audio src="/audio/song.mp3" />

      {sceneplan.scenes.map((scene, i) => (
        <Sequence
          key={i}
          from={scene.startFrame}
          durationInFrames={scene.durationFrames}
        >
          <Scene
            videoSrc={scene.videoAsset}
            transition={scene.transition}
          />
          <LyricOverlay
            text={scene.lyrics}
            style={scene.lyricDisplay}
          />
        </Sequence>
      ))}
    </>
  );
};

Scene.tsx - Video clip display:

import { Video, interpolate } from 'remotion';

export const Scene: React.FC<{ videoSrc: string; transition: string }> = ({
  videoSrc,
  transition
}) => {
  const frame = useCurrentFrame();

  const opacity = interpolate(
    frame,
    [0, 30, 60, 90],
    [0, 1, 1, 0], // fade in/out
    { extrapolateRight: 'clamp' }
  );

  return (
    <Video
      src={videoSrc}
      style={{ opacity }}
      muted
    />
  );
};

LyricOverlay.tsx - Lyric display:

import { AbsoluteFill } from 'remotion';

export const LyricOverlay: React.FC<{ text: string; style: string }> = ({
  text,
  style
}) => {
  return (
    <AbsoluteFill style={{
      justifyContent: style === 'bottom' ? 'flex-end' : 'center',
      alignItems: 'center',
      padding: 40
    }}>
      <div style={{
        fontSize: 48,
        fontWeight: 'bold',
        color: 'white',
        textShadow: '2px 2px 4px rgba(0,0,0,0.8)',
        textAlign: 'center'
      }}>
        {text}
      </div>
    </AbsoluteFill>
  );
};

3. Convert Scene Plan to Remotion Format

Helper script: scripts/convert_scene_plan.js

Converts creative-director JSON to Remotion-ready format with frame numbers:

node scripts/convert_scene_plan.js \
  --input scene-plan.json \
  --output src/scene-plan-frames.json \
  --fps 30

Adds startFrame and durationInFrames to each scene based on timestamps.

4. Render Video

Preview in browser:

npm start

Render final MP4:

npx remotion render MusicVideo output.mp4 --codec h264

Render with quality settings:

npx remotion render MusicVideo output.mp4 \
  --codec h264 \
  --crf 18 \
  --audio-bitrate 320k

Render for social media (square):

npx remotion render MusicVideo output-square.mp4 \
  --width 1080 \
  --height 1080 \
  --codec h264

5. Advanced Features

Audio visualization:

import { useAudioData, visualizeAudio } from '@remotion/media-utils';

const audioData = useAudioData('/audio/song.mp3');
const visualization = visualizeAudio({
  fps: 30,
  frame,
  audioData,
  numberOfSamples: 16
});

// Render bars based on visualization array

Captions from.srt:

import { parseSrt } from '@remotion/captions';

const captions = parseSrt(srtContent);
const currentCaption = captions.find(
  (c) => frame >= c.startFrame && frame < c.endFrame
);

Dynamic text animations:

import { spring } from 'remotion';

const scale = spring({
  frame,
  fps: 30,
  config: { damping: 100 }
});

Scripts

scripts/convert_scene_plan.js

Convert scene plan timestamps to frame numbers - see file for implementation.

scripts/render_all_formats.sh

Batch render multiple formats (YouTube, Instagram, TikTok) - see file for implementation.

Reference Files

  • references/remotion-examples.md - Code examples for common patterns
  • references/transition-effects.md - Crossfade, wipe, zoom transitions
  • references/lyric-styles.md - Typography and animation patterns

Quality Checklist

Before final render:

  • Audio syncs perfectly with video
  • Lyrics display at correct times
  • Scene transitions are smooth
  • No visual glitches or artifacts
  • Brand elements (logos) visible throughout
  • Resolution is correct (1080p minimum)
  • Audio quality is high (320kbps+)
  • Preview full video before final render

Deliverables

  1. Final MP4 video(s) - Full render in desired format(s)
  2. Remotion project files - Source code for future edits
  3. Render settings documentation - Codec, bitrate, resolution used

Troubleshooting

Video stutters or drops frames:

  • Reduce preview quality (lower fps/resolution)
  • Use --concurrency 1 flag for rendering
  • Pre-process heavy video files

Audio out of sync:

  • Ensure all timestamps in scene plan are accurate
  • Check fps matches between plan and composition
  • Use --enforce-audio-track flag

Render takes too long:

  • Use --concurrency flag to parallelize
  • Consider cloud rendering (Remotion Lambda)
  • Optimize video clip file sizes

PsalMix Branding

For PsalMix videos, include:

  • Logo watermark (lower right, 10% opacity)
  • End card with "Stream clean music at psalmix.com"
  • PsalMix brand colors in lyric styling
  • Clean, family-friendly aesthetic throughout

适合场景

01

生成背景音乐

02

生成歌曲或旋律

03

视频和播客配乐

04

社媒内容音频素材

能力概览

能力 1

调用音乐生成模型

能力 2

支持文本到音乐或歌曲生成

能力 3

提供 CLI 示例和使用场景

能力 4

适合音频内容工作流

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

37.32%
按下载量换算28

Claude

28.2%
按下载量换算21

Cursor

18.03%
按下载量换算13

Gemini CLI

8.92%
按下载量换算7

安全审计

Gen Agent Trust Hub

可疑

Socket

通过

Snyk

通过

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills