New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

video overlay from camera + audio #1413

Open
pevasquez opened this Issue Feb 11, 2014 · 3 comments

Comments

Projects
None yet
3 participants
@pevasquez

pevasquez commented Feb 11, 2014

Hey Brad.

We've been using GPUImage a lot lately, mainly for editing camera input on the fly. Everything seems to be working pretty fine, but seems like we've hit these timing issues you mentioned in #1246 when blending input with another video. For example, shooting a 22s video will leave us with videos of ridiculous lengths, like 16hs, usually with no audio. But shooting shorter videos will output video and audio, even though length is still inappropriate.
I would be very glad to help on such issues, as they would be pretty core for us to have. Do you have any idea of what could be going on, just so we could know where to look?

Thanks for such a great framework :)

@BradLarson

This comment has been minimized.

Show comment
Hide comment
@BradLarson

BradLarson Feb 11, 2014

Owner

The core problems come from the GPUImageTwoInputFilter, which the blends are subclassed from. Both movie sources provide their own timestamps for each frame that's passed in, but I'm not sure that I'm keeping these timestamps straight or in sync. Timestamps are passed down the filter chain and then used for the timestamps on recording in the movie writer, but keeping them in a consistent order and based on some synchronized time value isn't managed well.

This is what triggers all the bizarre behavior people see around blending two movies together (something I never designed things for, and now need to find a way to fix). It's a tricky problem, and I don't spend a lot of time working with movie files, so it's not one of the areas I've put a lot of thought into.

Owner

BradLarson commented Feb 11, 2014

The core problems come from the GPUImageTwoInputFilter, which the blends are subclassed from. Both movie sources provide their own timestamps for each frame that's passed in, but I'm not sure that I'm keeping these timestamps straight or in sync. Timestamps are passed down the filter chain and then used for the timestamps on recording in the movie writer, but keeping them in a consistent order and based on some synchronized time value isn't managed well.

This is what triggers all the bizarre behavior people see around blending two movies together (something I never designed things for, and now need to find a way to fix). It's a tricky problem, and I don't spend a lot of time working with movie files, so it's not one of the areas I've put a lot of thought into.

@pevasquez

This comment has been minimized.

Show comment
Hide comment
@pevasquez

pevasquez Feb 13, 2014

OK. Good. I'll get on this as soon as I get some time to.
Thanks!

pevasquez commented Feb 13, 2014

OK. Good. I'll get on this as soon as I get some time to.
Thanks!

@tuo

This comment has been minimized.

Show comment
Hide comment
@tuo

tuo Jan 20, 2015

hi @pevasquez, I think this one might help you on this: GPUImage Video Merging: Timestamp Synchronization

tuo commented Jan 20, 2015

hi @pevasquez, I think this one might help you on this: GPUImage Video Merging: Timestamp Synchronization

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment