what I'm missing to use this on my LG tv
vankasteelj opened this issue · 7 comments
Inserted:
var pInfo = et.SubElement(item, 'res');
pInfo.set('protocolInfo','http-get:*:video/mp4:*');
pInfo.text = metadata.url;
Right here: https://github.com/thibauts/node-upnp-mediarenderer-client/blob/master/index.js#L262
Tested with @jaruba for powder. My tv is a 2014 (or 13) LG without webos
subtitles: not yet tested
Additionnal note: dc:title cannot have special characters on my TV, or it won't read it. For example: "Les évadés" won't work because of the é
. If I use Les evades
as title, then it works.
Update for subtitles. My LG tv requires:
// Commented-out for now as it makes some TVs which don't have it
// in their supported protocols choke.
var res = et.SubElement(item, 'res');
res.set('protocolInfo', 'http-get:*:text/srt:*');
res.text = metadata.subtitlesUrl;
It won't display anything without it.
Note that this isn't the only protocolInfo, this one exists as well:
'protocolInfo': 'http-get:*:smi/caption'
That's exactly what I was currently trying. I suspect the res
solution crashed some TVs because there wasn't a regular res
for the video file preceding it. I'm going to push something close to what you did in a few minutes.
Just pushed & published to npm. Can you tell me if everything is fine on your side ?
Yes, it works.
I'm not sure how will non-lg/philips tv deal with the protocolInfo on subtitles though, you sure it won't mess them up?
As it, it's working fully for me though.
Great, good news. I think they will be fine as long as there's a res
for the regular stream as well. It seems that by the DIDL-Lite "specs" item
elements officially support multiple res
children.
I cross referenced the issue in another thread about subtitles, we'll see what people get.
Thanks for your help @vankasteelj
always glad to help open source :)