clients: separate Samsung BDP and TV client types again
Advertising the DCM10 vendor-specific feature to Samsung Series C and D (at least) players causes them to always browse ContainerID 1, no matter which section is chosen from their GUI. Treat TVs and BDPs as separate client types with unique features.
This commit is contained in:
parent
d10293b038
commit
e3a53fc8a3
16
clients.c
16
clients.c
@ -53,9 +53,21 @@ struct client_type_s client_types[] =
|
|||||||
EXAVClientInfo
|
EXAVClientInfo
|
||||||
},
|
},
|
||||||
|
|
||||||
|
/* Samsung Series [CDE] BDPs and TVs must be separated, or some of our
|
||||||
|
* advertised extra features trigger a folder browsing bug on BDPs. */
|
||||||
|
/* User-Agent: DLNADOC/1.50 SEC_HHP_BD-D5100/1.0 */
|
||||||
|
{ ESamsungSeriesCDEBDP,
|
||||||
|
FLAG_SAMSUNG | FLAG_DLNA | FLAG_NO_RESIZE,
|
||||||
|
"Samsung Series [CDE] BDP",
|
||||||
|
"SEC_HHP_BD",
|
||||||
|
EUserAgent
|
||||||
|
},
|
||||||
|
|
||||||
|
/* User-Agent: DLNADOC/1.50 SEC_HHP_[TV]UE40D7000/1.0 */
|
||||||
|
/* User-Agent: DLNADOC/1.50 SEC_HHP_ Family TV/1.0 */
|
||||||
{ ESamsungSeriesCDE,
|
{ ESamsungSeriesCDE,
|
||||||
FLAG_SAMSUNG | FLAG_DLNA | FLAG_NO_RESIZE | FLAG_SAMSUNG_TV,
|
FLAG_SAMSUNG | FLAG_DLNA | FLAG_NO_RESIZE | FLAG_SAMSUNG_DCM10,
|
||||||
"Samsung Series C/D/E",
|
"Samsung Series [CDE]",
|
||||||
"SEC_HHP_",
|
"SEC_HHP_",
|
||||||
EUserAgent
|
EUserAgent
|
||||||
},
|
},
|
||||||
|
@ -32,7 +32,7 @@
|
|||||||
#define FLAG_NO_RESIZE 0x00000040
|
#define FLAG_NO_RESIZE 0x00000040
|
||||||
#define FLAG_MS_PFS 0x00000080 // Microsoft PlaysForSure client
|
#define FLAG_MS_PFS 0x00000080 // Microsoft PlaysForSure client
|
||||||
#define FLAG_SAMSUNG 0x00000100
|
#define FLAG_SAMSUNG 0x00000100
|
||||||
#define FLAG_SAMSUNG_TV 0x00000200
|
#define FLAG_SAMSUNG_DCM10 0x00000200
|
||||||
#define FLAG_AUDIO_ONLY 0x00000400
|
#define FLAG_AUDIO_ONLY 0x00000400
|
||||||
#define FLAG_FORCE_SORT 0x00000800
|
#define FLAG_FORCE_SORT 0x00000800
|
||||||
|
|
||||||
@ -61,6 +61,7 @@ enum client_types {
|
|||||||
ERokuSoundBridge,
|
ERokuSoundBridge,
|
||||||
ESamsungSeriesA,
|
ESamsungSeriesA,
|
||||||
ESamsungSeriesB,
|
ESamsungSeriesB,
|
||||||
|
ESamsungSeriesCDEBDP,
|
||||||
ESamsungSeriesCDE,
|
ESamsungSeriesCDE,
|
||||||
ESonyBDP,
|
ESonyBDP,
|
||||||
ESonyBravia,
|
ESonyBravia,
|
||||||
|
@ -918,7 +918,7 @@ ProcessHttpQuery_upnphttp(struct upnphttp * h)
|
|||||||
friendly_name[i] = '\0';
|
friendly_name[i] = '\0';
|
||||||
memcpy(modelnumber, model_sav, 2);
|
memcpy(modelnumber, model_sav, 2);
|
||||||
}
|
}
|
||||||
else if( client_types[h->req_client].flags & FLAG_SAMSUNG_TV )
|
else if( client_types[h->req_client].flags & FLAG_SAMSUNG_DCM10 )
|
||||||
{
|
{
|
||||||
sendXMLdesc(h, genRootDescSamsung);
|
sendXMLdesc(h, genRootDescSamsung);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user