cutcutcodec.core.io.write_ffmpeg.frame_video_to_av

cutcutcodec.core.io.write_ffmpeg.frame_video_to_av(frame_video: FrameVideo) VideoFrame[source]

Convert a FrameVideo cutcutcodec into a av video frame for encoding.

Parameters

frame_videocutcutcodec.core.classes.frame_video.FrameVideo

The torch frame video to cast.

Returns

av_frameav.video.frame.VideoFrame

The equivalent av video frame containing the similar image in format bgr24.

Examples

>>> import torch
>>> from cutcutcodec.core.classes.frame_video import FrameVideo
>>> from cutcutcodec.core.io.write_ffmpeg import frame_video_to_av
>>>
>>> frame_video_to_av(
...     FrameVideo(10, torch.zeros(480, 720, 3, dtype=torch.uint8))
... )  
<av.VideoFrame, pts=3003000 bgr24 720x480 at ...>
>>> frame_video_to_av(
...     FrameVideo(10, torch.zeros(480, 720, 1, dtype=torch.uint8))
... )  
<av.VideoFrame, pts=3003000 gray 720x480 at ...>
>>> frame_video_to_av(
...     FrameVideo(10, torch.zeros(480, 720, 4, dtype=torch.uint8))
... )  
<av.VideoFrame, pts=3003000 bgra 720x480 at ...>
>>> frame_video_to_av(
...     FrameVideo(10, torch.zeros(480, 720, 3, dtype=torch.float32))
... )  
<av.VideoFrame, pts=3003000 gbrpf32le 720x480 at ...>
>>> frame_video_to_av(
...     FrameVideo(10, torch.zeros(480, 720, 1, dtype=torch.float32))
... )  
<av.VideoFrame, pts=3003000 grayf32le 720x480 at ...>
>>> frame_video_to_av(
...     FrameVideo(10, torch.zeros(480, 720, 4, dtype=torch.float32))
... )  
<av.VideoFrame, pts=3003000 gbrapf32le 720x480 at ...>