Page 1 of 1

Image size problem

PostPosted: Tue Dec 18, 2018 8:17 pm
by oofers
Hi forum members and potential problem solvers,

I thought I'd post in this sub-forum first. If need be, I can go to the main one.

I'm using Serviio on Windows 10 Home with an LG SJ8500.

I have no problems serving video.

My library of photos consists of images taken by either my wife's iphone, or my Samsung Galaxy S5. The iphone pics are at 3264 x 2488. The Galaxy pics are at 5312 x 2988. Being 4K, my LG TV has a resolution of 3840 x 2160.

What's unusual is the iphone jpegs will always display as large as possible (scaled, since the height of those images exceeds the native resolution of the LG), even when the photo was taken in portrait mode. The Samsung photos always display at 640 x 360, and the where the image size is usually displayed in MB, it just says "NaNundefined", which makes me think just the thumbnail is being served, maybe because both the height and width of the Samsung photos exceed the native resolution of the LG.

The above behavior exists if I use the "Generic DLNA profile" or the "LG TV / player" one.

To troubleshoot, in Photoshop, I took one of the Samsung images and shrunk it to 3000 x 1688, just to test that if the resolution was below the max of the LG, would it display properly? It did indeed display at 3000 x 1688 through Serviio. Then, I took the same original picture and just resaved it in Photoshop, creating what appeared to be a duplicate image. My theory was that maybe the Samsung was creating some sort of tag that was preventing Serviio from dealing with it being larger than the LG can natively handle. But this second test image still displayed in 640 x 360.

Here's where things get strange --

I found the thread here where user falk suggests creating a custom profile with
  Code:
<?xml version="1.0" encoding="UTF-8"?>
<Profiles version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.serviio.org/xsd/profiles/v/1.9.1/Profiles.xsd">
   <Profile id="lg4ktv" name="LG 4k TV" extendsProfileId="1">
     <ThumbnailsResolution>HD</ThumbnailsResolution>
     <AutomaticImageRotation>true</AutomaticImageRotation>
     <LimitImageResolution>false</LimitImageResolution>
   </Profile>
</Profiles>


I thought my problems would be solved, but it only made it more perplexing.

When using the above profile, the pictures dumped straight from the Samsung still are thumbnails (640 x 240, NaNundefined), however the test image that I created in Photoshop, where I simply open the image and resaved, will now display fullscreen! It's MB size and correct dimensions are given (5312 x 2988), but naturally it is being shrunk to fit the LG's native resolution. But the point is that now Serviio is finally treating my Samsung images like my iphone image -- scaling the actual jpeg to fit, and not just serving the thumbnail.

So what's going on here?

I do have a solution -- I must use the custom profile AND create a Photoshop batch to open and resave every single Samsung image, but I was hoping someone here can give me more insight into the issue. Obviously, resaving in Photoshop *IS* doing something behind-the-scenes at the tag level or whatever.

Thanks in advance to anyone that can help and thanks to user falk for sharing the code for the custom profile that assisted in my initial troubleshooting.

Re: Image size problem

PostPosted: Tue Dec 18, 2018 9:36 pm
by DenyAll
I don't know, but looking within the Generic Profile (which all others inherit from) is the code:

  Code:
      <AutomaticImageRotation>false</AutomaticImageRotation>
      <AllowedImageResolutions large="4096x4096" medium="1024x768" small="640x480" />
      <LimitImageResolution>true</LimitImageResolution>
So, I'm inferring from this that image resolution is limited by default, it seems and for some reason your native Samsung photo's are being limited to the "small" screen resolution (this is what I'm not sure about - how is "large", "medium" or "small" decided. I note that there are three mime types defined: JPEG_SM, JPEG_MED, JPEG_LRG but how one is selected over the other??? - maybe some tag in the photo?).

Setting the LimitImageResolution to False tells Serviio to ignore the allowed resolutions and display it in full resolution (after that its up to the TV to scale up/down or display bordered).

Documentation on this is scarce so its all inference - zip will need to fill in the detail if more is needed.

ps You don't need
  Code:
<Profiles version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.serviio.org/xsd/profiles/v/1.9.1/Profiles.xsd">
in your custom profile in user-profiles.xml. This will save the need for you to update the Schema for future releases. You can simply start the user-profiles.xml with:
  Code:
<Profiles version="1.0">

Re: Image size problem

PostPosted: Wed Dec 19, 2018 6:18 pm
by oofers
Thanks for the prompt reply.
DenyAll wrote:I don't know, but looking within the Generic Profile (which all others inherit from) is the code:
  Code:
      <AutomaticImageRotation>false</AutomaticImageRotation>
      <AllowedImageResolutions large="4096x4096" medium="1024x768" small="640x480" />
      <LimitImageResolution>true</LimitImageResolution>
So, I'm inferring from this that image resolution is limited by default, it seems and for some reason your native Samsung photo's are being limited to the "small" screen resolution (this is what I'm not sure about - how is "large", "medium" or "small" decided. I note that there are three mime types defined: JPEG_SM, JPEG_MED, JPEG_LRG but how one is selected over the other??? - maybe some tag in the photo?).

Thanks for pointing this out. I'm glad you concur that something may be happening with tags. I'm too busy at the moment, but my next troubleshooting test will be do compare the metadata for a native Samsung-created image with the metadata of the same image after simply opening and resaving in Photoshop. If your theory proves correct, perhaps I'll see a difference involving the mime types you describe.

DenyAll wrote:Setting the LimitImageResolution to False tells Serviio to ignore the allowed resolutions and display it in full resolution (after that its up to the TV to scale up/down or display bordered).


Ok, thanks. So yes, the code I use for my custom template sets this to false. But with this switched to false, it is still confusing that the images NOT resaved in Photoshop are still displayed at the "small" resolution, right?

DenyAll wrote:Documentation on this is scarce so its all inference - zip will need to fill in the detail if more is needed.

Excuse my ignorance. What is "zip"?
DenyAll wrote:ps You don't need
  Code:
<Profiles version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.serviio.org/xsd/profiles/v/1.9.1/Profiles.xsd">
in your custom profile in user-profiles.xml. This will save the need for you to update the Schema for future releases. You can simply start the user-profiles.xml with:
  Code:
<Profiles version="1.0">

Also good to know. Thanks. I post again if I learn anything after scouring over the metadata.

Re: Image size problem

PostPosted: Wed Dec 19, 2018 7:21 pm
by atc98092
Zip is the forum administrator, and the Serviio developer. He's the only one that knows all the internal Serviio functionality. :)

Re: Image size problem

PostPosted: Sun May 26, 2019 4:43 pm
by DJLuxman
Hello.
I'm new to Serviio (licenced 2.0 PRO version). I've searched the forum to find the answer I need, but I haven't found. I've got the alike problem with displaying the images on my LG 60UJ6517 TV. It looks like the images with resolution above 13 MP are turned into the thumbnails aprox. 600 x 400 with description NaNundefined. And the images below the 13 MP are properly identified and displayed.
Is this a limitation of Serviio or TV? (I doubt). Is there a method to configure Serviio displaying or do I have to downsize the images especially for the Serviio displaying?

Thank you in advance for your help :)