| 940 | return False # tree unchanged |
| 941 | |
| 942 | def TREE_MEDIABADGES(self, elem, child, src, srcXML, param): |
| 943 | resolution, leftover, dfltd = self.getKey(src, srcXML, param + "/videoResolution") |
| 944 | container, leftover, dfltd = self.getKey(src, srcXML, param + "/container") |
| 945 | vCodec, leftover, dfltd = self.getKey(src, srcXML, param + "/videoCodec") |
| 946 | aCodec, leftover, dfltd = self.getKey(src, srcXML, param + "/audioCodec") |
| 947 | channels, leftover, dfltd = self.getKey(src, srcXML, param + "/audioChannels") |
| 948 | |
| 949 | additionalBadges = etree.Element("additionalMediaBadges") |
| 950 | index = 0 |
| 951 | attribs = {'insertIndex': '0', 'required': 'true', 'src': ''} |
| 952 | |
| 953 | # Resolution |
| 954 | if resolution not in ['720', '1080', '2k', '4k']: |
| 955 | attribs['src'] = g_param['baseURL'] + '/thumbnails/MediaBadges/sd.png' |
| 956 | else: |
| 957 | attribs['src'] = g_param['baseURL'] + '/thumbnails/MediaBadges/' + resolution + '.png' |
| 958 | urlBadge = etree.SubElement(additionalBadges, "urlBadge", attribs) |
| 959 | index += 1 |
| 960 | # Special case iTunes DRM |
| 961 | if vCodec == 'drmi' or aCodec == 'drms': |
| 962 | attribs['insertIndex'] = str(index) |
| 963 | attribs['src'] = g_param['baseURL'] + '/thumbnails/MediaBadges/iTunesDRM.png' |
| 964 | urlBadge = etree.SubElement(additionalBadges, "urlBadge", attribs) |
| 965 | child.append(additionalBadges) |
| 966 | return True # Finish, no more info needed |
| 967 | # File container |
| 968 | if container != '' and self.options['aTVFirmwareVersion'] >= '7.0': |
| 969 | attribs['insertIndex'] = str(index) |
| 970 | attribs['src'] = g_param['baseURL'] + '/thumbnails/MediaBadges/' + container + '.png' |
| 971 | urlBadge = etree.SubElement(additionalBadges, "urlBadge", attribs) |
| 972 | index += 1 |
| 973 | # Video Codec |
| 974 | if vCodec != '' and self.options['aTVFirmwareVersion'] >= '7.0': |
| 975 | if vCodec == 'mpeg4': |
| 976 | vCodec = 'xvid' # Are there any other mpeg4-part 2 codecs? |
| 977 | attribs['insertIndex'] = str(index) |
| 978 | attribs['src'] = g_param['baseURL'] + '/thumbnails/MediaBadges/' + vCodec + '.png' |
| 979 | urlBadge = etree.SubElement(additionalBadges, "urlBadge", attribs) |
| 980 | index += 1 |
| 981 | # Audio Codec |
| 982 | if aCodec != '': |
| 983 | attribs['insertIndex'] = str(index) |
| 984 | attribs['src'] = g_param['baseURL'] + '/thumbnails/MediaBadges/' + aCodec + '.png' |
| 985 | urlBadge = etree.SubElement(additionalBadges, "urlBadge", attribs) |
| 986 | index += 1 |
| 987 | # Audio Channels |
| 988 | if channels != '': |
| 989 | attribs['insertIndex'] = str(index) |
| 990 | attribs['src'] = g_param['baseURL'] + '/thumbnails/MediaBadges/' + channels + '.png' |
| 991 | urlBadge = etree.SubElement(additionalBadges, "urlBadge", attribs) |
| 992 | # Append XML |
| 993 | child.append(additionalBadges) |
| 994 | return True # Tree changed |
| 995 | |
| 996 | |
| 997 | # XML ATTRIB modifier commands |