INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: Improving Home Movie Support  (Read 4820 times)

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Improving Home Movie Support
« on: December 20, 2014, 12:43:21 pm »

There are a few things I'd love to see from MC in supporting common smartphone video formats properly.  Right now, I try to use MC to manage and play my home movies, but the vast majority of these are now shot on iPhone cameras (and a handful of other smartphones), and they... Aren't supported very well.  It is quite frustrating, to the point where I'm considering abandoning using MC for them at all.  That's too bad because I want to keep them "in the same place" as my other video files.  Almost all of these are about reading embedded tags in the movie formats, and responding appropriately for Home Movies.

Plus, it is close.  Here are a few of my most important issues:

Rotation

This is, by far, the most annoying part, and makes my iPhone videos essentially unusable in MC right now.  All of them, save a lucky few.  MC doesn't follow the Rotation tag in the video stream.  Videos recorded with rotation (say 90 or 180 degrees) play rotated incorrectly.  The same is true here for MPC-HC and VLC, but Quicktime Player and most of my video editing applications honor it properly.  Media Info can see the rotation tag, and so can ffmpeg.

For whatever reason (probably where the buttons are placed), nearly all of my videos are recorded upside down "natively".  My wife also insists upon (despite the fact that I explain all the time why not to do this) recording vertical videos, so those are all played on their sides.  It makes a trip-down-memory-lane video watching session a neck-injuring proposition.

High Framerate Support

The iPhone 5s and iPhone 6 now support high framerate captures.  I have a lot of these now since we've had at least one of these devices for well over a year.  There are quite a few Android devices that do too, though I don't have any samples of these.  MC (and VLC Player) don't play these well at all.  They skip and are stuttery.

I know this is solvable because MPC-HC plays them perfectly using LAV filters and splitter.  Also, of course, Quicktime Player and other "pro" apps handle them fine.

Creation Date and Other Camera Tags

I've mentioned this before, but it is really becoming a problem.

MC supports the embedded Creation Date in photos, but does not in videos.  My movies are stamped with an embedded Recorded Date tag, but MC uses the date they were imported onto the filesystem (whenever I transferred them from the device to the computer).

Likewise, Home Videos are essentially like a home photos collection, and all of the same fields you'd use for photos apply for them equally.  The Date Recorded is the most important, but the Camera make and model, which are stamped into my videos, would be handy too.

Samples:
http://glynor.com/files/test_files/vertical.mov
http://glynor.com/files/test_files/rotated-120fps.mov
http://glynor.com/files/test_files/rotated-240fps.mov
Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/

Hendrik

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10935
Re: Improving Home Movie Support
« Reply #1 on: December 21, 2014, 09:46:52 am »

Your 120 and 240 fps files play just perfectly in MC for me (both RO Std and RO HQ). Do you have hardware decoding activated? Its quite possible that your hardware decoder may have issues decoding them fast enough, so turning that off can help.
I suppose we could add a condition to not use HW decoding for > 60 fps files, as only the very latest hardware decoders would be fast enough for that.

Or if that doesnt help, maybe toggling Video Clock?

Regarding rotation .. rotation is hard. Its been on the list for a while, but I've not had the motivation to bump it to the top, since its a rather annoying topic.
Maybe I can finally give in and spend a day on that to bring the plumbing required for it to LAV Video, and add it to MC later.

For the date tag, that I should be able to fix rather easily, I hope.
For other metadata, I'll see what your videos actually contain, and what makes sense to map to MC.
Logged
~ nevcairiel
~ Author of LAV Filters

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72439
  • Where did I put my teeth?
Re: Improving Home Movie Support
« Reply #2 on: December 21, 2014, 09:52:28 am »

I tested this one and it played fine in RO Std (though upside down):

http://glynor.com/files/test_files/rotated-240fps.mov
Logged

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Re: Improving Home Movie Support
« Reply #3 on: December 21, 2014, 11:38:34 am »

Your 120 and 240 fps files play just perfectly in MC for me (both RO Std and RO HQ). Do you have hardware decoding activated? Its quite possible that your hardware decoder may have issues decoding them fast enough, so turning that off can help.
I suppose we could add a condition to not use HW decoding for > 60 fps files, as only the very latest hardware decoders would be fast enough for that.

Or if that doesnt help, maybe toggling Video Clock?

Thanks for the suggestions.  I've now tried (with my 120fps sample):

