wavesurfer实现可配置参数的音频声音可视化波浪线代码
代码语言:html
所属分类:其他
代码描述:wavesurfer实现可配置参数的音频声音可视化波浪线代码,可调节参数做自己的特色音频线。
代码标签: wavesurfer 配置 参数 音频 声音 可视化 波浪线 代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <style> @layer reset, base, challenge; @layer challenge { .wrapper { width: min(100%, 80ch); margin-inline: auto; display: grid; gap: 1.5em; } [id=placeholder] { inline-size: 100%; block-size: 100%; object-fit: cover; } .toast:popover-open { padding: 1.5em; border-radius: var(--br-default); width: min(100%, 60ch); margin: auto; &::backdrop { background-color: oklch(0 0 0 / 0.6); } & [btn-close] { position: absolute; right: 0.5em; top: 0.5em; transition: color var(--default-trans-dur); &:is(:hover, :focus-visible) { color: var(--clr-accent-secondary); } } & h2 { color: var(--clr-accent-secondary); text-align: center; text-transform: uppercase; } & > p { margin-block-start: 0.8em; & a { text-decoration: underline; text-decoration-width: 1px; text-underline-offset: 1px; transition: color var(--default-trans-dur); } & a:is(:hover, :focus-visible) { color: var(--clr-accent-secondary); } } /* & ::-webkit-file-upload-button { transition: color var(--default-trans-dur); border: none; box-shadow: 0 0 0 1px; border-radius: inherit; border-top-right-radius: 0; border-bottom-right-radius: 0; margin-inline-end: 0.5em; } & ::-webkit-file-upload-button:active { color: var(--clr-accent-secondary); } */ } .btn-container { display: flex; gap: 0.5em; justify-content: center; } :is(.btn-primary) { color: var(--clr-accent-secondary); border: 1px solid; border-radius: var(--br-default); display: grid; grid-auto-flow: column; gap: 0.25em; padding: 0.5em; & span { text-transform: capitalize; } & svg { pointer-events: none; } } .form-wave_options { display: grid; gap: 1em; grid-template-areas: "waveColor progressColor cursorColor" "url url url" "cursorWidth cursorWidth cursorWidth" "barWidth barWidth barWidth" "barHeight barHeight barHeight" "barGap barGap barGap" "barRadius barRadius barRadius" "height height height" "audioRate audioRate audioRate" "sampleRate sampleRate sampleRate" ; & > label { display: grid; gap: 0.5em; } } label:has(> input[type="range"]) { --_c: var(--clr-accent-secondary); /* active range/thumb color */ --_bg: var(--clr-neutral-200); /* slider track color */ --track-height: 10px; --thumb-size: 1em; --thumb-offset: -3px; --thumb-highlight-size: 2px; & input[type="range"] { appearance: none; -webkit-appearance: none; width: 100%; height: var(--track-height); background: linear-gradient( to right, var(--_c) 0 calc( ( var(--value, 0) - var(--min, 0) ) / ( var(--max, 100) - var(--min, 0) ) * 100% ), var(--_bg) 0 ); border-radius: 100vw; border: 0; } & input[type="range"]::-webkit-slider-runnable-track { appearance: none; -webkit-appearance: none; } & input[type="range"]::-webkit-slider-thumb { appearance: none; width: var(--thumb-size); aspect-ratio: 1; background-color: var(--_c); border-radius: 50%; box-shadow: 0 0 0 var(--thumb-highlight-size) var(--_bg); margin-inline-start: var(--thumb-offset); position: relative; } } input[type="text&qu.........完整代码请登录后点击上方下载按钮下载查看
网友评论0