Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: foo_upnp (Read 1642923 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

foo_upnp

Reply #550
I really appreciate this plugin.  I do have a question about the interaction of foo_upnp with a new Sirius streaming program. 

Background - I am using this in conjunction with foobar 1.0b6 and SiriusXMStreamer 1.5 - the latest versions of all programs.  I have to create a playlist in foobar2000 for each Sirius channel, which I guess is a function of foobar2000.  If I have mulitiple entries in a playlist, I cannot play any channels.  So, I can work with that and create the individual playlists.

The SiriusXMStreamer keeps a log of network traffic.  When I open a playlist, there are service requests for three ports.  Each request has a "Invalid method specified: DESCRIBE" and then an "Invalid request: DESCRIBE rtsp:// . . . .  before the port request is completed, or it redirects to a mms stream. 

I have changed the playlist and tried http, mms, and rtsp stream descriptions, I still get the same invalid method messages.

When I play the Sirius channel, I get a similar set of service requests for three ports, but sometimes it is six or nine ports until the stream starts playing.  Again, each request has a "Invalid method specified: DESCRIBE" and then an "Invalid request: DESCRIBE rtsp:// . . . .   

Is this normal behavior?  I have also asked over on the SiriusXMStreamer site.

Here is a bit of the log file, I cannot figure out how to attach it.

2:42 PM: Servicing request from '127.0.0.1:2521'...
2:42 PM:  Invalid method specified: DESCRIBE
2:42 PM:  Invalid request: DESCRIBE rtsp://127.0.0.1:51710/sirius?channel=17 RTSP/1.0
User-Agent: WMPlayer/11.0.5721.5251 guid/3300AD50-2C39-46C0-AE0A-08A7CF3589E0
Accept: application/sdp
Accept-Charset: UTF-8, *;q=0.1
X-Accept-Authentication: Negotiate, NTLM, Digest, Basic
Accept-Language: en-US, *;q=0.1
CSeq: 1
Supported: com.microsoft.wm.srvppair, com.microsoft.wm.sswitch, com.microsoft.wm.eosmsg, com.microsoft.wm.predstrm, com.microsoft.wm.startupprofile


2:42 PM: Completed request from '127.0.0.1:2521'.
2:42 PM: Servicing request from '127.0.0.1:2522'...
2:42 PM:  Invalid method specified: DESCRIBE
2:42 PM:  Invalid request: DESCRIBE rtsp://127.0.0.1:51710/sirius?channel=17 RTSP/1.0
User-Agent: WMPlayer/11.0.5721.5251 guid/3300AD50-2C39-46C0-AE0A-08A7CF3589E0
Accept: application/sdp
Accept-Charset: UTF-8, *;q=0.1
X-Accept-Authentication: Negotiate, NTLM, Digest, Basic
Accept-Language: en-US, *;q=0.1
CSeq: 1
Supported: com.microsoft.wm.srvppair, com.microsoft.wm.sswitch, com.microsoft.wm.eosmsg, com.microsoft.wm.predstrm, com.microsoft.wm.startupprofile


2:42 PM: Completed request from '127.0.0.1:2522'.
2:42 PM: Servicing request from '127.0.0.1:2523'...
2:42 PM:  Processing GET request: GET /sirius?channel=17 HTTP/1.1
Accept: */*
User-Agent: NSPlayer/11.0.5721.5251
Host: 127.0.0.1
X-Accept-Authentication: Negotiate, NTLM, Digest, Basic
Pragma: version11-enabled=1
Pragma: no-cache,rate=1.000,stream-time=0,stream-offset=0:0,packet-num=4294967295,max-duration=0
Pragma: packet-pair-experiment=1
Pragma: pipeline-experiment=1
Supported: com.microsoft.wm.srvppair, com.microsoft.wm.sswitch, com.microsoft.wm.predstrm, com.microsoft.wm.startupprofile
Pragma: xClientGUID={3300AD50-2C39-46c0-AE0A-08A7CF3589E0}
Accept-Language: en-US, *;q=0.1


2:42 PM:  Retrieving stream URL for channel 'Sirius 17 - Jam_ON'...
2:42 PM:  Redirecting to mms stream...

foo_upnp

Reply #551
One more thing I noticed using the foobar for playback to Linn Majik DS. The Upnp controller only displays Main Room:Majik DS:MediaRenderer (the drop down box dos not give other options). This is not the playlist version. That means if the PC is disconnected then the Linn stops playing. How can i seect the playlist version for playback?

Inside Linn config the playlist version is available and with kinskydesktop i can use the playlist version as well.

foo_upnp

Reply #552
One more thing I noticed using the foobar for playback to Linn Majik DS. The Upnp controller only displays Main Room:Majik DS:MediaRenderer (the drop down box dos not give other options). This is not the playlist version. That means if the PC is disconnected then the Linn stops playing. How can i seect the playlist version for playback?


It should be automatically detected and listed. Are you using Cara 3 or greater on your Majik ? The plugin works only with Cara devices, for Playlist service support.
You can also send me by mail the log file (bubbleguuum@free.fr). See a few post higher up for instruction on how to enable logging.


foo_upnp

Reply #553
One more thing I noticed using the foobar for playback to Linn Majik DS. The Upnp controller only displays Main Room:Majik DS:MediaRenderer (the drop down box dos not give other options). This is not the playlist version. That means if the PC is disconnected then the Linn stops playing. How can i seect the playlist version for playback?


It should be automatically detected and listed. Are you using Cara 3 or greater on your Majik ? The plugin works only with Cara devices, for Playlist service support.
You can also send me by mail the log file (bubbleguuum@free.fr). See a few post higher up for instruction on how to enable logging.


Thanks for your help. Log file is sent. I am using Cara 4 on the Linn. Maybe it is caused by changing the name of the Playlist service to "Majik" inside Linn Konfig?

foo_upnp

Reply #554
This is wonderful work indeed bubbleguuum!! Huge thanks for your dedicated work for this plugin!

I just tried it with Foobar 1.0 and foo_upnp 0.99.19.1 version with the Roku Soundbridge M1001 hardware client.
My library is in FLAC but since Soundbridge doesn't play FLAC, so I was need to transcode it to WAV.

I'm happy to report that FLAC to WAV transcoding (decoding)  wonderfully works with the Soundbridge.

First I had spent 1.5 hours with various decoding options of the default profile and logging because with FLAC it didn't work, but finally I figured out that all was caused by I used the default profile. Once I created a new profile called Soundbridge (User-Agent: Roku SoundBridge/3.0), it suddenly works perfectly with the default options (always decode to WAV, allowed samplerates: 44100-44100, max bit-depth: 16, use dithering: yes, convert to stereo: yes, client decode HTTP streams directly: no)


Some log:
Quote
948.193: FbMediaServer::ProcessHttpRequest(250): INFO: received LAN request: http://169.254.229.215:56923/content/883a8...wav?convert=wav (User-Agent: Roku SoundBridge/3.0)
948.193: PLT_HttpHelper::ToLog(399): INFO:
GET /content/883a8bf6ecc8b390efb2eae97f0c50f6.wav?convert=wav HTTP/1.0
User-Agent: Roku SoundBridge/3.0
Host: 169.254.229.215:56923
Accept: */*
Pragma: no-cache

948.193: upnp_server_conf::get_profile(548): INFO: using profile 'Soundbridge' (User-Agent:Roku SoundBridge/3.0)
948.193: upnp_server_conf::get_profile(548): INFO: using profile 'Soundbridge' (User-Agent:Roku SoundBridge/3.0)
948.193: PLT_HttpServerSocketTask::Write(283): FINER: PLT_HttpServerTask Sending response:
948.193: PLT_HttpHelper::ToLog(485): FINER:
HTTP/1.1 200 OK
Server: Platinum/0.5.4.0
Accept-Ranges: bytes
Connection: close
Content-Length: 35456444
Content-Type: audio/wav


Interesting to note: When I used Fuppes UPNP server, I had to set the server to stream the WAV as "audio/x-wav"  mime type, to be accepted by Roku Soundbridge, but as can be seen in the logs, foo_upnp streams it with "audio/wav", but it plays perfectly!

So thanks a lot for your work indeed!

foo_upnp

Reply #555
I need to point out that my previous problem is still present.
Using foobar2000 1.0 final and foo_upnp 0.99.19.1 in both server and client.

I deleted my foo_upnp configuration, then I just changed foobar2000 streaming profile in the server preferences, switching 'Transcoding to MP3' to always; nothing more, nothing less.
Music plays fine as MP3 in client through local wireless lan, but at the end of every track there is a 10/15-second-long silence before next track starts playing. This does not happen if I choose not to transcode to MP3 (music plays gaplessy).

I'm available for questions or testing configurations.

Thank you very much, this is a great plugin.

foo_upnp

Reply #556
@mccarver: I can reproduce this problem. No fix yet but it is pretty high on the todo list

foo_upnp

Reply #557
I have a little issue. The Xbox 360 is case sensitive; is it possible when customizing the browser tree, to display all %album%, %artist% and so on, with lower case?
Otherwise the Xbox sees a difference between the artists Rage Against the Machine and Rage Against The Machine, which is quiet annoying.
Great plugin, sure works better and easier than TVersity and similar when just using it for the music.

Just noticed, perhaps the media browser can't be changed, since Xbox 360 is using its own?

foo_upnp

Reply #558
Bubbleguuum,

this plugin seems to carry the promise that I'm looking for, however I'm receiving a strange error.
After a couple of seconds, foobar detects my Samsung LE40B650 TV as 'TV' in the UPnP controller view.
When I move the volume bar, my TV immediately responds, so the connection seems to be established.

But, when I play a random mp3, the UPnP controller windows displays this error:
"SetAVTransportURI Error: Resource not found (716)"

What should I do to solve this?
Any help is appreciated.



foo_upnp

Reply #559
Hi,



Working great, but how do you see the songs themselves?

As you can see in the screen-shot, foo_upnp is working just fine.

I'm steaming music from my Vista machine at my house to my father's machine running Windows XP.

That is, WMP 11 on Vista to Foobar on XP. That simple.

As you can see, the highlighted line, it sees the 14 songs and will play them just fine in order when I click the play button.

Problem is I can not see the song titles themselves. And it seems you can only load a single folder with songs? Meaning I can not load a folder with sub-folders and have all the music played in all the folders.

Thanks,

Will

Update: n/m i figured it out, some what. At least I can see the song titles now.

But I still cant load just the top directory and have it show all the songs in its sub directories.
God Bless U.S.A

foo_upnp

Reply #560
@Glaucous: the Xbox360 server tree is not editable as the xbox has a fixed layout. I'm relunctant to make it editable because I don't
want to add extra complexity to an already complex plugin.
The best solution is that you make you tags case consistent

@ssteenbergen: for some reason, I guess that your TV cannot reach the URL on the LAN that
the plugin gives it. This could happen if you have a complex network configuration and somewhat the plugin gives a non routable IP to the TV.
. Another possibility is that you try to stream a file format that generates a URI that the TV will not parse correctly.
To rule out this possibility try to play an mp3 (this generate simple URL that should work everywhere but check that you use the unmodified Default streaming profile).
To debug the first possibility, send me a log file (see a few post above for info on how to do that) and the output of the command ipconfig (a command that you type in the shell started by Accessories/Command Shell)

@war59312: the UPnP Browser send individual tracks in a playlist. You need to add a playlist viewer to your layout.
EDIT: it is not possible to show all tracks from a top node to bottom, ie recursively (mainly for performance reason).

foo_upnp

Reply #561
Hello, I installed foobar v1.0 and the upnp plugin on two notebooks. So from the first (win xp prof) I can play on my wd tv live. But from the second notebook (win xp home) I can not play to my wd tv live. On both pc the WDTVLIVE is shown in the pull down menu from the upnp controller, but after pushing the play button, sometimes first is shown "Buffering..." but nothing happens and the other times I push "play" and nothing happens. I have tried it also without firewall.... I have no idea how can I solve the problem. Maybe somebody here has a solution

Curiously i can play from both notebooks to or better on the other notebook (you can choose the other pc as renderer if the programm is also opened, but even not on the wd tv from one of them.

foo_upnp

Reply #562
@war59312: the UPnP Browser send individual tracks in a playlist. You need to add a playlist viewer to your layout.
EDIT: it is not possible to show all tracks from a top node to bottom, ie recursively (mainly for performance reason).
All right, thanks. Oh well..
God Bless U.S.A

foo_upnp

Reply #563
Request: Not sure if this is possible, but an option to scrobble tracks to last.fm (via foo_audioscrobbler - similar to how foo_dop does it) when they are streamed to another device. Eg., if I use foo_upnp to play a track on my Xbox360, the track would also get scrobbled.


I Second this one!!! That would be reallyyyy cool!
Hope you can figure this one out.
It's a quite unique function for a dlna media server.

foo_upnp

Reply #564
Hi, Thanks for all the work on a great component.

Should the server start automatically without me launching Foobar? This doesn't happen currently, and i can't see the Foobar UPnP server from my renderer (NaimUniti) until I do so.

Also, should I see an instance of the Foobar server in my UPnP browser panel? Currently I can only see other servers like WMP or Asset.

I am running Windows 7 X64, Foobar V1.0, and UPnP v0.99.19.1

foo_upnp

Reply #565
Should the server start automatically without me launching Foobar? This doesn't happen currently, and i can't see the Foobar UPnP server from my renderer (NaimUniti) until I do so.


Of course you must launch foobar2000 to launch the server

Quote
Also, should I see an instance of the Foobar server in my UPnP browser panel? Currently I can only see other servers like WMP or Asset.


It is normal that the local UPnP server do not appear in the UPnP Browser (inside the same instance of foobar). You only see other external servers.

foo_upnp

Reply #566
Request: Not sure if this is possible, but an option to scrobble tracks to last.fm (via foo_audioscrobbler - similar to how foo_dop does it) when they are streamed to another device. Eg., if I use foo_upnp to play a track on my Xbox360, the track would also get scrobbled.


I Second this one!!! That would be reallyyyy cool!
Hope you can figure this one out.
It's a quite unique function for a dlna media server.


This is not possible as foo_audioscrobbler do not offer an API for other plugins to use. Not sure how foo_dop do it.

foo_upnp

Reply #567
Should the server start automatically without me launching Foobar? This doesn't happen currently, and i can't see the Foobar UPnP server from my renderer (NaimUniti) until I do so.


Of course you must launch foobar2000 to launch the server


OK, thanks. The reason i asked was because Asset UPnP server starts automatically.

foo_upnp

Reply #568
OK, thanks. The reason i asked was because Asset UPnP server starts automatically.


Asset can run in the background as a Windows Service (like most standalone Media Servers). foo_upnp can only run as a standard app, hosted by foobar2000.

 

foo_upnp

Reply #569
Not sure how foo_dop do it.
I presume foo_audioscrobbler has been modified to implement the portable_device_playbackdata_callback service, as available in the foo_dop SDK. Doesn't really seem like a proper interface to use in your case though.
Full-quoting makes you scroll past the same junk over and over.

foo_upnp

Reply #570
Dear B.,

thank you very much for your plugin! As far as I can see, it is the only customizable UPnP ControlPoint on this planet!

Unfortunately it doesn't control my DENON AVR-3310 (which I particularly bought for the ability of being remote controllable).
The DENON is not listed in the UPnP Controller drop-down list.

The DENON can play successfully from TwonkyMedia Server, TVersity and Windows Media Connect. It also can successfully be controlled by TwonkyMedia Manager. Unfortunately the latter has a brain-dead GUI.
Admittedly, the DENON firmware seems buggy - I wasn't yet able to update it. It registers on my DNS Server with its NIC MAC ID as hostname, rather than the »friendly name« DENON.

Install Cidero and tell me if it sees your receiver. If it does not see it, it is likely to be a network issue.
If it sees it, then edit foo_upnp.xml (in your foobar2000 install directory) to enable logging with max info:
set    console_log enabled="yes" level="0".
Now start foobar2000, display the console (View->Console), check the "Write Log" button to save the log to file,  remove the Controller UI Panel and re-add it to your layout, wait a few seconds and send me the generated log file to bubbleguuum@free.fr.

May I send my log file to you?

Thank you!!!

L.

foo_upnp

Reply #571
I presume foo_audioscrobbler has been modified to implement the portable_device_playbackdata_callback service, as available in the foo_dop SDK. Doesn't really seem like a proper interface to use in your case though.

OK, thanks for the explanation. Itwould make more sense if it was the other way around I think...

May I send my log file to you?

Yes !

foo_upnp

Reply #572
Yes !

Thank you!!! But fortunately I was finally able to update the firmware. With the latest release foo_upnp is working! Yahoo!!!
I will still send you the log file in case you want to investigate, why TwonkyMedia Manager was able to remote control the DENON before the update but foo_upnp not.

A question about seeking within a track when I use one instance of foo_upnp as MediaRenderer and another instance on another machine as ControlPoint:
Using TwonkyMedia Server, seeking within a track works. Using TVersity, I have to deactivate »Allow seeking over HTTP« and thus can't seek.
Why? Is TVersity not completely standards compliant or does the standard not require seeking?

On the other side, with the TVersity and the DENON I can't seek (slider inactive in foo_upnp Controller). I haven't tested the DENON yet using TwonkyMedia Server.

What property of the XML-files do I have to check to find out if the DENON supports seeking?

foo_upnp

Reply #573
Thank you!!! But fortunately I was finally able to update the firmware. With the latest release foo_upnp is working! Yahoo!!!

This might be a little off-topic, but because this information is hard to find and many people are suffering, I want to share my experience:

The DENON AV Receiver firmwares seem to be often buggy; the problem is that the firmware update procedure seems to be the most buggy.
If you experience errors like »Connection failed« when trying to update the firmware using the OSD, but the network connection itself is okay (e. g. Internet radio streaming works), deactivate the UPnP features of your internet router (doesn't apply to me - I haven't had it activated anyway).


Before you can update the firmware you have to reset the DENON to its factory settings [1], but not using the procedure described in the manual, but a procedure described on another board, which presumably comes from DENON support:
  • When I write power switch, I'm talking about the small real power switch on the front panel, not the big standby switch on the front panel.
  • Power off the DENON using the power switch.
  • Push the keys [^] and [v] on the front panel and keep them pushed.
  • Power on the DENON using the power switch.
  • When the display starts blinking, release the keys.
  • Power off the DENON using the power switch.
  • Power on the DENON using the power switch.
  • Wait a bit until the DENON gets the DHCP configuration.
  • Start the firmware update using the OSD. [2]
  • The receiver reboots automatically after the update.
  • Savour foo_upnp to comfortably manage your playback!

[1] I hope this procedure doesn't delete the calibration information of the Audyssey measurement microphone.
[2] Other people reported that the update works immediately. In my case I had to do the reset procedure two times and found out, that I had to directly navigate to the firmware update menu and not check or use any other menus (like check if the DHCP config is there).

Before and after the update note the firmware versions of the different modules:
  • Power off the DENON using the power switch.
  • Push the keys [STATUS] and [RETURN] on the front panel and keep them pushed.
  • Power on the DENON using the power switch.
  • When the display starts blinking, release the keys.
  • Use the [STATUS] key to toggle through the firmware version information.
  • Power off the DENON using the power switch.

foo_upnp

Reply #574
Yes !

Thank you!!! But fortunately I was finally able to update the firmware. With the latest release foo_upnp is working! Yahoo!!!
I will still send you the log file in case you want to investigate, why TwonkyMedia Manager was able to remote control the DENON before the update but foo_upnp not.

A question about seeking within a track when I use one instance of foo_upnp as MediaRenderer and another instance on another machine as ControlPoint:
Using TwonkyMedia Server, seeking within a track works. Using TVersity, I have to deactivate »Allow seeking over HTTP« and thus can't seek.
Why? Is TVersity not completely standards compliant or does the standard not require seeking?

On the other side, with the TVersity and the DENON I can't seek (slider inactive in foo_upnp Controller). I haven't tested the DENON yet using TwonkyMedia Server.

What property of the XML-files do I have to check to find out if the DENON supports seeking?


Seeking and upnp is quite complicated, there's many factor for a file to be upnp seekable. Let's start with the simplest case: the Seek bar is grayed with the DENON+Tversity combo
because the DENON just told the UPnP Controller Seek was not available. Actions supported by the Renderer are notified by the Renderer through the CurrentTransportActions state variable. You can have a look at this variable in the logs and most likely the Seek action is not listed (other actions are Play, Stop, Pause among others). Then why your Denon do not report Seek supported ? Likely it's http client subsytem do not support Seek at all, or it could have determined this particular playing URL was not seekable or that the file format was not seekable. The second possibility (URL not seekable) can happen if the http server (Tversity is that case) tells the client (Denon Renderer) that seek is not supported.

To get back to the first issue, IIRC, if you disable "Allow seeking over HTTP", fb2k http client will not make any http range requests (not 100% sure on this). Those requests used for seeking can fail on some http servers not supporting them. What error in fb2k do you get if you let this setting enabled with TVersity ?
Most likely TVersity do not support http range requests made by fb2k and possibly the Denon.