{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "voiceover-pack-female-7",
  "type": "registry:block",
  "title": "Voiceover Pack Female 7",
  "author": "Kenney <https://kenney.nl>",
  "description": "A clear, professional female voice delivering a short spoken phrase, ideal for game prompts, tutorial instructions, or informational alerts in a UI.",
  "files": [
    {
      "path": "registry/soundcn/sounds/voiceover-pack-female-7/voiceover-pack-female-7.ts",
      "content": "import type { SoundAsset } from \"@/lib/sound-types\";\n\nexport const voiceoverPackFemale7Sound: SoundAsset = {\n  name: \"voiceover-pack-female-7\",\n  dataUri: \"data:audio/mpeg;base64,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f+xTc5Qqavf///qtz////qKmzX8WIIKRaaFjmSsgEFf/cjL//////MjIyMyNNEZEZf///IjJpmR1HGFAIYGCBOg4kCCggYMIHECgEP/7UsSEgAoYWyuHsEHA6AwkaMCMOMDBAgcDFkxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxJ0DCe2HBqKJE8jSslaIAI+jVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU=\",\n  duration: 0.669,\n  format: \"mp3\",\n  license: \"CC0\",\n  author: \"Kenney\",\n};\n",
      "type": "registry:lib"
    },
    {
      "path": "registry/soundcn/lib/sound-types.ts",
      "content": "export interface SoundAsset {\r\n  /** Unique identifier for the sound */\r\n  name: string;\r\n  /** Base64-encoded data URI (data:audio/mpeg;base64,...) */\r\n  dataUri: string;\r\n  /** Duration in seconds */\r\n  duration: number;\r\n  /** Audio format */\r\n  format: \"mp3\" | \"wav\" | \"ogg\";\r\n  /** License identifier */\r\n  license: \"CC0\" | \"OGA-BY\" | \"MIT\";\r\n  /** Original author/creator */\r\n  author: string;\r\n}\r\n\r\nexport interface UseSoundOptions {\r\n  /** Volume level from 0 to 1. Default: 1 */\r\n  volume?: number;\r\n  /** Playback speed multiplier. Default: 1 */\r\n  playbackRate?: number;\r\n  /** If true, calling play() stops current playback first. Default: false */\r\n  interrupt?: boolean;\r\n  /** If false, play() does nothing. Useful for user preferences. Default: true */\r\n  soundEnabled?: boolean;\r\n  /** Called when playback starts */\r\n  onPlay?: () => void;\r\n  /** Called when playback ends naturally */\r\n  onEnd?: () => void;\r\n  /** Called when pause() is called */\r\n  onPause?: () => void;\r\n  /** Called when stop() is called */\r\n  onStop?: () => void;\r\n}\r\n\r\nexport type PlayFunction = (overrides?: {\r\n  volume?: number;\r\n  playbackRate?: number;\r\n}) => void;\r\n\r\nexport interface SoundControls {\r\n  stop: () => void;\r\n  pause: () => void;\r\n  isPlaying: boolean;\r\n  duration: number | null;\r\n  sound: SoundAsset;\r\n}\r\n\r\nexport type UseSoundReturn = readonly [PlayFunction, SoundControls];\r\n",
      "type": "registry:lib"
    },
    {
      "path": "registry/soundcn/lib/sound-engine.ts",
      "content": "let audioContext: AudioContext | null = null;\nconst bufferCache = new Map<string, AudioBuffer>();\n\nexport function getAudioContext(): AudioContext {\n  if (!audioContext) {\n    audioContext = new AudioContext();\n  }\n  return audioContext;\n}\n\nexport async function decodeAudioData(dataUri: string): Promise<AudioBuffer> {\n  const cached = bufferCache.get(dataUri);\n  if (cached) return cached;\n\n  const ctx = getAudioContext();\n  const base64 = dataUri.split(\",\")[1];\n  const binaryString = atob(base64);\n  const bytes = new Uint8Array(binaryString.length);\n  for (let i = 0; i < binaryString.length; i++) {\n    bytes[i] = binaryString.charCodeAt(i);\n  }\n\n  const audioBuffer = await ctx.decodeAudioData(bytes.buffer.slice(0));\n  bufferCache.set(dataUri, audioBuffer);\n  return audioBuffer;\n}\n\nexport interface PlaySoundOptions {\n  volume?: number;\n  playbackRate?: number;\n  onEnd?: () => void;\n}\n\nexport interface SoundPlayback {\n  stop: () => void;\n}\n\nexport async function playSound(\n  dataUri: string,\n  options: PlaySoundOptions = {}\n): Promise<SoundPlayback> {\n  const { volume = 1, playbackRate = 1, onEnd } = options;\n  const ctx = getAudioContext();\n  if (ctx.state === \"suspended\") {\n    await ctx.resume();\n  }\n\n  const buffer = await decodeAudioData(dataUri);\n  const source = ctx.createBufferSource();\n  const gain = ctx.createGain();\n\n  source.buffer = buffer;\n  source.playbackRate.value = playbackRate;\n  gain.gain.value = volume;\n\n  source.connect(gain);\n  gain.connect(ctx.destination);\n\n  source.onended = () => {\n    onEnd?.();\n  };\n\n  source.start(0);\n\n  return {\n    stop: () => {\n      try {\n        source.stop();\n      } catch {\n        // No-op if already stopped.\n      }\n    },\n  };\n}\n",
      "type": "registry:lib"
    }
  ],
  "meta": {
    "duration": 0.669,
    "format": "mp3",
    "sizeKb": 6,
    "license": "CC0",
    "tags": [
      "voiceover",
      "pack",
      "female",
      "7"
    ],
    "keywords": [
      "voiceover",
      "female",
      "spoken",
      "speech",
      "dialogue",
      "narration",
      "ui",
      "game",
      "prompt",
      "instruction",
      "tutorial",
      "alert",
      "confirmation",
      "announcement",
      "informative",
      "professional",
      "clear",
      "human",
      "feedback"
    ]
  },
  "categories": [
    "voiceover"
  ]
}