Jump to content

Recommended Posts

SalimRahmani
Posted

Hello Emby Community,

I am currently working on enhancing my XMLTV file with data from The Movie Database (TMDB) to improve the visual experience in Emby. I have a few questions regarding how Emby handles images specified in the XMLTV guide data:

1. Posters and Backdrops: Is there a way to specify both poster and backdrop images within the XMLTV file so that they are properly displayed in Emby? If so, what tags or attributes should I use to differentiate between the two types of images?

2. Icon Tag: Currently, I am using the <icon> tag to include images. Could you please clarify what the <icon> tag corresponds to in Emby? Is it used as a poster, thumbnail, or something else?

3. Resolution and Aspect Ratio: What are the recommended resolution and aspect ratio for images included in the XMLTV file to ensure they display correctly and look good in Emby’s interface?

I appreciate any guidance or examples you can provide to help me enhance my XMLTV file with the appropriate image data.

Thank you!

Posted

Hi, it is currently poster only, and the icon tag corresponds to the program poster.

2:3 aspect is recommended. Supporting backdrops would be easy though.

  • Like 1
SalimRahmani
Posted (edited)

Hi Luke,

Thank you Luke for the prompt response and for providing clarity on the current handling of poster images through the <icon> tag. (Discussion - Making a Custom XML EPG for a single channel)

