Often phones record videos rotated, but then add some rotational metadata for media players to read to then rotate them for viewing.
Windows 7's Windows Media Player ignores rotational metadata.
Windows 10's windows media player obeys rotational metadata.
ffplay has an option -autorotate or -noautorotate https://ffmpeg.org/ffplay.html So with that you can see clearly the difference.
the command's ffmpeg and mediainfo (which can be installed on windows), can show rotational metadata.
If you do
ffmpeg -i blah.mp4 -acodec libmp3lame -vcodec libx264 blah2.mp4 that will re-encode the video rotating it obeying rotational metadata, and remove any rotational metadata from the output.
So any video that shows up rotated (by a media player that disregards rotational metadata), will be fixed. So that all media players will play it with the correct orientation.
It really is as simple as that..
Before I knew that I was using ffmpeg to first remove rotational metadata, if any existed, then re-encode the video rotated.. based on what the rotational metadata was.. It was a mess.
But then I found out that just the most simple standard ffmpeg command, mentioned, a regular re-encoding, does the same result as that, it encodes the video taking into account rotational metadata and removing rotational metadata from the output!
So you can copy all the videos off your "phone" into some directory, then make a directory within that called e.g. "a", then do
for %f in (*.mp4) do @echo ffmpeg -i -acodec libmp3lame -vcodec libx264 a\%f And then without that subdirectory called "a", ffmpeg will put all the mp4 files fixed for you!