/// } +/// \table_row3{ `MusicPlayer.ChannelLogo`, +/// \anchor MusicPlayer_ChannelLogo +/// _string_, +/// @return The path for the logo of the currently playing radio channel\, if available (PVR). +///
+/// } /// \table_row3{ `MusicPlayer.ChannelNumberLabel`, /// \anchor MusicPlayer_ChannelNumberLabel /// _string_, @@ -2877,6 +2885,7 @@ const infomap musicpartymode[] = {{ "enabled", MUSICPM_ENABLED }, /// \table_end /// /// ----------------------------------------------------------------------------- +// clang-format off const infomap musicplayer[] = {{ "title", MUSICPLAYER_TITLE }, { "album", MUSICPLAYER_ALBUM }, { "artist", MUSICPLAYER_ARTIST }, @@ -2911,6 +2920,7 @@ const infomap musicplayer[] = {{ "title", MUSICPLAYER_TITLE }, { "playcount", MUSICPLAYER_PLAYCOUNT }, { "lastplayed", MUSICPLAYER_LASTPLAYED }, { "channelname", MUSICPLAYER_CHANNEL_NAME }, + { "channellogo", MUSICPLAYER_CHANNEL_LOGO }, { "channelnumberlabel", MUSICPLAYER_CHANNEL_NUMBER }, { "channelgroup", MUSICPLAYER_CHANNEL_GROUP }, { "dbid", MUSICPLAYER_DBID }, @@ -2922,6 +2932,7 @@ const infomap musicplayer[] = {{ "title", MUSICPLAYER_TITLE }, { "totaldiscs", MUSICPLAYER_TOTALDISCS }, { "station", MUSICPLAYER_STATIONNAME } }; +// clang-format on /// \page modules__infolabels_boolean_conditions /// \subsection modules__infolabels_boolean_conditions_Videoplayer Video player @@ -3850,6 +3861,14 @@ const infomap musicplayer[] = {{ "title", MUSICPLAYER_TITLE }, /// @return The name of the currently tuned channel (PVR). ///
/// } +/// \table_row3{ `VideoPlayer.ChannelLogo`, +/// \anchor VideoPlayer_ChannelLogo +/// _string_, +/// @return The path for the logo of the currently playing TV channel\, if available (PVR). +///
+/// } /// \table_row3{ `VideoPlayer.ChannelNumberLabel`, /// \anchor VideoPlayer_ChannelNumberLabel /// _string_, @@ -3996,6 +4015,7 @@ const infomap videoplayer[] = {{ "title", VIDEOPLAYER_TITLE }, { "nextendtime", VIDEOPLAYER_NEXT_ENDTIME }, { "nextduration", VIDEOPLAYER_NEXT_DURATION }, { "channelname", VIDEOPLAYER_CHANNEL_NAME }, + { "channellogo", VIDEOPLAYER_CHANNEL_LOGO }, { "channelnumberlabel", VIDEOPLAYER_CHANNEL_NUMBER }, { "channelgroup", VIDEOPLAYER_CHANNEL_GROUP }, { "hasepg", VIDEOPLAYER_HAS_EPG }, @@ -5974,6 +5994,14 @@ const infomap container_str[] = {{ "property", CONTAINER_PROPERTY }, /// @return The name of current selected TV channel in a container. ///
/// } +/// \table_row3{ `ListItem.ChannelLogo`, +/// \anchor ListItem_ChannelLogo +/// _string_, +/// @return The path for the logo of the currently selected radio or TV channel\, if available (PVR). +///
+/// }
/// \table_row3{ `ListItem.VideoCodec`,
/// \anchor ListItem_VideoCodec
/// _string_,
@@ -7127,6 +7155,7 @@ const infomap listitem_labels[]= {{ "thumb", LISTITEM_THUMB },
{ "nextenddate", LISTITEM_NEXT_ENDDATE },
{ "nextduration", LISTITEM_NEXT_DURATION },
{ "channelname", LISTITEM_CHANNEL_NAME },
+ { "channellogo", LISTITEM_CHANNEL_LOGO },
{ "channelnumberlabel", LISTITEM_CHANNEL_NUMBER },
{ "channelgroup", LISTITEM_CHANNEL_GROUP },
{ "hasepg", LISTITEM_HAS_EPG },
diff --git a/xbmc/guilib/guiinfo/GUIInfoLabels.h b/xbmc/guilib/guiinfo/GUIInfoLabels.h
index fe866fe0928bc..b926d860e9b79 100644
--- a/xbmc/guilib/guiinfo/GUIInfoLabels.h
+++ b/xbmc/guilib/guiinfo/GUIInfoLabels.h
@@ -224,6 +224,9 @@
#define MUSICPLAYER_CONTENT 246
#define MUSICPLAYER_ISMULTIDISC 247
+// More Musicplayer infolabels
+#define MUSICPLAYER_CHANNEL_LOGO 248
+
// Videoplayer infolabels
#define VIDEOPLAYER_HDR_TYPE 249
// Keep videoplayer infolabels that work with offset and position together
@@ -318,6 +321,9 @@
#define RETROPLAYER_STRETCH_MODE 331
#define RETROPLAYER_VIDEO_ROTATION 332
+// More PVR infolabels
+#define VIDEOPLAYER_CHANNEL_LOGO 333
+
#define CONTAINER_HAS_PARENT_ITEM 341
#define CONTAINER_CAN_FILTER 342
#define CONTAINER_CAN_FILTERADVANCED 343
@@ -981,6 +987,7 @@ static constexpr unsigned int SYSTEM_LOCALE = 1012;
#define LISTITEM_HASVIDEOEXTRAS (LISTITEM_START + 216)
#define LISTITEM_PVR_CLIENT_NAME (LISTITEM_START + 217)
#define LISTITEM_PVR_INSTANCE_NAME (LISTITEM_START + 218)
+#define LISTITEM_CHANNEL_LOGO (LISTITEM_START + 219)
#define LISTITEM_END (LISTITEM_START + 2500)
diff --git a/xbmc/pvr/guilib/guiinfo/PVRGUIInfo.cpp b/xbmc/pvr/guilib/guiinfo/PVRGUIInfo.cpp
index d6859b5a2f9cd..fb09aba999dc7 100644
--- a/xbmc/pvr/guilib/guiinfo/PVRGUIInfo.cpp
+++ b/xbmc/pvr/guilib/guiinfo/PVRGUIInfo.cpp
@@ -425,6 +425,9 @@ bool CPVRGUIInfo::GetListItemAndPlayerLabel(const CFileItem* item,
case LISTITEM_CHANNEL_NAME:
strValue = timer->ChannelName();
return true;
+ case LISTITEM_CHANNEL_LOGO:
+ strValue = timer->ChannelIcon();
+ return true;
case LISTITEM_PVR_CLIENT_NAME:
strValue = CServiceBroker::GetPVRManager().GetClient(timer->ClientID())->GetClientName();
return true;
@@ -485,7 +488,6 @@ bool CPVRGUIInfo::GetListItemAndPlayerLabel(const CFileItem* item,
if (recording->HasExpirationTime())
{
strValue = GetAsLocalizedTimeString(recording->ExpirationTimeAsLocalTime());
- ;
return true;
}
break;
@@ -523,6 +525,18 @@ bool CPVRGUIInfo::GetListItemAndPlayerLabel(const CFileItem* item,
}
break;
}
+ case VIDEOPLAYER_CHANNEL_LOGO:
+ case LISTITEM_CHANNEL_LOGO:
+ {
+ const std::shared_ptr