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 1647124 times) previous topic - next topic
0 Members and 2 Guests are viewing this topic.

foo_upnp

Reply #900
OK, so I have create a custom firewall rule that allows foobar2000.exe through ESET Smart Security's firewall, however I can't help but think there is an issue with foo_upnp, with the firewall set to "Interactive mode" (where it will prompt me to allow or deny any network traffic), opening foobar for the first time and going into the UPnP Browser, nothing happens! I have to add the IP address of my server manually to kick off the connection.

I have raised this with ESET and they tell me that with the firewall set to "Automatic" and UPnP allowed (which it is), everything should work fine.

Does anyone else use foobar2000, foo_upnp and ESET Smart Security?

Thanks.


One other thing, I can see the foobar2000 media server under networks, so UPnP is working (for the OS (Windows 7))


Done some more digging, ESS blocks port 1900, is this a standard UPnP port?

foo_upnp

Reply #901
Done some more digging, ESS blocks port 1900, is this a standard UPnP port?


Yes this is the UDP discovery port. Without it, renderers and servers cannot be discovered. So it'd better be not blocked by the firewall. Also the firewall must
not block multicast UDP.

The plugin do nothing special regarding firewalls.

foo_upnp

Reply #902
Done some more digging, ESS blocks port 1900, is this a standard UPnP port?


Yes this is the UDP discovery port. Without it, renderers and servers cannot be discovered. So it'd better be not blocked by the firewall. Also the firewall must
not block multicast UDP.

The plugin do nothing special regarding firewalls.


Thanks bubbleguuum

I have come to the conclusion that the firewall in ESET Smart Security is broken! Am now looking out for a new firewall

Ben

foo_upnp

