mediabunny实现离线音频可视化分割裁剪导出mp3音频文件代码
代码语言:html
所属分类:多媒体
代码描述:mediabunny实现离线音频可视化分割裁剪导出mp3音频文件代码,打开本地或url音频,选择分割位置分割,删除不要的部分,最后导出新的裁剪后的mp3文件。
代码标签: mediabunny 离线 音频 可视化 分割 裁剪 导出 mp3 音频 文件 代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8" /> <title>音频可视化裁剪编辑器</title> <meta name="viewport" content="width=device-width, initial-scale=1" /> <style> :root{ --bg:#0b1220; --panel:#111827; --muted:#94a3b8; --text:#e5e7eb; --accent:#06b6d4; --ok:#22c55e; --danger:#ef4444; --border:rgba(148,163,184,.2); --clip-a:rgba(34,197,94,.22); } *{box-sizing:border-box} body{margin:0;background:linear-gradient(135deg,#0b1220,#0e1528 60%, #0b1220);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial} .container{max-width:1200px;margin:20px auto;padding:0 16px 80px} header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px} h1{font-size:18px;margin:0;color:#d1e9ff} .panel{background:rgba(17,24,39,.8);border:1px solid var(--border);border-radius:14px;padding:14px;margin-bottom:12px;backdrop-filter:blur(8px)} .row{display:flex;gap:10px;flex-wrap:wrap;align-items:center} .grow{flex:1} input[type="text"]{ background:#0b1220;color:var(--text);border:1px solid rgba(148,163,184,.3);border-radius:10px;padding:8px 10px;outline:none;min-width:0 } input[type="file"]{display:none} button{ background:#0b1220;color:var(--text);border:1px solid rgba(148,163,184,.35); padding:8px 12px;border-radius:10px;cursor:pointer;transition:.15s;display:inline-flex;align-items:center;gap:6px } button:hover{border-color:var(--accent);box-shadow:0 0 0 2px rgba(6,182,212,.18) inset} button.primary{background:linear-gradient(135deg,#06b6d4,#3b82f6);border:none} button.success{background:linear-gradient(135deg,#22c55e,#16a3a4);border:none} button.danger{background:linear-gradient(135deg,#ef4444,#f43f5e);border:none} button:disabled{opacity:.6;cursor:not-allowed} .hint{font-size:12px;color:var(--muted)} progress{width:100%;height:14px;accent-color:var(--accent)} .timeline-wrap{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:rgba(0,0,0,.25)} .timeline-toolbar{display:flex;align-items:center;gap:10px;padding:8px;border-bottom:1px solid var(--border)} .tracks{position:relative;overflow:auto;max-height:400px} .track-row{display:flex;align-items:stretch;border-bottom:1px solid rgba(148,163,184,.14)} .track-label{width:120px;min-width:120px;border-right:1px solid rgba(148,163,184,.14);padding:6px;font-size:12px;color:#cbd5e1} .track-scroll{position:relative; flex:1; min-height:60px; background: repeating-linear-gradient(to right, rgba(255,255,255,.03) 0, rgba(255,255,255,.03) 1px, transparent 1px, transparent 10px), repeating-linear-gradient(to right, rgba(255,255,255,.06) 0, rgba(255,255,255,.06) 1px, transparent 1px, transparent 100px); } .clip{position:absolute;height:40px;top:10px;border:1px solid var(--border);border-radius:8px; display:flex;align-items:center;padding:2px 8px;gap:6px;cursor:grab;user-select:none;overflow:hidden} .clip-audio{background:var(--clip-a)} .clip .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;color:#e5e7eb} .clip.selected{outline:2px solid #93c5fd} .handle{position:absolute;top:0;width:8px;height:100%;cursor:ew-resize;background:rgba(255,255,255,.15)} .handle.left{left:-2px;border-radius:6px 0 0 6px} .handle.right{right:-2px;border-radius:0 6px 6px 0} .playhead{position:absolute;top:0;width:2px;background:#ef4444;height:100%} .waveform{position:absolute;top:0;left:0;width:100%;height:100%;} </style> </head> <body> <div class="container"> <header><h1>🎵 音频可视化裁剪编辑器</h1></header> <div class="panel"> <div class="row"> <button id="addAudioFileBtn" class="primary">📂 添加本地音频</button> <input id="audioInput" type="file" accept="audio/*" multiple /> <input id="audioUrlInput" type="text" placeholder="或者粘贴音频 URL 在此" class="grow" /> <button id="addAudioUrlBtn" class="success">🔗 添加 URL</button> </div> </div> <div class="panel timeline-wrap"> <div class="timeline-toolbar"> <button id="addAudioTrackBtn">➕ 添加音轨</button> <div style=".........完整代码请登录后点击上方下载按钮下载查看
网友评论0