Source code for meerkat.columns.video_column

from __future__ import annotations

import logging
from typing import Callable, Optional, Sequence

from meerkat.cells.video import VideoCell
from meerkat.columns.cell_column import CellColumn

logger = logging.getLogger(__name__)


[docs]class VideoColumn(CellColumn): """Interface for creating a CellColumn from VideoCell objects.""" def __init__(self, *args, **kwargs): super(VideoColumn, self).__init__(*args, **kwargs)
[docs] @classmethod def from_filepaths( cls, filepaths: Optional[Sequence[str]] = None, time_dim: Optional[int] = 1, # TODO: add different loaders to VideoCell transform: Optional[Callable] = None, *args, **kwargs, ): cells = [ VideoCell(fp, time_dim=time_dim, transform=transform) for fp in filepaths ] return cls( cells=cells, *args, **kwargs, )