Reply #903
Thanks for this nice plugin. It works great with my Nokia N900 (so I guess it's not too badly configured).

However I try to use a SAGEM My Dual Radio 700 as a client and Foobar as the server (1.0.3 / UPnP 0.99.28) and I'm less successful. The MP3 are streamed fine but it won't accept to play my Ogg/vorbis files nor the Playback Stream Capture (either MP3s or Oggs).

When I select an Ogg file (browsing works), the client display an odd length for the file (e.g. 16 min instead of 4 min), then stall for 20-30 s, then bail to the player main menu.

If I look at the log, the file is here :

Code: [Select]
foo_upnp: 13247.547: FbMediaServer::ProcessHttpRequest(285)/776: INFO: received LAN request: [url=http://192.168.0.1/DeviceDescription.xml]http://192.168.0.1/DeviceDescription.xml[/url] (User-Agent: Unknown)
foo_upnp: 13249.265: FbMediaServer::ProcessHttpRequest(285)/580: INFO: received LAN request: [url=http://192.168.0.1/X_MS_MediaReceiverRegistrar/f7420543-db5d-46ad-916c-728ae8ecb3e2/control.xml]http://192.168.0.1/X_MS_MediaReceiverRegis...3e2/control.xml[/url] (User-Agent: Unknown)
foo_upnp: 13249.265: FbMediaServer::OnAction(222)/580: INFO: received action 'IsAuthorized', args = { DeviceID=
 }
foo_upnp: 13249.265: FbMediaServer::OnAction(239)/580: INFO: action 'IsAuthorized' response: args = { DeviceID=
,  }
foo_upnp: 13249.281: FbMediaServer::ProcessHttpRequest(285)/580: INFO: received LAN request: [url=http://192.168.0.1/ContentDirectory/f7420543-db5d-46ad-916c-728ae8ecb3e2/control.xml]http://192.168.0.1/ContentDirectory/f74205...3e2/control.xml[/url] (User-Agent: Unknown)
foo_upnp: 13249.297: FbMediaServer::OnAction(222)/580: INFO: received action 'Browse', args = { ObjectID=0, BrowseFlag=BrowseDirectChildren, Filter=upnp:class,res@protection, StartingIndex=0, RequestedCount=6, SortCriteria= }
foo_upnp: 13249.297: PLT_MediaServer::OnBrowse(380)/580: INFO: Received BrowseDirectChildren from 192.168.0.4 for id = 0 with filter = upnp:class,res@protection, start = 0, count = 6
foo_upnp: 13249.297: FbMediaServer::OnAction(239)/580: INFO: action 'Browse' response: args = { ObjectID=0, BrowseFlag=BrowseDirectChildren, Filter=upnp:class,res@protection, StartingIndex=0, RequestedCount=6, SortCriteria=, NumberReturned=3, TotalMatches=3, UpdateID=0 }
foo_upnp: 13251.265: FbMediaServer::ProcessHttpRequest(285)/580: INFO: received LAN request: [url=http://192.168.0.1/ContentDirectory/f7420543-db5d-46ad-916c-728ae8ecb3e2/control.xml]http://192.168.0.1/ContentDirectory/f74205...3e2/control.xml[/url] (User-Agent: Unknown)
foo_upnp: 13251.265: FbMediaServer::OnAction(222)/580: INFO: received action 'Browse', args = { ObjectID=0/1, BrowseFlag=BrowseDirectChildren, Filter=upnp:class,res@protection, StartingIndex=0, RequestedCount=6, SortCriteria= }
foo_upnp: 13251.265: PLT_MediaServer::OnBrowse(380)/580: INFO: Received BrowseDirectChildren from 192.168.0.4 for id = 0/1 with filter = upnp:class,res@protection, start = 0, count = 6
foo_upnp: 13251.265: FbMediaServer::OnAction(239)/580: INFO: action 'Browse' response: args = { ObjectID=0/1, BrowseFlag=BrowseDirectChildren, Filter=upnp:class,res@protection, StartingIndex=0, RequestedCount=6, SortCriteria=, NumberReturned=6, TotalMatches=8, UpdateID=0 }
foo_upnp: 13253.843: FbMediaServer::ProcessHttpRequest(285)/580: INFO: received LAN request: [url=http://192.168.0.1/ContentDirectory/f7420543-db5d-46ad-916c-728ae8ecb3e2/control.xml]http://192.168.0.1/ContentDirectory/f74205...3e2/control.xml[/url] (User-Agent: Unknown)
foo_upnp: 13253.843: FbMediaServer::OnAction(222)/580: INFO: received action 'Browse', args = { ObjectID=0/1/1, BrowseFlag=BrowseDirectChildren, Filter=upnp:class,res@protection, StartingIndex=0, RequestedCount=6, SortCriteria= }
foo_upnp: 13253.843: PLT_MediaServer::OnBrowse(380)/580: INFO: Received BrowseDirectChildren from 192.168.0.4 for id = 0/1/1 with filter = upnp:class,res@protection, start = 0, count = 6
foo_upnp: 13253.843: FbMediaServer::OnAction(239)/580: INFO: action 'Browse' response: args = { ObjectID=0/1/1, BrowseFlag=BrowseDirectChildren, Filter=upnp:class,res@protection, StartingIndex=0, RequestedCount=6, SortCriteria=, NumberReturned=6, TotalMatches=461, UpdateID=0 }
foo_upnp: 13256.015: FbMediaServer::ProcessHttpRequest(285)/580: INFO: received LAN request: [url=http://192.168.0.1/ContentDirectory/f7420543-db5d-46ad-916c-728ae8ecb3e2/control.xml]http://192.168.0.1/ContentDirectory/f74205...3e2/control.xml[/url] (User-Agent: Unknown)
foo_upnp: 13256.015: FbMediaServer::OnAction(222)/580: INFO: received action 'Browse', args = { ObjectID=0/1/1/3, BrowseFlag=BrowseDirectChildren, Filter=upnp:class,res@protection, StartingIndex=0, RequestedCount=6, SortCriteria= }
foo_upnp: 13256.015: PLT_MediaServer::OnBrowse(380)/580: INFO: Received BrowseDirectChildren from 192.168.0.4 for id = 0/1/1/3 with filter = upnp:class,res@protection, start = 0, count = 6
foo_upnp: 13256.015: FbMediaServer::OnAction(239)/580: INFO: action 'Browse' response: args = { ObjectID=0/1/1/3, BrowseFlag=BrowseDirectChildren, Filter=upnp:class,res@protection, StartingIndex=0, RequestedCount=6, SortCriteria=, NumberReturned=2, TotalMatches=2, UpdateID=0 }
foo_upnp: 13257.109: FbMediaServer::ProcessHttpRequest(285)/580: INFO: received LAN request: [url=http://192.168.0.1/ContentDirectory/f7420543-db5d-46ad-916c-728ae8ecb3e2/control.xml]http://192.168.0.1/ContentDirectory/f74205...3e2/control.xml[/url] (User-Agent: Unknown)
foo_upnp: 13257.109: FbMediaServer::OnAction(222)/580: INFO: received action 'Browse', args = { ObjectID=0/1/1/3/0, BrowseFlag=BrowseDirectChildren, Filter=upnp:class,res@protection, StartingIndex=0, RequestedCount=6, SortCriteria= }
foo_upnp: 13257.109: PLT_MediaServer::OnBrowse(380)/580: INFO: Received BrowseDirectChildren from 192.168.0.4 for id = 0/1/1/3/0 with filter = upnp:class,res@protection, start = 0, count = 6
foo_upnp: 13257.109: upnp_server_conf::get_profile(707)/580: INFO: using default profile (User-Agent:unknown)
foo_upnp: 13257.109: FbMediaServer::OnAction(239)/580: INFO: action 'Browse' response: args = { ObjectID=0/1/1/3/0, BrowseFlag=BrowseDirectChildren, Filter=upnp:class,res@protection, StartingIndex=0, RequestedCount=6, SortCriteria=, NumberReturned=6, TotalMatches=15, UpdateID=0 }
foo_upnp: 13258.468: FbMediaServer::ProcessHttpRequest(285)/1840: INFO: received LAN request: [url=http://192.168.0.1/ContentDirectory/f7420543-db5d-46ad-916c-728ae8ecb3e2/control.xml]http://192.168.0.1/ContentDirectory/f74205...3e2/control.xml[/url] (User-Agent: Unknown)
foo_upnp: 13258.468: FbMediaServer::OnAction(222)/1840: INFO: received action 'Browse', args = { ObjectID=0/1/1/3/0, BrowseFlag=BrowseDirectChildren, Filter=res,res@protection,res@size,res@duration,res@bitrate,res@sampleFrequency,res@bitsPerSample, StartingIndex=0, RequestedCount=1, SortCriteria= }
foo_upnp: 13258.468: PLT_MediaServer::OnBrowse(380)/1840: INFO: Received BrowseDirectChildren from 192.168.0.4 for id = 0/1/1/3/0 with filter = res,res@protection,res@size,res@duration,res@bitrate,res@sampleFrequency,res@bitsPerSample, start = 0, count = 1
foo_upnp: 13258.468: upnp_server_conf::get_profile(707)/1840: INFO: using default profile (User-Agent:unknown)
foo_upnp: 13258.468: FbMediaServer::OnAction(239)/1840: INFO: action 'Browse' response: args = { ObjectID=0/1/1/3/0, BrowseFlag=BrowseDirectChildren, Filter=res,res@protection,res@size,res@duration,res@bitrate,res@sampleFrequency,res@bitsPerSample, StartingIndex=0, RequestedCount=1, SortCriteria=, NumberReturned=1, TotalMatches=15, UpdateID=0 }
foo_upnp: 13258.484: FbMediaServer::ProcessHttpRequest(285)/3232: INFO: received LAN request: [url=http://192.168.0.1/content/0b5bb59579ecedb9b41bbcb725ad1463.mp3?profile_id=0&convert=mp3]http://192.168.0.1/content/0b5bb59579ecedb...amp;convert=mp3[/url] (User-Agent: Unknown)
foo_upnp: 13258.484: PLT_HttpHelper::ToLog(410)/3232: INFO:
GET /content/0b5bb59579ecedb9b41bbcb725ad1463.mp3?profile_id=0&convert=mp3 HTTP/1.0
Host: 192.168.0.1
Range: bytes=0-
Accept: */*
foo_upnp: 13258.484: upnp_server_conf::get_profile(707)/3232: INFO: using default profile (User-Agent:unknown)
foo_upnp: opened 'file://D:\musique\Abd Al Malik\Gibraltar\Abd Al Malik - Gibraltar.ogg' for streaming
foo_upnp: submitted statistics for 'file://D:\musique\Abd Al Malik\Gibraltar\Abd Al Malik - Gibraltar.ogg'
foo_upnp: 13288.297: FbMediaServer::ProcessHttpRequest(285)/1968: INFO: received LAN request: [url=http://192.168.0.1/ContentDirectory/f7420543-db5d-46ad-916c-728ae8ecb3e2/control.xml]http://192.168.0.1/ContentDirectory/f74205...3e2/control.xml[/url] (User-Agent: Unknown)
foo_upnp: 13288.297: FbMediaServer::OnAction(222)/1968: INFO: received action 'Browse', args = { ObjectID=0/1/1/3/0, BrowseFlag=BrowseDirectChildren, Filter=res,res@protection,res@size,res@duration,res@bitrate,res@sampleFrequency,res@bitsPerSample, StartingIndex=1, RequestedCount=1, SortCriteria= }
foo_upnp: 13288.297: PLT_MediaServer::OnBrowse(380)/1968: INFO: Received BrowseDirectChildren from 192.168.0.4 for id = 0/1/1/3/0 with filter = res,res@protection,res@size,res@duration,res@bitrate,res@sampleFrequency,res@bitsPerSample, start = 1, count = 1
foo_upnp: 13288.297: upnp_server_conf::get_profile(707)/1968: INFO: using default profile (User-Agent:unknown)
foo_upnp: 13288.297: FbMediaServer::OnAction(239)/1968: INFO: action 'Browse' response: args = { ObjectID=0/1/1/3/0, BrowseFlag=BrowseDirectChildren, Filter=res,res@protection,res@size,res@duration,res@bitrate,res@sampleFrequency,res@bitsPerSample, StartingIndex=1, RequestedCount=1, SortCriteria=, NumberReturned=1, TotalMatches=15, UpdateID=0 }
foo_upnp: 13288.312: FbMediaServer::ProcessHttpRequest(285)/3816: INFO: received LAN request: [url=http://192.168.0.1/content/a226c306f14b1a4dc1b5eb8f810da6db.mp3?profile_id=0&convert=mp3]http://192.168.0.1/content/a226c306f14b1a4...amp;convert=mp3[/url] (User-Agent: Unknown)
foo_upnp: 13288.312: PLT_HttpHelper::ToLog(410)/3816: INFO:
GET /content/a226c306f14b1a4dc1b5eb8f810da6db.mp3?profile_id=0&convert=mp3 HTTP/1.0
Host: 192.168.0.1
Range: bytes=0-
Accept: */*
foo_upnp: 13288.312: upnp_server_conf::get_profile(707)/3816: INFO: using default profile (User-Agent:unknown)

and then it seems it proceeds to try to read the other files in the directory (but nothing appears on the client) :

Code: [Select]
foo_upnp: opened 'file://D:\musique\Abd Al Malik\Gibraltar\Abd Al Malik - 12 septembre 2001.ogg' for streaming
foo_upnp: submitted statistics for 'file://D:\musique\Abd Al Malik\Gibraltar\Abd Al Malik - 12 septembre 2001.ogg'
foo_upnp: 13292.547: FbMediaServer::ProcessHttpRequest(285)/284: INFO: received LAN request: [url=http://192.168.0.1/ContentDirectory/f7420543-db5d-46ad-916c-728ae8ecb3e2/control.xml]http://192.168.0.1/ContentDirectory/f74205...3e2/control.xml[/url] (User-Agent: Unknown)
foo_upnp: 13292.547: FbMediaServer::OnAction(222)/284: INFO: received action 'Browse', args = { ObjectID=0/1/1/3/0, BrowseFlag=BrowseDirectChildren, Filter=res,res@protection,res@size,res@duration,res@bitrate,res@sampleFrequency,res@bitsPerSample, StartingIndex=2, RequestedCount=1, SortCriteria= }
foo_upnp: 13292.547: PLT_MediaServer::OnBrowse(380)/284: INFO: Received BrowseDirectChildren from 192.168.0.4 for id = 0/1/1/3/0 with filter = res,res@protection,res@size,res@duration,res@bitrate,res@sampleFrequency,res@bitsPerSample, start = 2, count = 1
foo_upnp: 13292.547: upnp_server_conf::get_profile(707)/284: INFO: using default profile (User-Agent:unknown)
foo_upnp: 13292.547: FbMediaServer::OnAction(239)/284: INFO: action 'Browse' response: args = { ObjectID=0/1/1/3/0, BrowseFlag=BrowseDirectChildren, Filter=res,res@protection,res@size,res@duration,res@bitrate,res@sampleFrequency,res@bitsPerSample, StartingIndex=2, RequestedCount=1, SortCriteria=, NumberReturned=1, TotalMatches=15, UpdateID=0 }
foo_upnp: 13292.578: FbMediaServer::ProcessHttpRequest(285)/3296: INFO: received LAN request: [url=http://192.168.0.1/content/245aba43cf69be1d86c35ef7d38f6c46.mp3?profile_id=0&convert=mp3]http://192.168.0.1/content/245aba43cf69be1...amp;convert=mp3[/url] (User-Agent: Unknown)
foo_upnp: 13292.578: PLT_HttpHelper::ToLog(410)/3296: INFO:
GET /content/245aba43cf69be1d86c35ef7d38f6c46.mp3?profile_id=0&convert=mp3 HTTP/1.0
Host: 192.168.0.1
Range: bytes=0-
Accept: */*
foo_upnp: 13292.578: upnp_server_conf::get_profile(707)/3296: INFO: using default profile (User-Agent:unknown)
foo_upnp: opened 'file://D:\musique\Abd Al Malik\Gibraltar\Abd Al Malik - Soldat de plomb.ogg' for streaming
foo_upnp: submitted statistics for 'file://D:\musique\Abd Al Malik\Gibraltar\Abd Al Malik - Soldat de plomb.ogg'
foo_upnp: 13297.687: FbMediaServer::ProcessHttpRequest(285)/4028: INFO: received LAN request: [url=http://192.168.0.1/ContentDirectory/f7420543-db5d-46ad-916c-728ae8ecb3e2/control.xml]http://192.168.0.1/ContentDirectory/f74205...3e2/control.xml[/url] (User-Agent: Unknown)
foo_upnp: 13297.687: FbMediaServer::OnAction(222)/4028: INFO: received action 'Browse', args = { ObjectID=0/1/1/3/0, BrowseFlag=BrowseDirectChildren, Filter=res,res@protection,res@size,res@duration,res@bitrate,res@sampleFrequency,res@bitsPerSample, StartingIndex=3, RequestedCount=1, SortCriteria= }
foo_upnp: 13297.687: PLT_MediaServer::OnBrowse(380)/4028: INFO: Received BrowseDirectChildren from 192.168.0.4 for id = 0/1/1/3/0 with filter = res,res@protection,res@size,res@duration,res@bitrate,res@sampleFrequency,res@bitsPerSample, start = 3, count = 1
foo_upnp: 13297.687: upnp_server_conf::get_profile(707)/4028: INFO: using default profile (User-Agent:unknown)
foo_upnp: 13297.687: FbMediaServer::OnAction(239)/4028: INFO: action 'Browse' response: args = { ObjectID=0/1/1/3/0, BrowseFlag=BrowseDirectChildren, Filter=res,res@protection,res@size,res@duration,res@bitrate,res@sampleFrequency,res@bitsPerSample, StartingIndex=3, RequestedCount=1, SortCriteria=, NumberReturned=1, TotalMatches=15, UpdateID=0 }
foo_upnp: 13297.687: FbMediaServer::ProcessHttpRequest(285)/1544: INFO: received LAN request: [url=http://192.168.0.1/content/8b1dd092ae9e591cf38410a4be6021ca.mp3?profile_id=0&convert=mp3]http://192.168.0.1/content/8b1dd092ae9e591...amp;convert=mp3[/url] (User-Agent: Unknown)
foo_upnp: 13297.687: PLT_HttpHelper::ToLog(410)/1544: INFO:
GET /content/8b1dd092ae9e591cf38410a4be6021ca.mp3?profile_id=0&convert=mp3 HTTP/1.0
Host: 192.168.0.1
Range: bytes=0-
Accept: */*
foo_upnp: 13297.687: upnp_server_conf::get_profile(707)/1544: INFO: using default profile (User-Agent:unknown)
(...)

The SAGEM radio user's guide says it can read from Windows Media 11, Media Connect Microsoft, and MusicMatch JukeBox but I guess Foobar could work too.

I tried to change the default profile (The SAGEM seems to have no user-agent) to transcode Ogg to MP3 without success (I just activate transcoding for ogg in "streaming profile" and put lame.exe in the foobar directory, is it right ?)

Can you advise me ?
Thanks in advance.

foo_upnp

Reply #904
@Ras Elased Borrealis


The streaming URL requested by SAGEM is (doubly) broken:

Code: [Select]
/content/8b1dd092ae9e591cf38410a4be6021ca.mp3?profile_id=0&convert=mp3


this should be:
Code: [Select]
/content/8b1dd092ae9e591cf38410a4be6021ca.mp3?profile_id=0&convert=mp3


looks like the SAGEM fails miserably at XML escaping and URL encoding, hence the fubared URL.


Because of this, the server do not recognize totally the URL and stream an ogg (the original file) instead of transcoding to mp3.
Of course the SAGEM do not recognize the ogg and fails.

As a workaround I can do a double XML unescape of the URL to make it valid.
I'll send you a link to a test version to validate it fixes the problem.

Another hack to add to the long list of hacks to handle buggy hardware :/

foo_upnp

Reply #905
Another hack to add to the long list of hacks to handle buggy hardware :/


Thanks for your (quick) answer. I'm waiting for your fix.

This device is quite buggy and feels unpolished in general but has nice features. For your information I tried 6 or 7 UPnp servers (XBMC Media Center, Serviio, FUPPES, 360 Media Server,...) and none worked with this client, I guess foo_upnp is more robust...

foo_upnp

Reply #906
I need some help. My album art is not showing anymore. It was working in the past. I tried a theme download that did not support upnp. So i restored my old settings and now album art is not displayed anymore.

Can anyone advise how to restore the album art again? All files have album art embedded and each directory has a folder.jpg included

foo_upnp

Reply #907
I got foo_upnp setup and running, and it does a fantastic job of streaming music to my 360! I purchased PlugPlay for my iPod Touch so I could control foobar2000 on my desktop from anywhere in the apartment, but whenever I do so, PlugPlay activates foobar's Stop after current option - if I disconnect PlugPlay while foobar is playing music back, foobar stops playing after the current track.

I e-mailed the PlugPlay people about this issue and asked whether it was possible to stop PlugPlay from doing this - ideally, I'd want to be able to set foobar on its way via PlugPlay, then disconnect and let foobar continue playing music. The PlugPlay people's response was that the renderer needs to support on-device playlists.

Long-story-short, I'm kind of new to how exactly uPNP works, so I'm not really sure if this is the right question to ask, but does foo_upnp support on-device playlists?

foo_upnp

Reply #908
I got foo_upnp setup and running, and it does a fantastic job of streaming music to my 360! I purchased PlugPlay for my iPod Touch so I could control foobar2000 on my desktop from anywhere in the apartment, but whenever I do so, PlugPlay activates foobar's Stop after current option - if I disconnect PlugPlay while foobar is playing music back, foobar stops playing after the current track.


It is the plugin that turns on stop after current when PP starts a track (and restore it when the track ends). This is necessary so foobar2000 do not play next track in its queue automatically when controlled by PP. If stop after current is not correctly restored it is indeed a bug.

Quote
Long-story-short, I'm kind of new to how exactly uPNP works, so I'm not really sure if this is the right question to ask, but does foo_upnp support on-device playlists?


By default, UPnP AV has no support for on-device playlists (which sucks), which imply that the Control Point (PP) must remain running. I may add support for an extension that allow on-device playlists and that PP supports, but It'll take some time.



foo_upnp

Reply #909
It is the plugin that turns on stop after current when PP starts a track (and restore it when the track ends). This is necessary so foobar2000 do not play next track in its queue automatically when controlled by PP. If stop after current is not correctly restored it is indeed a bug.

Does this mean that foobar2000 should continue playing music when PP disconnects (i.e. I shut off my Touch)? If that's the case, then we might be looking at a bug in foo_upnp.

foo_upnp

Reply #910
One other question. Is it possible to add overview of recently added files to the collection? It would be nice to have quick overview of the new albums I added to the collection. Or can I do it by editting the XM of the browse tree? If so what field is available, i.e. %genre%

foo_upnp

Reply #911
0.99.29 released (first post to download or autoupdate)

screenshot showing some of the new functionality

Code: [Select]
- browser: fix: obscure crashes
- browser: new: ability to display properties (ip address, model name, supported audio formats, ...). Right click on a Server's node and select "Properties"

- server: chg: made silence PSC streaming not having underruns
- server: added option in Server/Content: if "Allow clients to pause stream indefinitely" is checked (unchecked by default), clients that do not automatically reconnect on server disconnection can now pause a http stream forever: the server will not close the connection. Otherwise the server closes the connection after 6 mins of inactivity (was 1 min previously)
- server: prevent PC from going into Sleep Mode when streaming, whether Sleep mode is activated by the user or automatically by the system. When streaming is active and Sleep is triggered, the PC goes into Away Mode instead: screen is powered off and analog audio output is muted (by the OS), but PC remains functional for streaming.  When streaming terminates, Sleep Mode works as usual.
- server: hack: fix buggy stream request URLs from "SAGEM My Dual Radio 700" (and probably other models) that forget to XML decode URLs sent in DIDL-Lite.

- controller: chg: removed context menu, now accessible with the new "..." button
- controller: new: added dialog to Play/Stop PSC to multiple renderers. Found in the Controller action menu as "Play Playback Stream Capture multi". For Linn DS renderers, only the UPnP AV Renderer is listed to avoid modifying the Playlist source. It is also possible to play any single item to multiple renderers: select an item and in its context menu, choose UPnP Controller>Play single item to multiple renderers. The purpose of this experimental feature is to allow some sort of multi-room audio. It is mostly intended for playing infinite streams such as Playback Stream Capture, web radios, infinite streams from other UPnP Servers (Jamcast's Virtual Soundcard for example or Asset UPnP's equivalent). Audio should be in sync when using renderers of the same model. If models are different it is likely that renderers won't be exactly in sync, because each model has a different buffering time before actual playing.

- controller: new: possible to select the startup renderer via the Controller's menu. On startup, the renderer has 15 seconds to appear to be automatically made active.
- controller: new: ability to display properties (ip address, model name, supported audio formats, ...) for the selected renderer ("Renderer properties" command in the Controller's menu)
- controller: fix: removed context menu, fixes conflict with DUI editing mode menu

- chg: relaxed DIDL-Lite parser so it accepts incomplete metadata (missing namespaces and <DIDL-Lite> tag) sent by PlugPlayer's renderer

foo_upnp

Reply #912
One other question. Is it possible to add overview of recently added files to the collection? It would be nice to have quick overview of the new albums I added to the collection. Or can I do it by editting the XM of the browse tree? If so what field is available, i.e. %genre%


You can use $date(%added%) either in a foobar2000 autoplaylist or in the browse tree XML definition if you want to expose it to browsing clients.
It is not the only way to do it though.

 

foo_upnp

Reply #913
0.99.29 released
- controller: new: added dialog to Play/Stop PSC to multiple renderers..... Audio should be in sync when using renderers of the same model. If models are different it is likely that renderers won't be exactly in sync, because each model has a different buffering time before actual playing.

Definitively, several seconds in my case! Really annoying. Any chance that you could implement an adjustable delay per device at the server level ?

et bravo pour cet excellent plugin 

foo_upnp

Reply #914
0.99.29 released
- controller: new: added dialog to Play/Stop PSC to multiple renderers..... Audio should be in sync when using renderers of the same model. If models are different it is likely that renderers won't be exactly in sync, because each model has a different buffering time before actual playing.

Definitively, several seconds in my case! Really annoying. Any chance that you could implement an adjustable delay per device at the server level ?

et bravo pour cet excellent plugin 


Good suggestion. The buffering delay could be calibrated by the user with some UI. Need to think about it.

Merci


foo_upnp

Reply #915
Is there any chance foo_upnp can either integrate into foo_audioscrobbler, or have it's own built in Last.fm support

It would be nice to be able scrobble tracks played on my Xbox 360

foo_upnp

Reply #916
Is there any chance foo_upnp can either integrate into foo_audioscrobbler, or have it's own built in Last.fm support

It would be nice to be able scrobble tracks played on my Xbox 360



I won't duplicate functionality with foo_audioscrobbler. It would be very easy to add in foo_audioscrobbler as I explained in this post

foo_upnp

Reply #917
Hey, I love your plugin, it's great for streaming music from my desktop to my netbook around campus, but I have some questions about it.

1) Streamed songs (streamed in wav) don't have full metadata info (right click song> properties), is there any way to get full metadata on songs?

2) Mp3's inside archives are streamed as wav's, any way to get around that?

3) Is FLAC the only lossless format supported by this plugin? I have songs in other formats and they stream as wavs which tends to eat up wifi bandwidth.

Thanks!

foo_upnp

Reply #918
@Vassie re: Eset

I seem to have got mine working. Very old version of foo_upnp, so your mileage may vary (as they say in the classics).

setup->personal firewall->IDS and advanced options

I ticked 'allow multicast address resolution' and unticked 'rpc/dcom attack detection'. I'm not sure whether it's one or both of these that did the trick.
You've already checked 'allow upnp in the trusted zone'?

hth

foo_upnp

Reply #919
1) Streamed songs (streamed in wav) don't have full metadata info (right click song> properties), is there any way to get full metadata on songs?
2) Mp3's inside archives are streamed as wav's, any way to get around that?
3) Is FLAC the only lossless format supported by this plugin? I have songs in other formats and they stream as wavs which tends to eat up wifi bandwidth.


1.
Not possible for the same reason that foobar2000 do not manage metadata for WAV. The metadata you see (when the file is listed in a playlist using the Browser) is
called browse metadata. It is used only for display (and titleformatting) purpose but is not displayable in the Properties panel (which I'd like to be extended to do that).

2.
Any track having a subsong index (archives, single FLAC + cue, ...) is streamed as PCM or transcoded to MP3.
To do what you suggest, instead of using the unpack input, I'd need to unpack the file in the archive and serve it, which I have no real plan to do but I'll think about it.

3.
Which format ?  Assuming you use foobar2000 as the playing client, most formats can be streamed without requiring WAV, except for tracks having subsong indexes (see above) and a few formats not http streamable (MusePack). The most likely reason I can think of is that you use CUE files.

foo_upnp

Reply #920
1.
Not possible for the same reason that foobar2000 do not manage metadata for WAV. The metadata you see (when the file is listed in a playlist using the Browser) is
called browse metadata. It is used only for display (and titleformatting) purpose but is not displayable in the Properties panel (which I'd like to be extended to do that).

2.
Any track having a subsong index (archives, single FLAC + cue, ...) is streamed as PCM or transcoded to MP3.
To do what you suggest, instead of using the unpack input, I'd need to unpack the file in the archive and serve it, which I have no real plan to do but I'll think about it.



Nice to know that you'll consider adding these features.

Quote
3.
Which format ?  Assuming you use foobar2000 as the playing client, most formats can be streamed without requiring WAV, except for tracks having subsong indexes (see above) and a few formats not http streamable (MusePack). The most likely reason I can think of is that you use CUE files.


Yeah, I'm using CUE files. Not a huge issue, but always nice to reduce bandwidth usage.



foo_upnp

Reply #921
Not sure the following was not discussed. Sorry for bothering if it was.

Is it possible some way to make transcoded files to be copied using foobar file operations. I understand that the size of the file is unknown but may be it's possible to make some approximation so that foobar gets some relatively close file size but still can copy the file some way.

Thanks.

foo_upnp

Reply #922
Great this update. Love the option to set the default renderer. Asked before but anyone has some idea how to get artwork working?

OK I fixed this issue. I was expecting that foobar component update would update columsUI to latest version but it does not. After updating Columnsui to 3.8.6 manually artwork is working again.

foo_upnp

Reply #923
Foobar v1.1 compatibility

Well someone had to try it
Only discovered upnp last friday 20/8/10.
Firstly, thanks for an amazing plugin. I wanted to listen to my music remotely and never imagined there'd
be something as good as this.
Only thing that seems to be missing is a way to perform a search on the client, as good as the library search
on the server. I have 50K tunes and browsing them is not an option. Or am I missing how to perform the library search on the client?

Anyway, I upgraded my client foobars to v1.1 and all seemed fine.
I then put v1.1 on the server foobar and now the clients seem to have playback problems.
Tracks take an age to load. When they do, the stream keeps repeating portions of a tune.
Playback pauses then jumps back and repeats a small portion of the tune. This continues, with
playback advancing slightly, every so often.
Is 0.99.29 not compatible with foobar v1.1?