A computer-implemented method for video frame synthesis, the method comprising: receiving, by one or more computing devices, a video; inputting, by the one or more computing devices, a first set of sequential frames of the video into a machine-learned video frame synthesis model (120, 140), wherein the machine-learned video frame synthesis model (120, 140) comprises at least one convolutional neural network comprising a convolutional encoder-decoder network denoted as H(X; Θ), where X is the input video and Θ are network parameters, wherein the convolutional encoder-decoder network is trained to predict a voxel flow field F on a pre-defined grid G, the voxel flow field F comprising a per-pixel 3D optical flow vector across space and time, wherein F = Δx i s Δy i s Δt i s G = H X; Θ; receiving, by the one or more computing devices, one or more synthesized frames Ŷ from the video, the one or more synthesized frames Ŷ generated by the machine-learned video frame synthesis model (120, 140) based on the first set of sequential frames and the predicted voxel flow field by sampling the voxel flow field F; and providing, by the one or more computing devices, the one or more synthesized frames, wherein the convolutional neural network is trained in an unsupervised fashion by: removing one or more frames from the received video; providing a plurality of the remaining frames as the first set of sequential frames; generating the one or more synthesized frames Ŷ to correspond to the one or more removed frames; calculating a loss function to represent a similarity between the one or more synthesized frames and the one or more removed frames; and adjusting one or more parameters of the convolutional neural network in order to minimize the calculated loss function, wherein: the one or more synthesized frames Ŷ are generated by the machine-learned video frame synthesis model based on the first set of sequential frames and the predicted voxel flow field F by warping one or more frames of the received video according to the predicted voxel flow field using a volume sampling function T x,y,t operating on spatio-temporal coordinates (x, y, t), wherein Y ^ = T x, y, t X F = T x, y, t X, H X Θ. receiving, by one or more computing devices, a video; inputting, by the one or more computing devices, a first set of sequential frames of the video into a machine-learned video frame synthesis model (120, 140), wherein the machine-learned video frame synthesis model (120, 140) comprises at least one convolutional neural network comprising a convolutional encoder-decoder network denoted as H(X; Θ), where X is the input video and Θ are network parameters, wherein the convolutional encoder-decoder network is trained to predict a voxel flow field F on a pre-defined grid G, the voxel flow field F comprising a per-pixel 3D optical flow vector across space and time, wherein F = Δx i s Δy i s Δt i s G = H X; Θ; receiving, by the one or more computing devices, one or more synthesized frames Ŷ from the video, the one or more synthesized frames Ŷ generated by the machine-learned video frame synthesis model (120, 140) based on the first set of sequential frames and the predicted voxel flow field by sampling the voxel flow field F; and providing, by the one or more computing devices, the one or more synthesized frames, wherein the convolutional neural network is trained in an unsupervised fashion by: removing one or more frames from the received video; providing a plurality of the remaining frames as the first set of sequential frames; generating the one or more synthesized frames Ŷ to correspond to the one or more removed frames; calculating a loss function to represent a similarity between the one or more synthesized frames and the one or more removed frames; and adjusting one or more parameters of the convolutional neural network in order to minimize the calculated loss function, wherein: the one or more synthesized frames Ŷ are generated by the machine-learned video frame synthesis model based on the first set of sequential frames and the predicted voxel flow field F by warping one or more frames of the received video according to the predicted voxel flow field using a volume sampling function T x,y,t operating on spatio-temporal coordinates (x, y, t), wherein Y ^ = T x, y, t X F = T x, y, t X, H X Θ. removing one or more frames from the received video; providing a plurality of the remaining frames as the first set of sequential frames; generating the one or more synthesized frames Ŷ to correspond to the one or more removed frames; calculating a loss function to represent a similarity between the one or more synthesized frames and the one or more removed frames; and adjusting one or more parameters of the convolutional neural network in order to minimize the calculated loss function, wherein: the one or more synthesized frames Ŷ are generated by the machine-learned video frame synthesis model based on the first set of sequential frames and the predicted voxel flow field F by warping one or more frames of the received video according to the predicted voxel flow field using a volume sampling function T x,y,t operating on spatio-temporal coordinates (x, y, t), wherein Y ^ = T x, y, t X F = T x, y, t X, H X Θ.