ClypraAPI文档:开发扩展的必备参考

ClypraAPI文档:开发扩展的必备参考
ClypraAPI文档开发扩展的必备参考【免费下载链接】ClypraA modern video editor built with Tauri, React, and TypeScript. Focus on building free capabilities of premium capcut functionalities项目地址: https://gitcode.com/GitHub_Trending/cl/ClypraClypra是一款基于Tauri、React和TypeScript构建的现代视频编辑器专注于提供免费的高级视频编辑功能。本文档将详细介绍Clypra的API接口帮助开发者快速上手扩展开发轻松实现视频编辑功能的定制与增强。一、API概览Clypra API为开发者提供了丰富的接口用于访问和操作视频编辑中的各种资源如过渡效果、滤镜、视频效果等。主要API类包括TransitionsApi、FiltersApi和VideoEffectsApi分别对应过渡效果、滤镜和视频效果的管理。1.1 核心API类TransitionsApi用于管理过渡效果包括获取过渡效果清单、分类、按分类获取过渡效果等功能。FiltersApi负责颜色分级滤镜的管理提供获取滤镜清单、分类、按分类获取滤镜等接口。VideoEffectsApi处理视频效果和身体效果包括获取视频效果清单、身体效果清单、渲染器效果等。二、TransitionsApi详解TransitionsApi类提供了一系列静态方法用于与过渡效果相关的API交互。2.1 获取过渡效果清单static async getManifest(): Promise{ categories: Array{ id: string; name: string; count: number }; totalCount: number; }该方法用于获取过渡效果的清单包括分类列表和每个分类中的过渡效果数量。返回的数据结构包含分类数组和总过渡效果数量。2.2 获取过渡效果分类static async getCategories(): PromiseTransitionCategory[]调用此方法可获取所有过渡效果分类的详细信息包括分类ID、名称、描述等。2.3 按分类获取过渡效果static async getByCategory(category: string): PromiseTransitionAsset[]通过指定分类ID该方法返回该分类下的所有过渡效果资产。每个过渡效果资产包含ID、名称、预览图URL等信息。2.4 按ID获取过渡效果static async getById(category: string, id: string): PromiseTransitionAsset根据分类ID和过渡效果ID可获取特定过渡效果的详细信息。2.5 搜索过渡效果static async search(query: string): PromiseTransitionAsset[]通过关键词搜索过渡效果返回匹配的过渡效果资产列表。三、FiltersApi详解FiltersApi类提供了颜色分级滤镜相关的API接口。3.1 获取滤镜清单static async getManifest(): Promise{ categories: Array{ id: string; name: string; count: number }; totalFilters: number }该方法返回滤镜的清单信息包括分类列表和每个分类中的滤镜数量以及总滤镜数量。3.2 获取滤镜分类static async getCategories(): PromiseFilterCategory[]获取所有滤镜分类的详细信息如分类ID、名称、描述等。3.3 按分类获取滤镜static async getByCategory(category: string): PromiseFilterAsset[]根据分类ID获取该分类下的所有滤镜资产。每个滤镜资产包含ID、名称、缩略图URL等信息。3.4 按ID获取滤镜static async getById(category: string, id: string): PromiseFilterAsset通过分类ID和滤镜ID获取特定滤镜的详细信息。3.5 搜索滤镜static async search(query: string): PromiseFilterAsset[]使用关键词搜索滤镜返回匹配的滤镜资产列表。四、VideoEffectsApi详解VideoEffectsApi类用于管理视频效果和身体效果提供了丰富的API接口。4.1 获取视频效果清单static async getVideoEffectsManifest(): Promiseany获取视频效果的清单信息包含所有可用的视频效果。4.2 获取身体效果清单static async getBodyEffectsManifest(): Promiseany该方法返回身体效果的清单包括分类和每个分类中的效果数量。4.3 获取渲染器效果static async getRendererEffects(): PromiseEffectPreset[]获取所有基于渲染器的视频效果预设。4.4 按分类获取渲染器效果static async getRendererEffectsByCategory(category: string): PromiseEffectPreset[]根据分类获取特定类别的渲染器效果预设。4.5 按ID获取渲染器效果static async getRendererEffectById(id: string): PromiseEffectPreset通过效果ID获取特定的渲染器效果预设。4.6 下载效果预览视频static async downloadEffectPreview(effectId: string, category: string): PromiseBlob下载指定效果的预览视频返回Blob对象。4.7 获取效果预览的Object URLstatic async getEffectPreviewObjectURL(effectId: string, category: string): Promisestring获取效果预览视频的Object URL可用于在页面中播放预览视频。4.8 搜索渲染器效果static async searchRendererEffects(query: string): PromiseEffectPreset[]使用关键词搜索渲染器效果返回匹配的效果预设列表。4.9 获取身体效果static async getBodyEffects(): PromiseEffectPreset[]获取所有身体效果预设。4.10 按ID获取效果static async getEffectById(id: string): PromiseEffectPreset通过效果ID获取特定的效果预设包括视频效果和身体效果。4.11 清除本地缓存static clearLocalCache(): void清除所有本地缓存包括清单缓存、分类缓存、项目缓存和Blob缓存。4.12 获取缓存统计信息static getCacheStats(): { manifestCached: boolean; categoriesCached: number; itemsCached: number; blobsCached: number; totalBlobSizeMB: number; }获取缓存的统计信息包括是否缓存了清单、缓存的分类数量、项目数量、Blob数量以及总Blob大小MB。五、API使用示例以下是一个使用TransitionsApi获取过渡效果分类并显示的示例import { TransitionsApi } from /features/transitions/api/transitionsApi; async function loadTransitionCategories() { try { const categories await TransitionsApi.getCategories(); console.log(Transition categories:, categories); // 在UI中显示分类 } catch (error) { console.error(Failed to load transition categories:, error); } } loadTransitionCategories();六、API错误处理所有API方法在遇到错误时都会抛出异常开发者应使用try/catch语句捕获并处理这些异常。常见的错误包括网络错误、HTTP错误状态码等。API方法会在控制台输出详细的错误信息帮助开发者进行调试。七、API源码路径TransitionsApi源码src/features/transitions/api/transitionsApi.tsFiltersApi源码src/features/filters/api/filtersApi.tsVideoEffectsApi源码src/features/video-effects/api/videoEffectsApi.ts八、总结Clypra API为开发者提供了强大而灵活的接口用于扩展和定制视频编辑功能。通过TransitionsApi、FiltersApi和VideoEffectsApi开发者可以轻松地集成过渡效果、滤镜和视频效果到自己的扩展中。希望本文档能帮助开发者快速掌握Clypra API的使用开发出更多精彩的视频编辑扩展【免费下载链接】ClypraA modern video editor built with Tauri, React, and TypeScript. Focus on building free capabilities of premium capcut functionalities项目地址: https://gitcode.com/GitHub_Trending/cl/Clypra创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考