{
  "name": "forge.media",
  "language": "python",
  "version": "0.1.0",
  "description": "Python media package; imports are explicit from this package.",
  "manifest": "forge-py/pyproject.toml",
  "manifestSha256": "7f96957378b21995bf2e583af2afd1b9e6fb3b0089ff3559d62c7e012a034696",
  "status": "source-reference",
  "registryPublicationVerified": false,
  "route": "/libraries/python/media",
  "features": {},
  "files": [
    {
      "path": "forge-py/src/forge/media/__init__.py",
      "sha256": "798335bfbfc22319961734618b739d1ed3c69bd7477bf32c8f90417d83d13916",
      "artifactSha256": "26125ca0e1b413ba1d053820b4b9dc1b89ae8808b177e06be5c7c5cc007f4f72",
      "url": "/reference/source/forge-py/src/forge/media/__init__.py.txt",
      "declarations": []
    },
    {
      "path": "forge-py/src/forge/media/image.py",
      "sha256": "a86acad2afdf90e0f769b04e39424e6311efe8c507e89e2bccad04c4089f703a",
      "artifactSha256": "676af883b817b6ba7a8a235bd608f0c980de3386879c58a2e182a63435ddcce1",
      "url": "/reference/source/forge-py/src/forge/media/image.py.txt",
      "declarations": [
        {
          "name": "GeneratedImage",
          "line": 10,
          "signature": "class GeneratedImage()",
          "documentation": "A generated image result.\n\nArgs:\n    data: Base64-encoded image data or URL.\n    media_type: MIME type (e.g., \"image/png\").\n    revised_prompt: The prompt after model revision (if applicable)."
        },
        {
          "name": "ImageGenerationProvider",
          "line": 24,
          "signature": "class ImageGenerationProvider(ABC)",
          "documentation": "Abstract base class for image generation providers."
        },
        {
          "name": "ImageGenerationProvider.provider_name",
          "line": 29,
          "signature": "def provider_name(self) -> str",
          "documentation": "Return the provider name."
        },
        {
          "name": "ImageGenerationProvider.generate",
          "line": 33,
          "signature": "async def generate(self, prompt: str, *, size: str='1024x1024', quality: str='standard', n: int=1) -> list[GeneratedImage]",
          "documentation": "Generate images from a text prompt.\n\nArgs:\n    prompt: The text description of the desired image.\n    size: Image dimensions (e.g., \"1024x1024\").\n    quality: Image quality (\"standard\" or \"hd\").\n    n: Number of images to generate.\n\nReturns:\n    List of generated images."
        }
      ]
    },
    {
      "path": "forge-py/src/forge/media/speech.py",
      "sha256": "2048f5400116d8b0f7409d2d1e5f00310fe2f9c5ff097e1e9ad8e27e184a0b76",
      "artifactSha256": "b8f04abd9226542492fb73a0461f30a5ec1506679f5e3d54b22326aad62ce260",
      "url": "/reference/source/forge-py/src/forge/media/speech.py.txt",
      "declarations": [
        {
          "name": "SpeechResult",
          "line": 10,
          "signature": "class SpeechResult()",
          "documentation": "A speech synthesis result.\n\nArgs:\n    audio_data: Raw audio bytes.\n    format: Audio format (e.g., \"mp3\", \"wav\").\n    duration_seconds: Duration of the generated audio."
        },
        {
          "name": "SpeechProvider",
          "line": 24,
          "signature": "class SpeechProvider(ABC)",
          "documentation": "Abstract base class for text-to-speech providers."
        },
        {
          "name": "SpeechProvider.provider_name",
          "line": 29,
          "signature": "def provider_name(self) -> str",
          "documentation": "Return the provider name."
        },
        {
          "name": "SpeechProvider.synthesize",
          "line": 33,
          "signature": "async def synthesize(self, text: str, *, voice: str='default', speed: float=1.0, format: str='mp3') -> SpeechResult",
          "documentation": "Synthesize speech from text.\n\nArgs:\n    text: The text to convert to speech.\n    voice: Voice identifier.\n    speed: Speech speed multiplier.\n    format: Output audio format.\n\nReturns:\n    The speech result."
        }
      ]
    },
    {
      "path": "forge-py/src/forge/media/transcription.py",
      "sha256": "1eb89728ae88341161d721a517385000d6e7856dc716886473b06b4bbf35826d",
      "artifactSha256": "05843f8ff14ea40bd8adde21df82b569f30e3b11d42b2cd3d5588d7ec0c452a4",
      "url": "/reference/source/forge-py/src/forge/media/transcription.py.txt",
      "declarations": [
        {
          "name": "TranscriptionResult",
          "line": 10,
          "signature": "class TranscriptionResult()",
          "documentation": "A transcription result.\n\nArgs:\n    text: The transcribed text.\n    language: The detected language code (e.g., \"en\").\n    duration_seconds: Duration of the audio in seconds."
        },
        {
          "name": "TranscriptionProvider",
          "line": 24,
          "signature": "class TranscriptionProvider(ABC)",
          "documentation": "Abstract base class for audio transcription providers."
        },
        {
          "name": "TranscriptionProvider.provider_name",
          "line": 29,
          "signature": "def provider_name(self) -> str",
          "documentation": "Return the provider name."
        },
        {
          "name": "TranscriptionProvider.transcribe",
          "line": 33,
          "signature": "async def transcribe(self, audio_data: bytes, *, language: str | None=None, format: str='wav') -> TranscriptionResult",
          "documentation": "Transcribe audio to text.\n\nArgs:\n    audio_data: Raw audio bytes.\n    language: Optional language hint.\n    format: Audio format (e.g., \"wav\", \"mp3\").\n\nReturns:\n    The transcription result."
        }
      ]
    }
  ]
}
