INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: Pandora App, WDM driver won't stream to Oppo player over DNLA  (Read 671 times)

DaveMc

  • Recent member
  • *
  • Posts: 20

I installed Pandora and tried to stream using the WDM driver to MC and using MC to route to my Oppo player.  It never gets there.  MC first shows it took the play command then goes back to stopped and then doesn't respond and neither does the player.  It seams something is messing up the DNLA stream?

I should say that I upgraded to v26.0.69 this evening before I tried this.  Isn't MC supposed to be able to stream from the WDM driver to DNLA player?

Thank you very much
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72438
  • Where did I put my teeth?
Re: Pandora App, WDM driver won't stream to Oppo player over DNLA
« Reply #1 on: May 05, 2020, 09:42:56 pm »

WDM makes MC act as an audio driver.  It doesn't have anything to do with DLNA.
Logged

RoderickGI

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 8186
Re: Pandora App, WDM driver won't stream to Oppo player over DNLA
« Reply #2 on: May 05, 2020, 10:37:36 pm »

Isn't MC supposed to be able to stream from the WDM driver to DNLA player?

No. It is a known limitation of using the WDM Driver.

It isn't a JRiver decision. There are technical reasons for it, because of the way DLNA works. That is, DLNA is a file based process, and the DLNA Renderer needs to know the duration of the file it is receiving. When using the WDM Driver to input audio to MC the duration of the file is not known, therefore the Renderer requirements aren't met, and the audio won't play. There is a possible workaround, but it would be a bit of a kludge, and hasn't been tried.
Logged
What specific version of MC you are running:MC27.0.27 @ Oct 27, 2020 and updating regularly Jim!                        MC Release Notes: https://wiki.jriver.com/index.php/Release_Notes
What OS(s) and Version you are running:     Windows 10 Pro 64bit Version 2004 (OS Build 19041.572).
The JRMark score of the PC with an issue:    JRMark (version 26.0.52 64 bit): 3419
Important relevant info about your environment:     
  Using the HTPC as a MC Server & a Workstation as a MC Client plus some DLNA clients.
  Running JRiver for Android, JRemote2, Gizmo, & MO 4Media on a Sony Xperia XZ Premium Android 9.
  Playing video out to a Sony 65" TV connected via HDMI, playing digital audio out via motherboard sound card, PCIe TV tuner

AndrewFG

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3392
Re: Pandora App, WDM driver won't stream to Oppo player over DNLA
« Reply #3 on: May 06, 2020, 04:45:12 am »

There is a possible workaround, but it would be a bit of a kludge, and hasn't been tried.

Hmm. I am beginning to think that the guys at JRiver ought to try it. There are two potential models for pushing a remote stream to a UPNP renderer:

a) Control Point hands off the stream URL to the renderer, which downloads it directly
b) CP reads the remote stream to local buffer, and serves to the renderer from itself

And RoderickGI is suggesting a variation on model b)..

c) CP read the WDM input to local buffer, and serves to the renderer from itself

Currently MC only does model a), and sometimes it works, and sometimes it doesn’t: The issue is with the HTTP headers used in the GET request for the remote stream and the 200 OK response from the server..

In model a) (which is what MC does currently) some renderers either don’t send the right HTTP request headers (issue a1), or can’t parse the HTTP response headers (issue a2), or cant handle the response content format (issue a3).

Switching MC from using model a) to using model b) plus c) would certainly solve issue a3) because MC can always transcode to a format that the renderer can handle. It also has already solved issue a1) since MC can in general play most streams locally. So the blocking point would seem to be mostly issue a2) (HTTP response headers).

Now we know that MC can successfully push local files to renderers, so we know that in general it serves response headers that are acceptable by most renderers. (With the occasional glitch here or there). One of the response header errors that have been identified as a problem is the CONTENT-LENGTH header which MC cannot know for an infinite (indeterminate) length stream. Potentially MC could munge this by sending CONTENT-LENGTH=MAX_INT which would probably be Ok. However one would probably also need to figure out a gentle way of responding to a Byte-Range Seek from the renderer that is based on an offset from the start or (worse) the end of a munge CONTENT-LENGTH..

If the above could be overcome, then there would still be other issues. A few that I can think of are i) local buffer overrun or wrap around, ii) bandwith issues or MC cpu overload doing download and serving in parallel (but probably not a big issue), iii) handling (blocking) of MC progress bar, iv) blocking of MC Seek() commands, v) handling of MC Pause()/Play() i.e. continue saving to buffer, or resume play/buffer from live stream, vi) handling all of the above both for the MC main app, and also for its various remote UI apps.

