media: add basic MediaRenderer mojom and TypeConverters
This patch is the basis for mojo transport between a media::Pipeline and a media::Renderer implementation, e.g:
[ Pipeline [ media::Renderer [ Mojo Transport ] media::RendererImpl ] Output ]
The plan is to continue to iterate on the 'Mojo Transport' chunk without blocking anyone wishing to prototype one level up on either side. As such, some things in this CL like DecodeAndRender are not intended to be the proper long term solution, but allow immediate and mostly isolated prototyping to happen in parallel to development of a utility / class to allow framed data flowing over a mojo::DataPipe. As several TODOs in the CL mention, the current transport implementation incurs a high cost (many large allocations) and has inherently low throughput (can't write new buffer until each buffer is ACKed).
BUG=410451
Review URL: https://codereview.chromium.org/
491733004
Cr-Commit-Position: refs/heads/master@{#293392}