Source code for luna_lambda_tools.public.clients.lva

"""
Module contains luna-video-agent client adapted for usage in lambda
"""

from typing import Awaitable

from luna3.common.luna_response import LunaResponse
from luna3.public.sdk import VideoSDKInput
from luna3.video_agent.video_agent import VideoAgentApi


[docs] class LVA: """Luna-video-agent client"""
[docs] def __init__(self, lvaClient: VideoAgentApi, accountId: str): self._accountId = accountId self._lvaClient = lvaClient
def getAddress(self) -> str: """Get luna-video-agent address""" return self._lvaClient.baseUri def videosdk(self, videoSDKInput: VideoSDKInput, **kwargs) -> Awaitable[LunaResponse] | LunaResponse: """ Process video Args: videoSDKInput: video properties including url and analytics params Returns: class:`~.LunaResponse` or *asyncio coroutine* with *LunaResponse*. In body of :class: `~.LunaResponse` json with samples, exif, filename for succeeded images and errors for failed images will be returned. """ return self._lvaClient.videosdk(videoSDKInput, **kwargs)