Source code for hvpy.api_groups.movies.queue_movie

from typing import Optional
from datetime import datetime

from pydantic import field_validator

from hvpy.io import HvpyParameters, OutputType
from hvpy.utils import convert_date_to_isoformat


[docs]class queueMovieInputParameters(HvpyParameters): """ Handles the input parameters of the ``queueMovie`` API. .. {Shared} Attributes ---------- startTime Datetime of the first frame of the movie. endTime Datetime of the final frame of the movie. layers Image datasource layers to include in the movie. events List of feature/event types and FRMs to use to annotate the movie. eventsLabels Boolean to indicate if the event labels should be included in the movie. imageScale Image scale in arcseconds per pixel. format Movie format ("mp4", "webm", "flv"). Default value is "mp4", optional. frameRate Movie frames per second. Default value is 15 frames per second, optional. maxFrames Maximum number of frames in the movie, can be capped by the server. Default value is `None`, optional. scale Overlay an image scale indicator. Default value is `None`, optional. scaleType Set the image scale indicator. Default value is `None`, optional. scaleX Horizontal offset of the image scale indicator in arcseconds with respect to the center of the Sun. Default value is `None`, optional. scaleY Vertical offset of the image scale indicator in arcseconds with respect to the center of the Sun. Default value is `None`, optional. movieLength Movie length in seconds. Default value is `None`, optional. watermark Overlay a Helioviewer.org watermark image. Default value is `True`, optional. width Width of the field of view in pixels. (Used in conjunction with ``x0``, ``y0``, and ``height``). Default value is `None`, optional. height Height of the field of view in pixels. (Used in conjunction with ``x0``, ``y0``, and ``width``). Default value is `None`, optional. x0 The horizontal offset of the center of the field of view from the center of the Sun. Used in conjunction with ``y0``, ``width``, and ``height``. Default value is `None`, optional. y0 The vertical offset of the center of the field of view from the center of the Sun. Used in conjunction with ``x0``, width, and height. Default value is `None`, optional. x1 The horizontal offset of the top-left corner of the field of view with respect to the center of the Sun (in arcseconds). Used in conjunction with ``y1``, ``x2``, and ``y2``. Default value is `None`, optional. y1 The vertical offset of the top-left corner of the field of view with respect to the center of the Sun (in arcseconds). Used in conjunction with ``x1``, ``x2``, and ``y2``. Default value is `None`, optional. x2 The horizontal offset of the bottom-right corner of the field of view with respect to the center of the Sun (in arcseconds). Used in conjunction with ``x1``, ``y1``, and ``y2``. Default value is `None`, optional. y2 The vertical offset of the bottom-right corner of the field of view with respect to the center of the Sun (in arcseconds). Used in conjunction with ``x1``, ``y1``, and ``x2``. Default value is `None`, optional. callback Wrap the response object in a function call of your choosing. Default value is `None`, optional. size Scale video to preset size. Default value is 0, optional. movieIcons Display other user generated movies on the video. Default value is `None`, optional. followViewport Rotate field of view of movie with Sun. Default value is `None`, optional. reqObservationDate Viewport datetime. Used when 'followViewport' enabled to shift viewport area to correct coordinates Default value is `None`, optional. References ---------- * `<https://api.helioviewer.org/docs/v2/api/api_groups/movies.html#queuemovie>`__ .. {Shared} """ startTime: datetime endTime: datetime layers: str events: str eventsLabels: bool imageScale: float format: str = "mp4" frameRate: str = "15" maxFrames: Optional[str] = None scale: Optional[bool] = None scaleType: Optional[str] = None scaleX: Optional[float] = None scaleY: Optional[float] = None movieLength: Optional[float] = None watermark: bool = True width: Optional[str] = None height: Optional[str] = None x0: Optional[str] = None y0: Optional[str] = None x1: Optional[str] = None y1: Optional[str] = None x2: Optional[str] = None y2: Optional[str] = None callback: Optional[str] = None size: int = 0 movieIcons: Optional[int] = None followViewport: Optional[int] = None reqObservationDate: Optional[datetime] = None _date_validator = field_validator("startTime", "endTime", "reqObservationDate")(convert_date_to_isoformat) def get_output_type(self) -> OutputType: """ Returns the output type of the API call. """ return OutputType.JSON