ROHQ + HW Accel + VideoClock (my standard): Jumpy
ROHQ + Video Clock: Jumpy
ROHQ + HW Accel: Jumpy
ROHQ Only: Jumpy

ROST + HW Accel + VideoClock: Fine
ROST + VideoClock: Fine
ROST + HW Accel: Fine
ROST Only: Fine

For the record, the only mod I use in madVR is to disable Automatic Fullscreen Exclusive mode (I can't take the blinking).  I tried it with it turned back on, though, and there was no change.

madVR's stats show a massive amount of dropped frames.  Here's a screenshot of playback (paused) part-way through the 240fps one:



So, I also tested with the 240fps video:

ROHQ + HW Accel + VideoClock (my standard): Jumpy
ROHQ + Video Clock: Jumpy
ROHQ + HW Accel: Jumpy
ROHQ Only: Jumpy

ROST + HW Accel + VideoClock: Playback is smooth, but is in slow-motion (playback continues past the end of the 0:09 clip)
ROST + VideoClock: Fine
ROST + HW Accel: Slow motion
ROST Only: Fine

My video card is now a bit on the old side.  It's a AMD 6870.  Though I'm running on an Ivy 3770 and have 16GB of RAM.  I have no problems with ROHQ with any other videos, though I suppose my machine (based on Hendrik's results) could be just too slow.  Or, perhaps we're looking at something AMD specific here?
Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/

Hendrik

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10935
Re: Improving Home Movie Support
« Reply #4 on: December 21, 2014, 11:42:34 am »

Your screen is 60Hz, so massive amounts of dropped frames are to be expected, as it has to drop quite a bunch to show 120/240 fps on a 60 Hz screen.
Its possible that madVR just doesn't deal properly with too high framerates, as thats a rather unusual case to be having anyway. I don't see any obvious problems here, but if ROSTD works, there isn't much we can do in MC to fix it, since all we do is swap the renderer out for HQ.

Are all the queues full during playback? (pause doesn't reflect that situation properly)
Logged
~ nevcairiel
~ Author of LAV Filters

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Re: Improving Home Movie Support
« Reply #5 on: December 21, 2014, 12:29:07 pm »

Your screen is 60Hz, so massive amounts of dropped frames are to be expected, as it has to drop quite a bunch to show 120/240 fps on a 60 Hz screen.

Right.  I know that, but it feels like actual playback is around 5fps.  It isn't just a little jumpy.  It plays like a slideshow.

Are all the queues full during playback? (pause doesn't reflect that situation properly)

120fps:



The max and average render times are way out of sync, suggesting that certain frames (for whatever reason) are causing trouble.  It almost feels like it is only displaying those "long frames".

240fps:

Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Re: Improving Home Movie Support
« Reply #6 on: December 21, 2014, 12:38:47 pm »

In testing this, I've also had a few instances where MC's playback gets stuck "on" when in ROHQ.  I hit stop, and the video stops displaying, but the audio keeps going, and the madvr tray icon is still visible.

Once this happens, MC won't play anything else and gives the "incorrect settings suggestion" dialog.  I have to quit out of it entirely, and manually close the madvr tray icon, to get it unstuck.

Also, worth mentioning... I'm running Catalyst 14.9.  AMD did just fairly recently release a new version called Catalyst Omega (14.12), which supposedly fixes all kinds of long-standing bugs.  I'm downloading it now, to see if it makes any difference.
Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72439
  • Where did I put my teeth?
Re: Improving Home Movie Support
« Reply #7 on: December 21, 2014, 12:40:30 pm »

You're not using Quicktime to play the files, are you?
Logged

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Re: Improving Home Movie Support
« Reply #8 on: December 21, 2014, 12:42:45 pm »

You're not using Quicktime to play the files, are you?

No.  Everything is set to automatic.
Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Re: Improving Home Movie Support
« Reply #9 on: December 21, 2014, 12:56:05 pm »

Also, worth mentioning... I'm running Catalyst 14.9.  AMD did just fairly recently release a new version called Catalyst Omega (14.12), which supposedly fixes all kinds of long-standing bugs.  I'm downloading it now, to see if it makes any difference.

No change in ROHQ with the latest GPU driver, for the record.
Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/

Hendrik

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10935
Re: Improving Home Movie Support
« Reply #10 on: December 21, 2014, 04:25:59 pm »

Might be worth asking in the madVR thread over at Doom9. I faintly remember some mentions of high-fps content before, but I don't recall exactly what it was about. The odd thing is that it plays just fine on my NVIDIA GPU (a 750Ti in this case, which isn't all that super powerful).

I'll look into the other things later. The extra metadata should be easy, if I can find clear 1:1 mappings of fields, and rotate is rotate. Its just going to be annoying, but eventually we should get it done.
Logged
~ nevcairiel
~ Author of LAV Filters

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Re: Improving Home Movie Support
« Reply #11 on: December 21, 2014, 04:46:17 pm »

I'll look into the other things later. The extra metadata should be easy, if I can find clear 1:1 mappings of fields, and rotate is rotate. Its just going to be annoying, but eventually we should get it done.

Thanks.  Those two things are, by far, the more important issues.

I don't have a huge quantity of the high fps files.  But, seriously, every single one of my videos is upside-down or sideways.  I think it must be where the volume buttons are on the device.  I generally take pictures with my phone with the volume buttons "up" (used as a trigger).  This way must be "upside down" though, as I'd say it is something like 80-90% of my videos.
Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/

fitbrit

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 4887
Re: Improving Home Movie Support
« Reply #12 on: December 21, 2014, 06:07:43 pm »

Thanks.  Those two things are, by far, the more important issues.

I don't have a huge quantity of the high fps files.  But, seriously, every single one of my videos is upside-down or sideways.  I think it must be where the volume buttons are on the device.  I generally take pictures with my phone with the volume buttons "up" (used as a trigger).  This way must be "upside down" though, as I'd say it is something like 80-90% of my videos.

Yes.
Great feature: Being able to use an iPhones hard volume buttons to snap pictures and start/stop video.
Stupid ergonomics: Having those buttons on top, like conventional "shutter switches" results in upside down images.

Thank you for championing this cause, glynor. And thanks, Hendrik, for looking into it.
I hope the rotate function is easy to implement. Even previewing affected videos in Android's gmail app results in the correct rotation being honoured.
Logged

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Re: Improving Home Movie Support
« Reply #13 on: December 21, 2014, 06:27:11 pm »

I'll throw a report on the madvr thread later.  I'd imagine, from your results, it is an AMD vs Nvidia thing (perhaps my specific card or generation of card).  I'm reasonably sure madshi is more of an Nvidia guy.

Honestly, I'm strongly considering getting an Nvidia card when the ~$250 Maxwell (GeForce GTX 960) comes out.  But, since I haven't been really able to game at all since my daughter was born, it is hard to justify the price if what I have is working fine (perhaps here it isn't, though).
Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/

Hendrik

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10935
Re: Improving Home Movie Support
« Reply #14 on: January 16, 2015, 11:17:32 am »

I added a bit of metadata parsing, it should now fill the Date field as well as Latitude/Longitude/Altitude if present in the file.
The camera tags are a bit generic, but I should probably get those into our mp4/mov parser somehow...
Logged
~ nevcairiel
~ Author of LAV Filters

CountryBumkin

  • Citizen of the Universe
  • *****
  • Posts: 3352
Re: Improving Home Movie Support
« Reply #15 on: January 16, 2015, 11:29:09 am »

and rotate is rotate. Its just going to be annoying, but eventually we should get it done.

Maybe it would be easier for you to just teach Mrs. glynor how to hold the camera  ;D
Logged

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Re: Improving Home Movie Support
« Reply #16 on: January 16, 2015, 04:26:57 pm »

Maybe it would be easier for you to just teach Mrs. glynor how to hold the camera  ;D

I've been trying for years.  She continues to shoot the vast majority of the videos she takes in portrait orientation.  Sigh.

But, the problem is worse than that anyway.  It is also that the way the camera sensor is oriented, when you hold the phone in the "natural position" (to me anyway) with the volume buttons up top and the lens at the bottom, the photos and videos are natively upside down.

This is "natural" for two reasons:
* The volume button is a camera shutter trigger, and that is always, 100% of the time, how I trigger it.
* The lens at the bottom helps to prevent you from accidentally obscuring it with overlapping fingers on top.

But, for whatever reason (perhaps technical, perhaps just inertia) the iPhone's camera sensor is physically oriented such that this positioning is upside down natively.  Now, to them, this is a non-issue.  The photos are stamped with the accelerometer data and orient themselves properly in most photo editing and management applications (their own, and basically all of the 3rd party ones I've tried).  MC just doesn't honor this flag.
Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/
Pages: [1]   Go Up