I encountered a problem with rotated graphics. Unlike on all other platforms that we support the image correctly rotates to portrait, but on Roku it remains landscape. From what I noticed, this is caused by the image metadata in which the width is actually greater than the height ("image_size: 3088x2316"), while the orientation parameter is omitted, which states that the image has been rotated by 90 degrees ("orientation: Rotate 90 CW").
To solve this issue, I first tried to save the graphics to a file on the device and then read the metadata using roimageMetadata to rotate the image yourself. Unfortunately, I was not able to save our graphics to a file, which may be due to the characteristics of our backend. But that is not the topic of this thread. Naturally, the simplest solution would be to change or compress the image, but this is a rather short-lived solution.
Image metadata:
exif_byte_order: Big-endian (Motorola, MM)
orientation: Rotate 90 CW
color_space: Uncalibrated
current_iptc_digest: d41d8cd98f00b204e9800998ecf8427e
iptc_digest: d41d8cd98f00b204e9800998ecf8427e
profile_cmm_type: Apple Computer Inc.
profile_class: Display Device Profile
profile_connection_space: XYZ
profile_date_time: 2022:01:01 00:00:00
profile_file_signature: acsp
primary_platform: Apple Computer Inc.
cmm_flags: Not Embedded, Independent
device_manufacturer: Apple Computer Inc.
device_attributes: Reflective, Glossy, Positive, Color
rendering_intent: Perceptual
connection_space_illuminant: 0.9642 1 0.82491
profile_creator: Apple Computer Inc.
profile_id: ecfda38e388547c36db4bd4f7ada182f
profile_description: Display P3
profile_copyright: Copyright Apple Inc., 2022
media_white_point: 0.96419 1 0.82489
red_matrix_column: 0.51512 0.2412 -0.00105
green_matrix_column: 0.29198 0.69225 0.04189
blue_matrix_column: 0.1571 0.06657 0.78407
red_trc: (Binary data 32 bytes)
chromatic_adaptation: 1.04788 0.02292 -0.0502 0.02959 0.99048 -0.01706 -0.00923 0.01508 0.75168
blue_trc: (Binary data 32 bytes)
green_trc: (Binary data 32 bytes)
encoding_process: Baseline DCT, Huffman coding
y_cb_cr_sub_sampling: YCbCr4:2:0 (2 2)