I’m may just be confused how this all works…in which case, please explain it to me. But, what video codecs are supported by the UPnP AV standard? Or is it on a per-device (client) basis? I want to create an app to send video data to a UPnP device (XBox, PS3, etc) but am not really sure what video codec I should target… it can be anything, I just want to know if there’s a way of knowing that it will work on everything.
Edit: Ok, so I will clarify that I will be able to choose whatever video format I want, and once I do that will be all I plan on supporting, therefore I don’t need transcoding. My main point was that I was hoping there was some “standard” format used that would be supported on ALL devices so that I could just pick that and be done with it… Obviously this is not the case… but is there any sort of unofficial codec that most devices support? Is there a list of devices and supported codecs anywhere?
Also, how does DLNA work into this…if I understand correctly it’s sort of a subset of UPnP AV (but plus some other stuff…) And most UPnP devices I’ve seen are also DLNA compliant…so would just using whatever codecs DLNA supports be a way to have a common ground?
Doug is right, it depends on the client device.
You could build it so that your server transcodes files on the fly to make them available on the UPnP server, though. It would be easier just to choose a file format that is compatible with all of your devices (if the list is small enough for that to be possible).
For example, you cannot play H.264 encoded video in MKV format on Xbox 360 or PS3 right now. However, you can transcode the files to a format that IS supported. There are many of guides available online for transcoding these files for PS3/360 and what formats are supported by each device.
Here are a couple example guides:
Xbox 360 Conversion Guide
PS3 Conversion Guide