After I refreshed all metadata for my movie library, almost all the posters went away. After working a couple hours a day for about 10 days I’m only about half finished getting the posters back by clicking on the edit button for each movie, then choosing a poster. Does anyone know a way to prevent the posters from disappearing when refreshing all the metadata? …or any other suggestions. Thanks
Is it possible that you recently changed the metadata agent of your library? Because it sounds exactly what this procedure tries to cure: Reset all manual poster selections in a library at once or unlock other metadata fields
Thanks OttoKerner… I looked over the information on that link…it looks kindof complicated. I will study it a bit more later to see if I can understand it. I don’t know much about the plex options, I just do the most simple things…but after your suggestion, I clicked on Edit - Advanced for the library, and I see that “Plex Movie” shows up in the Agent field. I just assumed I had “The Movie Database” in that field. Sometimes if I’m trying to get Plex to fix or recognize a match for a movie I will try different agents on that movie, but I don’t recall ever changing the Agent for an entire library. …so now, if I change the Agent from “Plex Movie” to “The Movie Database” will that get rid of all the posters I corrected? I don’t want to find out so I guess I’ll just leave it as “Plex Movie”. Hopefully it was just a one time glitch.
Also, I have about 20 folders in my movie library. I don’t know if having a lot of folders can cause problems or not.
Also, while choosing posters, what sometimes happens, and seems to be happening more frequently lately, is after I choose a poster, it doesn’t show up in the library…instead, it’s just a black space where the poster should be…so i go back to the posters to select it again, but it’s gone from the selection so I have to select a different one…that can happen 5 or more times on one movie, so I have to keep going back to select a different poster until finally one of the selections shows up in the library.
So from the information on that link you supplied, it says “Because a different metadata agent might also provide a different list of posters to choose from. Locking the poster won’t preserve the poster which was delivered by the previously used metadata agent – simply because it might not be available anymore.” I don’t know if that is related to what is happening with me.
Anyway, for now I’ll just keep fixing the posters one by one for now thanks again for the information.
Don’t.
The old metadata agents will go away at some point in the future.
And they won’t see any updates and bugfixes either.
20 should be fine. (if somewhat slower at library scans
Trigger “Refresh Metadata” for the whole library.
After you have performed the above linked procedure.
Thanks OttoKerner
So as i go thru the steps maybe you can help me a bit more at your convenience.
step 1 You need access to the curl command - So I go to curl for Windows to download curl to the laptop which is running plex.
step 2 - Determine the library ID number of your Plex library. You can get it from the Plex XML info 3 of one of this library’s items (or by simply hovering the mouse cursor over the library name of this library in the web app)- – I don’t see any number when I hover the mouse cursor over any of the library names. The XML file has an entry called librarySectionID=“30” …and source=30 also shows up at the end of the URL when plex is showing the movie library… so i guess the movie library ID number is 30?
step 3 Get a valid X-Plex-Token - that one is pretty easy…it’s at the end of the URL of the XML file
step 4 Build yourself some queries: (Unlocking the thumbnails for movies, tv shows, tv show seasons, tv shows episodes need to be done separately.
so I would run the curl program on the laptop by
- replace me.local by the IP address or the domain name of your Plex server – how do i find the Ip address of the Plex server? I looked around and the best idea i could come up with is to replace “me.local:32400” with “127.0.0.1:32400”
2.replace NN by the library ID of your music library – Do you mean replace NN with the library ID I’m working on? In this case it is the movie library, which I think is 30.
- replace XXXXX with your X-Plex-Token … that part even i can understand
Thanks… meanwhile, I guess I’ll just keep manually selecting posters.
Yes to all questions. Since you’re only working on a movie library, you only need to build one query.
Correct, the ID is the number in librarySectionID.
Thanks OttoKerner
After doing some reading, i found that windows 10 already has curl installed. The version on my laptop is 7.79.1 from Sept 2021
Do you think that version is recent enough? I guess nothing bad will happen if I try with that version but I don’t know for sure.
Also I forgot to ask if plex needs to be open or closed when running the curl command…thanks again
Yes, of course.
The server must be running. Otherwise it won’t react to the API command which you are sending per curl.
Ok, thanks again. I wouldn’t have come close to figuring all that out on my own.
Hi again.
I typed the following in the windows cmd window
curl -X PUT “127.0.0.1:32400/library/sections/30/all?type=1&thumb.locked=0&X-Plex-Token=xxx”
I then refreshed the metadata for the movies folder… Plex got rid of all the posters I spent many tedious hours setting up and replaced them with various screenshots.
So I opened the cmd window as administrator and typed in that same line again…Now plex is refreshing the metadata for the movies folder again but i don’t see any posters for the movies that have been refreshed.
When or if you have time, can you let me know what i did wrong here? … probably something simple that i overlooked. Thanks again
Please show me the first ~20 lines of the Plex media info XML of one affected movie.
Hi. Thanks again OttoKerner. As I was looking to get the information you asked for I noticed all the posters didn’t vanish. It looks like the movies i got from my dvds and the movies i got from recording from my monitor using a screen recorder and movies i downloaded from youtube still have posters.
So below is from a movie without a poster I got using a program called streamfab. After looking thru my movies, it seems like Plex has a problem getting posters from movies using streamfab.
For some reason the information isn’t showing up when i post it…looks like the information you requested contains html, maybe that is the reason?
It sounds to me like you are maybe prioritizing local media metadata. Youtube videos downloaded might contain the poster in the MP4 file, and - depending on the format - ripped DVDs might also include a poster data. Perhaps you have it set to prefer/only use local metadata, and the TMDB poster metadata is not used because a movie still poster is included already in the files metadata.
To post text that may be HTML, try using the forum’s Preformatted text option. The icon looks like
</>
<MediaContainer size="1" allowSync="1" identifier="com.plexapp.plugins.library" librarySectionID="30" librarySectionTitle="MOVIES & SHORTS" librarySectionUUID="7eeb7641-70f0-4eec-bbd4-4c6fcf64ca2e" mediaTagPrefix="/system/bundle/media/flags/" mediaTagVersion="1652176532">
<Video ratingKey="41483" key="/library/metadata/41483" guid="plex://movie/5d776a02ad5437001f76f0cb" studio="Full Moon Entertainment" type="movie" title="Beanstalk" librarySectionTitle="MOVIES & SHORTS" librarySectionID="30" librarySectionKey="/library/sections/30" contentRating="PG" summary="A young boy finds a crate of green beans. When they're planted, they grow a beanstalk to the clouds, where a castle of giants are habited." audienceRating="5.0" year="1994" tagline="Jack's on the way up... to adventure!" thumb="/library/metadata/41483/thumb/1652851061" art="/library/metadata/41483/art/1652851061" duration="4827697" originallyAvailableAt="1994-12-31" addedAt="1609737825" updatedAt="1652851061" audienceRatingImage="rottentomatoes://image.rating.spilled">
<Media id="120802" duration="4827697" bitrate="2521" width="1280" height="720" aspectRatio="1.78" audioChannels="2" audioCodec="aac" videoCodec="h264" videoResolution="720" container="mp4" videoFrameRate="24p" optimizedForStreaming="1" audioProfile="lc" has64bitOffsets="0" videoProfile="high">
<Part accessible="1" exists="1" id="149968" key="/library/parts/149968/1635875837/file.mp4" duration="4827697" file="G:\001 TUBI\Beanstalk (1994)\Beanstalk (1994).mp4" size="1525869614" audioProfile="lc" container="mp4" deepAnalysisVersion="6" has64bitOffsets="0" hasThumbnail="1" optimizedForStreaming="1" requiredBandwidths="2522,2522,2522,2522,2522,2522,2522,2522" videoProfile="high">
<Stream id="399016" streamType="1" default="1" codec="h264" index="1" bitrate="2396" bitDepth="8" chromaLocation="left" chromaSubsampling="4:2:0" codedHeight="720" codedWidth="1280" frameRate="23.976" hasScalingMatrix="0" height="720" level="40" profile="high" refFrames="4" requiredBandwidths="2396,2396,2396,2396,2396,2396,2396,2396" streamIdentifier="2" width="1280" displayTitle="720p (H.264)" extendedDisplayTitle="720p (H.264)"> </Stream>
<Stream id="399015" streamType="2" selected="1" default="1" codec="aac" index="0" channels="2" bitrate="126" language="English" languageTag="en" languageCode="eng" audioChannelLayout="stereo" profile="lc" requiredBandwidths="126,126,126,126,126,126,126,126" samplingRate="44100" streamIdentifier="1" displayTitle="English (AAC Stereo)" extendedDisplayTitle="English (AAC Stereo)"> </Stream>
<Stream id="399017" streamType="3" default="1" codec="mov_text" index="2" bitrate="0" requiredBandwidths="1,1,1,1,1,1,1,1" streamIdentifier="4" displayTitle="Unknown (MOV_TEXT)" extendedDisplayTitle="Unknown (MOV_TEXT)"> </Stream>
</Part>
</Media>
<Genre id="129" filter="genre=129" tag="Comedy"/>
<Genre id="275" filter="genre=275" tag="Family"/>
<Genre id="207662" filter="genre=207662" tag="Fantasy"/>
<Director id="490094" filter="director=490094" tag="Michael Davis"/>
<Writer id="490095" filter="writer=490095" tag="Michael Davis"/>
<Producer id="402701" filter="producer=402701" tag="Charles Band"/>
<Producer id="473278" filter="producer=473278" tag="Debra Dion"/>
<Country id="295293" filter="country=295293" tag="United States of America"/>
<Guid id="imdb://tt0109227"/>
<Guid id="tmdb://183940"/>
<Guid id="tvdb://47921"/>
Thanks. Looks like i was able to post the information using your “preformatted text” option suggestion. Let me know if you need any other examples. I will check the media metadata settings.
What’s the goal? I’m missing how this fits together.
This command will unlock the posters.
I don’t know but I’m guessing that once the posters are unlocked, refreshing the metadata should allow plex to put posters back up for all the movies?
The Plex agents won’t (typically) update a locked poster, that’s true. If a poster is unlocked, the agents are allowed to update that poster.
Choosing a poster manually will lock it, keeping your choice (when possible). You usually don’t want to immediately unlock all posters again, because that will allow the agents to overwrite them again.
What’s happening for you with Beanstalk (1994) right now?
The XML Info you shared looks great. It’s got the right guid="plex://movie/5d776a02ad5437001f76f0cb"
. On my system, Plex finds a poster for it automatically.
Beanstalk is just one of the many movies that doesn’t show a poster. It currently shows a screenshot of a scene from the movie instead, which for that movie is a close-up of an actor’s face.