Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | /** * 音频编辑服务 */ export class AudioEditService { /** * 裁剪音频 */ async trimAudio(audioId: string, startTime: number, endTime: number) { // 模拟音频裁剪 return { audioId: `trimmed-${audioId}-${Date.now()}`, originalAudioId: audioId, startTime, endTime, duration: endTime - startTime, status: 'completed', outputUrl: `https://example.com/audio/trimmed-${audioId}.mp3`, }; } /** * 合并音频 */ async mergeAudios(audioIds: string[], order: number[]) { // 模拟音频合并 return { mergeId: `merge-${Date.now()}`, audioIds, order, status: 'completed', outputUrl: `https://example.com/audio/merged-${Date.now()}.mp3`, totalDuration: audioIds.length * 180, // 估算时长 }; } /** * 获取音频信息 */ async getAudioInfo(audioId: string) { // 返回模拟音频信息 return { audioId, duration: 180, size: 2400000, format: 'mp3', bitrate: 128, }; } } export const audioEditService = new AudioEditService(); |