thibauts / node-upnp-mediarenderer-client

An UPnP/DLNA MediaRenderer client
MIT License
126 stars 30 forks source link

Alow to pass DLNA featureas and getTransportInfo #32

Closed Andro999b closed 4 years ago

ReeganExE commented 4 years ago

Consider to merge this PR. I have to do hard-code to make the media seekable on my TV.

var protocolInfo = 'http-get:*:' + contentType + ':DLNA.ORG_PN=AVC_MP4_BL_L3L_SD_AAC;DLNA.ORG_OP=01;DLNA.ORG_FLAGS=01700000000000000000000000000000';
Andro999b commented 4 years ago

@ReeganExE You can use my fork with this feature https://github.com/Andro999b/node-upnp-mediarenderer-client

cyberhck commented 4 years ago

it's a wonder why no one actually merged this 😮 I was trying to make seek working on TV since last 2 weeks, and read up on all specifications, and used wireshark to capture requests etc, and to find out the only change I really need to do is add the flags on protocolInfo, I was about to make a PR to this repo, but found this PR here, but it's opened since a long time,

can please merge to this repo? If not someone will have to end up maintaining a fork of this 😞

cyberhck commented 4 years ago

If this doesn't get merged till tonight, I'll probably fork it, and put it on my organization, at least others can respond if I don't in future if someone needs this.

cyberhck commented 4 years ago

@Andro999b would you mind publishing the package to npm and allow issues to be created?

thibauts commented 4 years ago

I’m really sorry I have no time to review pull requests. I accepted this one without review and will publish to npm asap. I’ll be happy to add a maintainer for future PR approval.

thibauts commented 4 years ago

It's published. Really sorry about the reactivity (or lack of, that is)

cyberhck commented 4 years ago

you have no idea how much this means to me, thanks a lot, and I really appreciate you doing this I know you're quite busy. (I thought you retired) 😄

I'll now be able to not do monkey patching anymore. Thanks

fholzer commented 7 months ago

For the record, it seems only DLNA.ORG_OP=01;DLNA.ORG_FLAGS=01700000000000000000000000000000 seems to be needed. DLNA.ORG_PN can be omitted (at least with my LG TV) - it specifies the media profile name, which should match the actual media being loaded. See https://github.com/da2ce7/libdlna/blob/7f747b51e3860ab6b51ea9ea9dfdb85b9b1a3ed7/include/dlna/dlna.h lines 71-99, 148.

Further, using DLNA.ORG_OP=01 in the dlnaFeatures it allows seeking via this library, as well as using my LG Magic remote, clicking at the desired position in the UI. But it doesn't allow me to use the left/right arrow keys on my remote to seek 15 seconds backwards/forwards. When setting DLNA.ORG_OP=11, using the remote's arrow keys works fine. So I ended up using DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01700000000000000000000000000000.