The iPhone, Samsung, and a few others will always record videos in the horizontal orientation. If the video needs rotation, the iPhone video instructs the video player to rotate the video back to normal during playback.
Unfortunately, modern video formats require hardware acceleration to play videos and that hardware, mainly on TVs, is incapable of honoring this rotation. Since the hardware fails to rotate the video correctly, the horizontal video is played incorrectly because the rotation is wrong!
In my experience, the Google TV with Chromecast dongle correctly plays all iPhone videos as of mid 2023. The Amazon Fire TV Sticks and Sony Bravia TVs will not rotate these videos when necessary. Possibly this will change in the future, but right now those devices are incapable of playing iPhone videos that require rotation using hardware acceleration. You must turn off hardware acceleration in my app to correctly rotate the videos.
Unfortunately, turning off hardware acceleration may mean the video becomes unplayable as it will play too slowly. Modern HEVC videos require hardware acceleration to play.
What can you do?
- If the videos are 1080p or less, try turning off hardware acceleration to bypass the device’s decoder. You can do this by going to the app settings > General > and turn off “Hardware Accelerate Videos”. While this will work for 4K videos too, those typically require HEVC / h.265 hardware acceleration and turning off acceleration will result in choppy playback.
- You can upload the files to a service that automatically transcodes videos into widely compatible formats, such as Flickr or Google Photos. Those services will correctly rotate the video as part of their conversion process.
- You can manually re-encode the videos using Handbrake to remove the rotation requirement. This will increase compatibility and usually re-encoding results in a more efficient encoding that will be smaller and help with streaming. It is important to realize that many cloud drive services are not video streaming services and playing raw 4K videos from them can use up to 8 MB/s. This is a high requirement for all the hardware between you and the service.