Render 360 videos in Direct2D

  360-degrees, c++, direct2d, winapi

I’m looking to import 360 videos into my video sequencer with the ability to change the view port at runtime.

For sample, I downloaded this vimeo video:

As far as I understand technically, this is a common H264/H265 format which reads as such in my application already:

enter image description here

So as I get it, it’s all a point of which area to render and how to transform it.

  1. Is there a Source Reader interface that can handle the transform ? All I could find is the MediaPlayer UWP example ( which does not render manually.
  2. If not, is there some protocol that explains the methods of rendering of such videos? I found this OpenGL-based ( which I could try to understand if there isn’t something easier.
  3. Is there a hint in the MP4 file that it should be rendered as 3D ?

I also found How to make 360 video output in opengl which has a shader that I can port to Direct2D.

I know the question is a big vague perhaps, but couldn’t find any usable C++ code so far.

Source: Windows Questions C++