The VideoKit is a collection of workflows that allow you to create and edit different kinds of videos.
These workflows were designed to power-up your ability to create short-form videos.
Below you will find workflows that are ready for Glifchat use. This means that the workflows have all their input descriptions filled in so that your bot knows how to use them as skills and create videos end-to-end.
Under the hood, the glifs are communicating with a custom backend. At the moment, you need a special API key in order to run the functions. If you're still curious about all of the capabilities, you can check the swagger docs here.
Below are some pre-built workflows, ranging from high-level to low-level functions.
We convert everything to mp4 format. If your input videos have a different encoding, rendering could take a longer time, and often result in a error. For best results, pass urls of mp4 videos.
Creates a TikTok video given a video url and a voice url. Text will be overlayed on top of the video at the selected location (top, center, bottom). If the video is shorter than the voice clip, then the video will loop. If the video is longer than the voice clip, then it will shorten the video length to match.
Creates a tiktok video given a video url, a voice url and an extra video url to put below the first video. Text will be shown on top of the video at the selected location (top, center, or bottom). If the video is shorter than the voice clip, then the video will loop. If the video is longer than the voice clip, then it will shorten the video length to match.
Creates a tiktok video given image urls and and a voice url. Captions will be overlayed on top of the images at the selected location (center, top, bottom).
You do not need to worry about setting the duration of the images for the video to match the audio length, we do that all magically for you π.
OPTIONAL: You can also overlay audio by passing a audio file mp4!
Create a video from a combination of images, videos and/or audio. Clip AND loop options are mutually exclusive. Stay around 480p or less. Animated gifs need to be added to video urls, not image urls. Bools should be "true" or "false". If no audio is given, it will use the audio from video clips if possible.
Create a video from a combination of images, videos and/or audio, and keeps the respective order. Clip options are mutually exclusive. Stay around 480p or less. Bools should be "true" or "false". If no audio is given, it will use the audio from video clips if possible.
video_url: url to the video
voice_url: url to the voice that will be transcribed
text_position: where to put the text
video_url: url to the video
voice_url: url to the voice that will be transcribed
text_position: where to put the text
bottom_video_url: url to the video to show at the bottom
image_urls: list of image urls
voice_url: url to the voice that will be transcribed
song_url: optional background music url
text_position: where to put the text
highlight_color: color of the text highlighting
add_watermark: add Glif watermark in corner
image_duration: duration of each image in seconds
image_urls: list of image urls
video_urls: list of video urls
audio_url: url to the voice that will be transcribed
height: height of the video
width: width of the video
clip_length_to_audio: clip video to audio
clip_length_to_video: clip audio to video
loop_audio: loop audio until length of video
loop_video: loop video until length of audio
asset_urls: list of urls to images and videos
image_duration: duration of each image in seconds
audio_url: url to the voice that will be transcribed
height: height of the video
width: width of the video
clip_length_to_audio: clip video to audio
clip_length_to_video: clip audio to video
video_1_url: url to left/up video
video_2_url: url to right/bottom video
use_audio_from_first_video: use audio for first or not
layout: horizontal or vertical
loop_to_longest: loop to the longest video
height: final height
width: final width
fit_mode: pad or cover
video_url: Url to the video to add subtitles to.
voice_url: Url to the voice to add subtitles to.
text_position: "Position of the subtitles."
font_color: "Color of the subtitles in plain hex format e.g. `00FF00`.
font_name: "Name of the font to use for the subtitles.
font_size: "Size of the subtitles in pixels.
highlight_color: "Color of the subtitles in plain hex format e.g. `00FF00`.
use_openai_transcribe: Use OpenAI to transcribe the voice.
add_voice_audio: Add the voice audio to the video.
outline_color: "Color of the outline in plain hex format e.g. `00FF00`.
outline_size: Size of the outline in pixels.
bold: Bold the subtitles. Might not work with all fonts.
italic: Italicize the subtitles. Might not work with all fonts.
video_url: url to video to show
audio_url: url to the audio
mix_factor_video: True
mix_factor_audio: True