I would love to see Emby support the <image> node in XMLTV, as it would enhance the visual experience significantly. Many TV shows on The Movie Database (TMDB) have logos, posters, and backdrops available. For instance, the show "50 Minutes Inside" (https://www.themoviedb.org/tv/219759-50-minutes-inside) features all three types of images in its media section.

It would be fantastic if the <icon> tag could be used for logos when TMDB provides them, and the <image> tag could be used for posters and backdrops. Here is an example of how the <icon> and <image> tags can be used in XMLTV:

<programme channel="NAME OF YOUR CHANNEL HERE" start="20210101000000 +0000" stop="20211231235900 +0000">
  <title>Programme Title</title>
  <desc>Programme description</desc>
  <sub-title>...</sub-title>
  <icon src="https://example.com/url_to_program_logo.jpg" width="100" height="100" />
  <image type="poster" size="2" orient="P" system="example_system">https://example.com/url_to_program_poster.jpg</image>
  <image type="backdrop" size="3" orient="L" system="example_system">https://example.com/url_to_program_backdrop.jpg</image>
</programme>

Is there any possibility to have an idea about the timeline for supporting these nodes? Should I create a feature request for this?

Additionally, I have another suggestion: it would be beneficial to include the TMDB ID in the guide.xml file. I understand this might require manual effort from users, but it could allow the Emby server to directly download data from TMDB, bypassing the need to search by name. This could streamline the process and ensure accuracy in matching shows and movies.

Thank you again for your assistance and for continuously improving Emby. I'm excited about the potential enhancements and look forward to any updates on these suggestions.

Best regards,

Edited by SalimRahmani
clarification
  • 1 month later...
Posted

@SalimRahmaniwhere does the image node convention come from? Is it something you personally came up with?

Posted

OK @SalimRahmanithis is untested, but here is a build of the xml plugin that will read these values:

Emby.XmlTV.zip

Please let me know how things go. Thanks.

  • 1 month later...
SalimRahmani
Posted

Hello Luke,

First of all, I apologize for the delayed response. Thank you for providing the build of the XML plugin. 

I followed the installation steps by placing the .dll file into the config/plugins folder and restarted my Docker container. My XMLTV file includes three image nodes: one <icon> for the program logo and two <image> nodes for the poster and backdrop, as you suggested.

However, it appears that Emby is only displaying the poster and program logo from the <icon> node. The <image> nodes for the poster and backdrop are not being recognized or displayed as expected. I’m not sure if I might have missed a step during the installation or configuration process, or if there might be another issue at play.

Could you please provide further guidance on what might be causing this, or if there are additional steps I should follow to get the plugin working as intended?

Thank you again for your help and for all the work you do to improve Emby. I’m looking forward to any suggestions you might have.

Posted
3 hours ago, SalimRahmani said:

Hello Luke,

First of all, I apologize for the delayed response. Thank you for providing the build of the XML plugin. 

I followed the installation steps by placing the .dll file into the config/plugins folder and restarted my Docker container. My XMLTV file includes three image nodes: one <icon> for the program logo and two <image> nodes for the poster and backdrop, as you suggested.

However, it appears that Emby is only displaying the poster and program logo from the <icon> node. The <image> nodes for the poster and backdrop are not being recognized or displayed as expected. I’m not sure if I might have missed a step during the installation or configuration process, or if there might be another issue at play.

Could you please provide further guidance on what might be causing this, or if there are additional steps I should follow to get the plugin working as intended?

Thank you again for your help and for all the work you do to improve Emby. I’m looking forward to any suggestions you might have.

What does the xml look like?

SalimRahmani
Posted

Hi Luke,

Please find attached the document.

I wanted to provide more context on how I generate and enhance my guide.xml file and the specific changes I made that led to my initial request.

I use a project from GitHub to generate the base guide.xml file: iptv-org/epg. This project allows me to specify custom channels, so I only include the channels I need in the guide.xml file.

After generating the base file, I use another project, ElasticTMDB, to enhance the guide.xml. This enhancement process includes querying The Movie Database (TMDB) for additional metadata such as descriptions, cast details, and images. The script I use from ElasticTMDB is process_xmltv.py, which enhances the XMLTV file by adding <icon> tags for program logos.

According to the xmltv.dtd, the <icon> node is intended to represent the program logo. However, the ElasticTMDB project I’m using to enhance my guide.xml queries TMDB for a single image and places it in the <icon> tag, without regard to the image’s resolution or its intended purpose (logo, poster, or backdrop).

Emby currently uses this image (the only one present in the <icon> tag) as both a poster and a backdrop, which doesn’t render properly due to the mismatch in image dimensions and intended use.

My initial request was aimed at finding a way to specify different images (poster and backdrop) using additional nodes, such as <image>, in the XMLTV file. I manually added these <image> nodes to the XML file to test whether Emby would support displaying distinct images for posters and backdrops. Here’s an example of how I modified the XML for one of the programs:

<programme start="20240829095000 +0000" stop="20240829105500 +0000" channel="TF1.fr">
    <title lang="fr">Les douze coups de midi</title>
    <desc lang="fr">Chaque jour, des candidats tentent de répondre à des questions ludiques et
        culturelles afin de gagner jusqu'à 30 000 euros. Mais ils devront avoir décroché la
        mystérieuse étoile aux cadeaux avant que ne retentissent Les 12 coups de midi.</desc>
    <image type="poster" size="1" orient="P" system="tmdb">
        https://image.tmdb.org/t/p/original/egwLxhrBiajnhp8itREZFv1OsJH.jpg</image>
    <image type="backdrop" size="3" orient="L" system="tmdb">
        https://image.tmdb.org/t/p/original/mC7Fw0v7WtxP5r5FGYEMEzEkDjS.jpg</image>
</programme>

This is the only program entry where I added the <image> nodes manually for testing purposes. Despite adding these nodes, Emby only seems to display the poster, backdrop from the <icon> tag, and not the additional images specified in the <image> nodes.

I have attached the enhanced_guide_2.xml file for you to review. I would greatly appreciate it if you could take a look and provide any further insights on what might be causing the issue or if there are any specific formats or configurations I should adhere to.

Thank you again for your assistance and for the continuous improvements you’re making to Emby.

enhanced_guide_2.xml

SalimRahmani
Posted

Hi Luke,

Thank you for the updated version of the plugin! I tested it, and it seems to be partially working, which is great progress.

However, I noticed that when the guide.xml contains an <image> node, Emby assigns the image link as a backdrop, regardless of the type specified in the <image> node. Meanwhile, the <icon> tag is used as a poster.

Ideally, it would be great if the plugin could implement the specification more precisely:

  • <icon> should be used for the program logo.
  • <image type="poster"> should be designated for the poster.
  • <image type="backdrop"> should be designated for the backdrop.

The current functionality is workable for now, but it would certainly be cleaner and more efficient if Emby could fully support the intended use of these tags according to the XMLTV specification. This would ensure the correct images are displayed for each program and enhance the user experience.

I appreciate all your efforts in developing and refining this plugin, and I hope this feedback is helpful for any further improvements. Thank you again for your prompt responses and continuous support!

Best regards,

Posted
Quote

Emby assigns the image link as a backdrop, regardless of the type specified in the <image> node

HI, what do you mean by this? it is checking the type.

SalimRahmani
Posted

Hmm that's weird. I removed the <icon> node from my guide.xml and specified two <image> nodes instead—one with type="poster" and the other with type="backdrop". In this setup, only the image with type="backdrop" is being displayed in Emby, and the type="poster" image is not showing up at all.

Posted

Granted I am only lightly testing this but the code is definitely checking for type=poster.

SalimRahmani
Posted

Hi Luke,

Thanks for the clarification and for your continued support in testing this!

After conducting some additional tests, I noticed the following:

The plugin does recognize type="poster" correctly, but only when the <icon> node is not present in the same <programme> tag. If a <programme> tag includes an <icon>, Emby uses that value for the poster, rather than the type="poster" from the <image> node. This limits the ability to use both a poster and a distinct program logo simultaneously.

Currently, there doesn’t seem to be support for a dedicated program logo, which is why I wanted to gently ask if the team is considering further implementation of the XMLTV specification.

Also, there are multiple potential values for the <image> type, such as “person,” “character,” etc., which could enhance the presentation of content within Emby. For example:

<actor role="Karl James" guest="yes">
    Ryan Lee
    <image type="person">https://example.com/xxx.jpg</image>
    <url system="moviedb">https://example.com/person/204</url>
</actor>

These could be great additions to support future enhancements and offer a more comprehensive visual experience.

This is by no means urgent, and the current functionality is certainly workable for my needs. I just wanted to share these ideas in case there’s interest in exploring further.

Thank you again for your hard work and support. I truly appreciate it and look forward to any future updates!

Best regards,

SalimRahmani
Posted

Hi Luke,

Thank you for the new build. I tested it, but I didn’t notice any changes in the behavior.

Currently, the poster and backdrop are displayed correctly when only <image> nodes with the appropriate type specified (such as type="poster" or type="backdrop") are present within a <programme> node. However, if an <icon> node exists within the same <programme> node, Emby uses the <icon> value for the poster instead of the type="poster" image, which prevents the display of a distinct program logo.

Additionally, I observed that actor images are not being displayed, and the entire <credits> node, including all associated information, does not appear to be shown in Emby.

I understand that some of these features might not be fully implemented yet, and that’s perfectly okay. The current functionality is workable for my needs. I just wanted to provide this feedback for any future enhancements you might consider.

Thank you again for all your hard work and support. I appreciate your efforts in continuously improving Emby!

Posted

OK maybe the changes didn't get built in the version I gave you, so please try this:

Emby.XmlTV.zip

If there's still an issue then please provide screenshot examples. thanks.

  • Like 2

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...