Newsgroup: it.comp.lang.visual-basic
Titolo: VisualBasic e server upnpAV... si può?

Salve gruppo, vi leggo spesso (anche se posto molto poco) però oggi mi è 
venuta un'idea e spero che voi possiate aiutarmi... e così, a bruciapelo, 
senza girarci troppo intorno, la mia domanda è questa:
Qualcuno di voi si è cimentato nella realizzazione di un "Media Server upnp 
AV"??
A casa - tra il televisore, il videoregistratore e l'amplificatore - ho 
anche un dispositivo hardware che funge da "Mediaplayer". L'oggettino 
(D-Link dsm 320) si connette in ethernet (o in wi-fi) alla mia lan 
domestica, e riproduce i contenuti multimediali che si trovano sul computer 
(audio, video e foto) sul grande schermo e sull'amplificatore stereo.
La decodifica viene effettuata in locale dal D-Link mediaplayer: mpeg divx 
mp3 jpg e quant'altro, vengono decodificati senza problemi dall'hardware 
stesso, senza alcun rallentamento. Quindi mi avvalgo di un semplice software 
"media server" installato sul pc, che si trova nell'altra stanza, che 
distribuisce i contenuti al mediaplayer tramite il protocollo upnpAV su 
TCP/IP.
E fin qui tutto bene...
Il problema è che ho provato vari software di "media server"... sia quello 
in dotazione (D-Link) che quello di casa Microsoft (prima il Media Connect, 
poi anche Mediaplayer 11), ed ho provato anche software di terze parti (es. 
TVersity), ma nessuno di questi mi soddisfa appieno!
Quello che ha uno, non ha l'altro... e viceversa... chi è troppo scarno, e 
chi invece è troppo sofisticato e ha l'ambizione di fare troppe cose (e 
quindi mi sdraia la cpu del computer).
A me servirebbe soltanto un semplice software "media server upnpAV", che 
giri in modalità "service" di Windows, per distribuire i contenuti 
multimediali sulla lan SENZA effettuare nessuna transcodifica di formato.
Quello che mi interessa di più, invece, è che possa avere delle funzioni di 
ricerca o di filtro "avanzate", o degli ordinamenti personalizzati per la 
selezione di ciò che si desidera riprodurre(magari con delle voci di menù 
"ad hoc").
Si lo so, sono troppo esigente... e se mi avete già mandato mentalmente 
aff##ulo, allora vi consiglio di fermarvi qui senza andare oltre... lo so, 
mi faccio un sacco di pippe mentali, non posso che darvi ragione..... :-))
Ma se invece state proseguendo nella lettura, allora vuol dire che il 
discorso vi interessa, quindi andiamo pure avanti.
Ho dato un'occhiata alle specifiche del protocollo upnpAV, e mi sembra che 
non sia molto difficile da gestire in Visual Basic. A parte lo stream 
multimediale, il protocollo si basa quasi esclusivamente sul formato XML.
Premesso che potrei anche approfondire da me il discorso (tempo permettendo, 
perché purtroppo nella vita tutti abbiamo anche un lavoro) io mi domando... 
non è che per caso esiste da qualche parte un sorgente "base" libero, 
disponibile per la compilazione e/o l'implementazione di nuove funzioni?
Anche fosse solo per le routine di colloquio con il mediaplayer, o per la 
distribuzione dello stream sulla rete, già sarebbe una gran cosa...
Il mio obiettivo è quello creare un mediaserver per le mie specifiche 
esigenze, in modo da avere dei menù personalizzati per la selezione dei 
contenuti da riprodurre sul media player, e delle funzioni che non sono 
disponibili nei software che fino ad oggi ho provato.
Ma un esempio, forse rende l'idea meglio di tante parole.
Supponiamo che i voglia ascoltare il cd XXX, del cantante YYY:
Fare questa cosa sul media player è abbastanza semplice, con qualsiasi 
software media server installato sul computer. Basta semplicemente navigare 
nel filesystem, entrare nella cartella YYY (il nome cantante) dove c'è 
un'altra cartella XXX (il disco) ed infine premere PLAY per ascoltare tutti 
i brani contenuti nella cartella stessa.
Ma supponiamo invece che io voglia ascoltare TUTTI i dischi di questo stesso 
cantante YYY (del quale ho almeno una ventina di album in formato mp3 sul 
computer)... ecco... qui già la cosa inizia a farsi un po' complicata per i 
vari software media server, che secondo me iniziano a diventare un po' 
stupidi... :-(
La logica direbbe che dovrei limitarmi semplicemente ad entrare nella 
cartella YYY (il nome cantante), e da lì premere subito PLAY per ascoltare 
tutti i brani contenuti nella sottocartelle.
Invece purtroppo non è così!! Nessun media server accetta una richiesta di 
questo genere. I brani nei subfolder non vengono considerati, e quindi 
ricevo la laconica risposta "Nessun brano da riprodurre".
L'alternativa è entrare nei vari subfolder, uno ad uno, e chiedere il 
play...
Una seconda alternativa è quella di navigare dal media server entrando nella 
voce "autori" invece che nel "filesystem". Da lì si può scorrere l'elenco 
degli autori, fino ad arrivare al cantante YYY, e dare direttamente PLAY sul 
suo nome. In questo caso vengono riprodotti tutti i suoi brani... ma 
purtroppo in ordine alfabetico, senza tenere conto dell'appartenenza a 
questo o quell'altro album... e quindi l'ascolto diventa improponibile 
(infatti spesso succede di ascoltare di seguito la stessa canzone, che è 
presente più volte in album diversi, magari con arrangiamento diverso).
Nessun software media server, almeno tra tutti quelli da me provati, invia i 
brani nello stesso ordine in cui li trova nelle sottocartelle!! Eppure mi 
sembra la cosa più banale ed elementare di questo mondo... anche sul 
computer stesso, se ad esempio trascino una cartella in Winamp, vengono 
riprodotti tutti i brani che si trovano nelle sottocartelle con lo stesso 
ordine di come si trovano sul disco!
Questo è solo un esempio, ma ce ne sono molti altri che non sto qui ad 
elencare per ovvi motivi, ed è proprio per questo che avrei deciso di 
scrivere un software media server con una logica più "intelligente" ed 
intuitiva di quelli che si trovano attualmente in circolazione (freeware e 
non).
Consigli? Idee? Spunti? Un SDK?
Siete a conoscenza di codici VB sorgenti di esempio, su qualche sito, per 
non dover partire proprio da zero?
Grazie per avermi letto fin qui...
B.

 qualcosa su un niuggi testuale ?
CHIEDO PERDONO.... mi dispiace, non me ne ero accorto...
Purtroppo ho molta corrispondenza in e-mail con paesi stranieri, quindi uso 
Unicode come default per tutti i messaggi in uscita!
Provvederò ad eliminarlo subito!!!!
Scusa ancora.

 qualcosa su un niuggi testuale ?
Chiedo ancora scusa a tutti per l'Unicode di sopra, e ripropongo qui sotto 
il post iniziale del thread, in formato (spero) stavolta leggibile a 
chiunque.
<<<<<<<<<<<<<<<  MESSAGGIO ORIGINALE  >>>>>>>>>>>>>>>>












 Followup-To: it-alt.community.cibba
P.S.: io il post originale lo vedo correttamente.
Non è che Pan non lo decodifica ?
Bye, G. 

 quello che vedi e' tutta "fuffa"
Che siano fuffa non c'č dubbio, eh >:-].
Bye, G. 

 mazza col VB ?
Hai perfettamente ragione!!
Io inizialmente chiedevo una cosa proprio riguardante il VB, e non capisco 
perché il thread ha preso questa strana piega...
Comunque ci sto riflettendo molto su quanto ho scritto sopra, e siccome non 
ho assolutamente il tempo per mettermi a scrivere un sw mediaserver da zero, 
sto dirottando verso una soluzione "linux-embedded" installata su uno 
storage di rete.
Senza considerare che, spostandomi su un NAS, prendo due piccioni con una 
fava... anzi, per essere sincero, ne prendo anche tre o quattro, di 
piccioni...   ;-)
Grazie comunque lo stesso a tutti
B.

 quello e' colpa di Abasani ... o cosi o coli'
Ah, ecco. A proposito, hai visto la marmottina che incarta la cioccolata,
ultimamente ?
Bye, G.