Hmm.
Logged
Author of Whitebear Digital Media Renderer Analyser - http://www.whitebear.ch/dmra.htm
Author of Whitebear - http://www.whitebear.ch/mediaserver.htm

DaveMc

  • Recent member
  • *
  • Posts: 20
Re: Pandora App, WDM driver won't stream to Oppo player over DNLA
« Reply #4 on: May 06, 2020, 09:18:18 am »

It would be a great feature imho. I assume JRiver radio also is subject to this. To be able to access these features and stream through DNLA I think would be a home run.

Interestingly, I can stream Pandora from my phone to an old Denon DNP 720AE that I have using AirPlay without any issues.  So I don’t think latency is a big concern here.  Now the technical challenges are another matter and I can understand that the investment in time and effort might be too much, but to be able to retire the denon and run everything through MC to the Oppo which has a much better DAC would be nice for me and I don’t think I am the only one that might be very happy to see this.
Logged

RoderickGI

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 8186
Re: Pandora App, WDM driver won't stream to Oppo player over DNLA
« Reply #5 on: May 06, 2020, 07:34:51 pm »

I think JRiver Radio and some online radio services, like Radio Paradise, will play on a DLNA Renderer, because they are basically file based streams and include duration data, hence the CONTENT-LENGTH header can be set for each track.

The WDM is different, in that it is just audio that comes from another App. No data except the audio stream.

PS: Nice summary Andrew.
Logged
What specific version of MC you are running:MC27.0.27 @ Oct 27, 2020 and updating regularly Jim!                        MC Release Notes: https://wiki.jriver.com/index.php/Release_Notes
What OS(s) and Version you are running:     Windows 10 Pro 64bit Version 2004 (OS Build 19041.572).
The JRMark score of the PC with an issue:    JRMark (version 26.0.52 64 bit): 3419
Important relevant info about your environment:     
  Using the HTPC as a MC Server & a Workstation as a MC Client plus some DLNA clients.
  Running JRiver for Android, JRemote2, Gizmo, & MO 4Media on a Sony Xperia XZ Premium Android 9.
  Playing video out to a Sony 65" TV connected via HDMI, playing digital audio out via motherboard sound card, PCIe TV tuner

DaveMc

  • Recent member
  • *
  • Posts: 20
Re: Pandora App, WDM driver won't stream to Oppo player over DNLA
« Reply #6 on: May 07, 2020, 12:00:19 pm »

I would suppose then that the pandora app doesn’t send as individual songs despite the interface showing individual songs with run time. Is that correct?
Logged

RoderickGI

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 8186
Re: Pandora App, WDM driver won't stream to Oppo player over DNLA
« Reply #7 on: May 07, 2020, 05:49:04 pm »

I don't use Pandora, I assume that it knows the individiual tracks and has metadata for them.

But the WDM Driver doesn't handle any of that. Pandora plays the tracks, outputting PCM audio, which the WDM Driver receives and passes to MC to process. That's it. It only gets the Digital PCM audio. The WDM Driver doesn't even know there are multiple tracks, or when tracks change, or anything about them. Hence, nether does MC, which just sees one continuous stream of audio. Hence no CONTENT-LENGTH data for DLNA to work.

If you want it to work, lobby Pandora to provide an API that MC can use, which none of those services will anymore. If that API was available, for free, then JRiver might use it. They have been burnt by others who have pulled access to APIs in the past, after JRiver had done lots of work and spent lots of money integrating Apps such as Pandora.
Logged
What specific version of MC you are running:MC27.0.27 @ Oct 27, 2020 and updating regularly Jim!                        MC Release Notes: https://wiki.jriver.com/index.php/Release_Notes
What OS(s) and Version you are running:     Windows 10 Pro 64bit Version 2004 (OS Build 19041.572).
The JRMark score of the PC with an issue:    JRMark (version 26.0.52 64 bit): 3419
Important relevant info about your environment:     
  Using the HTPC as a MC Server & a Workstation as a MC Client plus some DLNA clients.
  Running JRiver for Android, JRemote2, Gizmo, & MO 4Media on a Sony Xperia XZ Premium Android 9.
  Playing video out to a Sony 65" TV connected via HDMI, playing digital audio out via motherboard sound card, PCIe TV tuner

DaveMc

  • Recent member
  • *
  • Posts: 20
Re: Pandora App, WDM driver won't stream to Oppo player over DNLA
« Reply #8 on: May 09, 2020, 06:23:30 pm »

I appreciate the responses on this thread.  I am learning some things which is always a good thing. 

I have an alternate way to listen anyway.  Airplay to the Denon unit, which has an optical out to the Oppo using a Toslink cable so it leverages the Oppo DAC. 

Thanks again,
Dave
Logged
Pages: [1]   Go Up