Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

D3D 11 Video Decoding? #1

Open
slyi opened this issue Mar 25, 2013 · 2 comments
Open

D3D 11 Video Decoding? #1

slyi opened this issue Mar 25, 2013 · 2 comments

Comments

@slyi
Copy link

slyi commented Mar 25, 2013

Hi Lucas,
This is question not a issue as i didnt see a twitter account. The decoder works great. Do you use d3d 11 video decoding like http://msdn.microsoft.com/en-us/library/windows/desktop/hh162912(v=vs.85).aspx

http://code.msdn.microsoft.com/DirectX-11-Video-Renderer-0e749100/view/SourceCode#content

Or is that api available on winrt at all?

Thanks
slyi

@lucas-j
Copy link
Owner

lucas-j commented Mar 25, 2013

Hi slyi,

Currently there's no support for DirectX hardware-accelerated decoding (i.e., making DirectX and any GPUs attached do the work of decoding MPEG frames into video frames) but this could potentially be added. I'd assume this would involve replacing libmpeg2 inline assembly code for IDCT / motion compensation / etc. with calls to the following API:
http://msdn.microsoft.com/en-us/library/ff568258(v=vs.85).aspx
Media Foundation supports DX11 / DXVA and so I'd assume WinRT would also allow this API to be used. From my perspective, adding frame-dropping support for old computers which can't keep up (even with GPU support) and rewriting the inline assembly to use Intel intrinsics would be a higher priority, since DirectX GPU decoding isn't an option on all platforms.

The rest of the Media Foundation pipeline is left unchanged. This project only adds a single MF transform which decodes raw MPEG-2 video, though I plan to add demuxer source elements for program streams and the WTV format produced by Media Center. The default video renderer used by PlayerFramework / MediaElement / etc. is also used by this app.

@slyi
Copy link
Author

slyi commented Mar 27, 2013

Ah ok, I ask as I don't see many code samples for mf. Frame dropping is good for arm hardware, I don't think win8 will be on many old machines. Great work so far. Thank for the enlightenment

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants