text:
What lenses are preferred for DSLR video?
I do plenty of Macro and product photography (love the Tamron 60mm Macro). I have no idea what videographers who use DSLR like for lenses. Any advice and broadest usage appreciated. Assume camera in the 15 MPixel range plus or minus a few MPixels.

Properties that are desired in these lenses are quiet operation, image stabilization, zoom construction that usually cover wide to short tele focal lenght and that have a constant aperture across that range. A perfocal design is good when using a zoom. These are a couple of general characteristics but they may be different for special applications.
Quiet operation helps if you want to avoid focusing sounds appearing in your video. If you're using external microphones this is less of a problem.
Image stabilization makes everything (from static vieography to panning= appear a lot smoother.
To have a zoom lens gives a lot of nice possibilities and constant aperture is an important feature since the exposure won't change when zooming. A parfocal lens is a lens that maintains its focus when changing focal lenght (zooming) and is of course very useful. Also a zoom range from wide to short tele is usually enough and you probably don't want to go out of that range during video production unless you're looking to produce nature films and alike.
Look for for lenses with this kind of properties. Being a Canon user I'm most familiar with them and can recommend Canon EF 24-105/4,0 L IS USM having most of these features but if you're using another brand I can't help ypu more than this due to lack of experience with other brands.

I am using a Canon 50D converted to generate RAW video, even HDR video, so good Canon lenses for video is what I need.

If you have a larger budget, the 24-70 f/2.8 II and 70-200 f/2.8 IS II lenses work fantastically as well and aren't too expensive if video terms (around $2k to $2.5k a piece).  (These are the ones I use.)  The best options for Canon are the EOS Cinema lenses, but they are outrageously expensive ($20k for a prime, $55k for a zoom).  They are the best Canon lenses for video, but if you are using a 50D, then they are complete overkill for your needs.


text:
Adobe CC Post-Production Workflow (Story, Prelude etc.)
I've never understood the post-production workflow Adobe has designed.
I understand the steps from the editing stage onwards (assume this is a large enough production to require all steps):

Premiere: Ingest footage into bins, assistant edit, possible assembly edit
Premiere: Edit to picture lock-off
After Effects: VFX/Grading

Alternatively, use SpeedGrade for grading

Audition: Sound Mix
Premiere: Bring final grade, sound mix together
Media Encoder: Render project

However, I don't understand the workflow of Adobe Story, Prelude, and how they enhance the established workflow.

Update 1:
I should mention, I have done some research previously, but Adobe's site is delightfully dense and explanatory.
From Adobe's site, Prelude is described as:

Metadata, megafast
Work faster with smarter video ingest and logging.

How does this help the workflow, what does it add to the process?

Under our rules for asking questions a constructive question that "inspires answers that explain “why” and “how”" is acceptable.

Your workflow is a little off from how it is designed by Adobe.
Step 1: Adobe Story: You build your script and can break it into shots that you need to capture before you even start shooting.  This can then work as the blueprint to plan out shooting of the project.
Step 2: Adobe Prelude: I believe you can preconfigure a shot list that needs to be captured with meta data about the scenes.  Prelude can either be used for live capture or can be used to Ingest and organize footage on site during shooting.  Think of it a bit like Lightroom for Video.  It's intended to organize the shots so that they can more effectively be reviewed and pulled up during shooting and post production.
Step 3: Premiere: Rough edit, start laying out clips and getting the flow of the piece together.
Step 4/5: After Effects: any touch up or effects work that needs to be done on individual clips can be processed through After Effects and sent back to Premiere.  This could also be done before rough editing, but is probably easier after/during.  This may also include color grading or SpeedGrade may be used.
Step 4/5: Audition: basically the same thing as After Effects, but on the sound track/audio side on a clip level.
Step 6: Premiere: Once assets are finalized, final edit can occur to produce the finished timings for the video.
Step 7/8: Audition: Mastering, finish the audio and sound-tracking for the entire finished video to make sure it flows well from one clip to another.
Step 7/8: After Effects or Speed Grade: Perform final color grading to ensure the entire film flows well together.
Step 9: Media Encoder or Encore: Prepare final output format, either encoding for the web or building a DVD and/or Blueray disk for release.

Hmm, I don't like the concept of going to grading, sound design or VFX before having final cut, that is the exact final timings for shots etc. But then, I don't have buckets of money for do-overs when a scene or shot's length changes.

@nchpmn - I'm not talking anything final on those steps.  Just basic stuff.  Getting it close enough that you can see how it flows.  It's just a rough pass.  You can also certainly make alterations to the order of things as fits your workflow, the big thing was just trying to show how Prelude and Story fit and pointing out that After Effects is actually the stronger grading tool for doing the overall process.

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/

sort: votes


text:
Converting container or transcode movies to iPhone from command line (os x)
Over the years I collected many movies in different container formats (avi, mp4, mkv) and encoded with different codecs too.
Now want convert containers (or transcode them if absolutely necessary) to "iPhone compatible" movies.
After spending long time on google, still didn't know exact answers to the next questions - so, please confirm them or please give the right answers

iPhone can play only mp4 container format - so the mp4 is the only usable container for iPhone movies
In what codecs can be the streams? (video/audio and subtitles)
Is possible embedd "SOFT" subtitles to mp4 container? (what i read - yes, but here is some pitfalls) - mean soft subtitles, so not "burned them into the video stream".
What is the right logic to convert/transcode movies from different formats to wanted iPhone compatible format? My idea is roughly:

fetch information from the current movie - e.g. from avi container
if the used codecs and the used video resolution is compatible with iPhone (like h264), only change the container format, otherwise
transcode the movie, with:
if the current movie has smaller resolution, don't change - only transcode
if the current movie has higher resolution, change it's resolution proportionally to match the iPhone needs

All above want do from command line on Mac OS X - so, with ffmpeg or mencoder and like. (please, don't suggest me batch conversions with not-command line app)
The questions are mainly about the whole workflow, what are the most common pitfalls, recommendations and etc.
Would be happy with some external links to some good articles about the above.
This is my 1st question here, and I hope it is OK with right-question-type on this site:

post-production techniques
asset management, media, and file formats
installation, configuration, and operation of hardware or software
related to these topics

Which iPhone versions are you wanting to support?

@LordNeckbeard yeah, forgot specify, mainly because most of my current movies is lower than 720p. But ok - iPhone4 and highers.

@jm666 - I noticed your question hasn't gotten any responses in a few days.  One thing that I do notice about it is that it seems to be asking multiple questions at the same time.  You might be able to break it out in to multiple questions that are more easily answered.  For example, "What video formats should I use when targeting the iPhone?" could be its own free standing question.  Similarly, the subtitle question and transcoding questions could each be done separately.

This would do two things.  It would make the questions more broadly beneficial, since people looking for only a part of what you are doing would find an answer.  It would also make it easier to answer since someone could answer only the parts they know without feeling like they aren't really answering the question.

@AJHenderson - yeah, it is a complex problem. Asked in hope than someone already faced the problem: "converting his movie collection suitable to iPhone". Seems - not much peoples doind such silly thing.. ;) If didn't get any answer, will try break the question to smaller parts and will delete this one. Thank you for suggestion.

You can use ffprobe (which comes with ffmpeg) to give you info about your movie files from the command line.
You may require some shell-fu to convert the output of ffprobe into something you can use though. I've done this in the past; basically I pipe the output of ffprobe to sed or awk to grab the bits of info I need, then use this to drive the parameters of ffmpeg.

FFmpeg Wiki: FFprobe Tips has a few examples.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
Building smarter elements for Final Cut Pro X with Motion 5
Help me not look like an idiot who's schizophrenic about the date.
I am producing a series of videos recorded at a monthly event. The client webcasts the event live and wants to raise awareness of this fact. They also want to document the date on which the footage was recorded. To this end, they have requested a that both the build in and the build out include the date in the copy. (Feel free to correct my terminology. I just mean a "slide" at the beginning and at the end.) Here's an example:

Originally live-streamed... on February 1, 2014.

I created the builds in Motion and set the text field as editable in FCP X and made sure to publish it. I have everything technical working, but I'm afraid that I'm going to forget to change the date on the build out. Is there a way to just input the date once in Final Cut Pro X and have it populate to 2 different Motion-made titles?
Ideally, the date would be like a variable so that it could sit in line. My fantasy would be something like this:

Originally live-streamed... on $DATE.

with only one input for $DATE. I would also accept

$DATE

so long as it populated into 2 different Motion-made titles. I could create one text element for the date field and another for the rest of the copy.

My current "workaround" is to not use placeholder text for the date in the build-out, i.e., "Originally live-streamed to members." instead of "Originally live-streamed to members on MMMMMMM DD, YYYY." That way, if I forget, it's innocuously incomplete, which is better than incorrect, better than living placeholder text, and better than contradicting the . I make the text in the element editable in Final Cut Pro X. When I remember, I add the date to the end. So far I'm 12 for 12 on remembering.


text:
Achieving the Elf "Angel" effect
I'm looking to achieve something similar to this effect in a short film for 2 shots :

This is from the new Hobbit movie, with of course a massive budget.  To me it looks mostly a digital effect they used.
I'm looking for ideas on how i could achieve something close to this - I don't expect to achieve something so polished as Peter Jackson et al.  The story uses the "angel" motif as a representation of personal power and self confidence, and this would be a way to demonstrate that visually, as the character feels it, we see it.
I'm not sure if a strong light source behind my actor, and some form of filter (i know little about filters) on the lens would work on it's own?
Or if it's better achieved in post-processing - perhaps in a grading step? If so, ideas on software i should investigate would be much appreciated.

Thankyou all for the feedback and ideas.  The concept ended up getting reduced to not have the angel light effect, mainly because the story was reduced so it no longer made sense to have it twice (she would perceive the effect on others, then later see it on herself).  In the end we're grading it so the majority of the film is graded a sort of cold colour, but becomes slightly warmer by the end -  a more subtle approach in the end.  I still like the original concept, and hopefully find another reason to use it one day, so hopefully all the fine suggestions do lead to something! :D

You certainly could get a long way in camera. You might want to add a diffusion filter to your lens - or a stocking if you can't afford one, certainly a strong backlight, and by the looks of it maybe a touch of diffused fog. Then in post grade it up until the skin tone is starting to get crushed to white.

I would add to that that there is probably a fairly strong spotlight to the side aimed at the face/side of the actress as well.  Otherwise the face would be much darker if it was all just backlight.  In this case the backlight is key and the side is fill and both are over-exposed intentionally.

I agree with the answer and the comment above, and I have a couple things to add.  The first is obvious: set your camera's light meter manually, so it doesn't just compensate for all the light. Second: you may want to try a "star filter" instead of a diffusion filter.

This is great. Love the stocking idea.  Genius.
I'm just beginning to try and get my head around grading - Are you able to advise on grading software at all?  I've done some frame-by-frame adjustment in photoshop before, but it was pretty naff.

That stocking idea is as old as the hills BTW. You get different types of glow with different colour stockings. They also used to use a thin smear of vaseline on a filter in front of the lens.

As for grading software there's a lot of possibilities. Grading in Potatoshop is one option, but as far as workflow goes an application that was designed for it will be easier to use. Adobe Speedgrade is the Adobe offering, and there's plenty of others: Blackmagic DaVinci Resolve or Apple Color two popular (as in I've used them). Alternatively there are grading plugins for NLEs Like Baselight, Synthetic Aperture Color Finesse for After Effects, or Colorista from Red Giant which has a free version. http://www.redgiant.com/news/featured/coloristafreelutbuddy/

I like @stib's suggestions, and I have another option. (This will only work if the actor/actress doesn't move across frame much, and the camera isn't moving.) Shoot the actor/actress in front of a green screen. Take a still of the background, and doctor it up in Photoshop or some similar program so there is a "glow" around that part of the image. When you composite the shot, if the lighting is similar enough it could look very cool.
The effect would look even better if you dissolved between different backgrounds that were pretty similar. The glow would look more alive.  In fact, the glow could "appear" if you dissolve or iris out from an undoctored background photo to your background photo.

Even if they move around, you could probably use layer blending options to create a glow around/over the actor.

That might work for one shot, that is still and could give me a lot of control - nice.  The longer, final shot will involve a camera dolly away from the subject, which introduces perspective issues that might not work. Still, I love it for the static shots!

@Spiffeah I just sat here imagining options for your dolly shot, and I haven't been able to come up with anything good (other than Photoshopping each frame of the shot). If I do come up with another suggestion, I'll be sure to add it.

If you use green screen you can track the camera in 3D if you are using After Effects or similar compositing software. But doing that will mean you have to match your background. If it's a distant or flat background that won't be a problem.


text:
Cannot export video file in correct resolution
I am following this tutorial on how to cut out audio from my video (I actually wanted to cut out just part of audio but i know how to do that so its not a problem)
@ 2:55 the video shows a window which does not appear when i drag and drop my video in. :(
however when i right click on my video bar and click properties it still says the video is 480x800
However when i try to export the video the resolution of the original video appears as 720x480
In addition when i go to sequence>sequence settings the video frame is grayed out at 720 and 480 so i cannot change the settings.
When i try to export the video in the 480x800 resolution it just appears as a small video in the middle with whole bunch of black space around it.
I just want my exported video to be the same as the original video but i cant figure out how to do that.
Im using adobe premiere-cs6 but i need 50 more reputation to create that tag.

How are you exporting from Premiere? Is it through File > Export > Media (which is the correct way to export). This sort of clarity in your question will help get more answers.

yes that is exactly how im doing it

From your question, you want to remove the audio from a video clip, using Premiere.
Start a new sequence, and drop your clip into it. There should be audio and video streams in the timeline.
Using File > Export > Media, there is a very simple way to remove the audio.

Using these toggles here, you can disable audio from being included in the export.
However, you will also want to make sure that your export settings are the same as the video clip.

As for setting a codec, I suggest either:

Format: QuickTime / Codec: Animation - if you need a high-quality, large file size video for further editing.
Format: QuickTime / Codec: H.264 - if you need a file ready for playback, distribution, or internet upload.

did you read my question? I already know how to remove audio from a video (or part of audio in this case) my problem is that when i export the video I cannot export it in the correct resolution. (480 x 800) No matter what codec i use it comes out wrong

@Xitcod13 Under "basic video settings", you can set your desired resolution, as stated in my answer. Did this work for you? Are you able to post screenshots of your Export Settings window, please? It will help us narrow down your problem.


text:
How should we back-up our media files for our production studio
We've had a video production studio for about 6 months, and we're revisiting how we should back-up/archive our client files and in general what our workflow should be with about a 8K limit on hardware.  We've sketched out a couple options for what hardware and procedures we're using.
Here is one:

Transfer RAW footage (we're shooting DSLR) to portable bus
powered HD
Import RAW footage into FCPX using Ext. Drive for
Scratch Disk (here we have RAW footage and FCPX project files
separated) Step
Delete SD Cards

EDIT Footage

Move FCP Projects files to RAID & Delete bus powered HD that had raw footage
Step

Delete Scratch Disks

Here is possibly another option:

Transfer RAW footage to Scratch Drives
Copy RAW Footage to RAID
Delete SD Cards

EDIT Footage Step

Move FCP Projects files to RAID
Delete Scratch Disks

We go straight from SD cards into the raid, then edit from our various terminals across the network.  Raw footage and finished projects all stay on the raid, and that gets a nightly off site backup to an identical raid via carbon copy cloner.  Why do you have so many disks in the chain?  SD to external disk to scratch sounds excessive to me, but maybe you have good reason?

We have the external scratch TB for editing.  We don't want to use our internal HD b/c they are not large enough.  Do you edit off your RAID directly or do you transfer files to a scratch to edit?

For us, all of the media stays on the raid.  Whenever we start a new project, we create a sparse disk image to contain the new project (we do this, and all of the editing remotely from MBP retinas over gigabit ethernet)  For now, it works for us, but we'd like to upgrade to 10GBe soon.

This seems to be a really technical question and I don't believe it is in the scope of this stack exchange website. You might try asking on the Information Security website because they would more likely know of appropriate ways to back up information.

@WeylinSchreck, This is certainly a technical question, but I do believe it is a good fit here.  The question is about the technical aspects of a production setup... work flows, etc.  While it may also be on topic elsewhere, there's no reason it can't find a good home here.

My process is always to start from the recording media, move the files from recording media to a 12TB external RAID5 array with a utility that verifies the integrity of the transfer.  This is my long term working archive.
While I don't do this at this time, I'd recommend making periodic off-site backups of this array (either to a cloned array or to tape) to guard against loss of the entire RAID array.
For actually working with the assets, I copy (not move) the files to an internal scratch SSD RAID0 array.  Upon completion or archiving of a project, I move only the project files and any newly created files that need to be stored to the RAID5 archive.  I then rename my scratch folder, verify the project works when loaded on the archive array and then delete the renamed folder (which should only contain copies of the master source files.)
This protects against any corruption of original source files while editing and also minimizes the amount of data that I have to move off of the scratch disk.


text:
Youtube Video Resolution Problem
I also posted this question in stack exchange for web applications (https://webapps.stackexchange.com/questions/52579/youtube-video-resolution-problem)
I recently uploaded three ~30 second .mp4 files to youtube. The first five seconds of them are displayed in 244p and then at five seconds, youtube switches them to 360p. I would like youtube to display them at 360p from zero seconds. This problem is happening in chrome browser with the html5 player.
It's important because I need to use these videos as advertisements for my company.
What am I doing wrong?
Here are the videos:

For some reason, when embedded the videos do not have this problem, but when watched on youtube and as you can see from the above photos, there is a resolution issue.

This question appears to be off-topic because it is about how youtube client works.

This is normal dynamic selection for Youtube.  In order to start video playing quickly, it starts at a lower quality and then moves to higher quality when sufficient data is buffered.  It is a setting that would have to be chosen by the person watching the video to say they want a fixed resolution rather than dynamic resolution.

Why does it not do this for internet explorer when I watch the same video? Why does it not do it when I embed the videos like in the above?

Youtube doesn't always use the same player.  The embedded player and the player in IE either don't support or aren't set by default to use the dynamic adjustment.  It is both client and server dependent.

Thanks very much AJ. It does seem to depend on the player and there doesn't seem to be a way to dictate which player youtube uses.

For best results on any Youtube upload it is always best to follow the recommended video encoding settings.
Listed here: https://support.google.com/youtube/answer/1722171?hl=en
If you have followed those settings exactly and you are still having a problem it is a localized problem that will not affect everyone.
Youtube videos do not play the exact same way on every computer nor every playback.
I watched the videos and as predicted I had no problem with resolution, it was a constant 480p throughout.


text:
How to derive surface measurements from video

EDIT: It's possible I should have just asked whether any digital video format included per-frame metadata. As asoundmove did here:
D7000 HD video format - can each frame contain metadata?
And like many others have asked elsewhere for some years now.

I've been asked to measure the surface area of ground floor windows on a kilometer-long street lined with stores. I'm also supposed to videotape the storefronts, as if from a (slowly) passing car, and superimpose the surface area of glass for each store. Maybe on the glass, using motion-tracking software.
Videotaping the stores from a car is not a problem (hood or roof mount, I guess), nor is "attaching" a number on the glass with software afterwards for each store on the way by. Likewise, measuring the glass with a tape measure is easy, but very time-consuming. I'd like to acquire the measurements from the videotape, even if I have to shoot once for a nice angle, and again for measuring, where the camera points straight at the glass.
And if it works, I'll be reproducing the work for much more than the one kilometer of storefronts, so efficiency is my goal.
I could:

EDIT: Actually, one of my first thoughts was that I could just read the distance off the focus ring of my old SLR, but this doesn't provide accuracy to within a meter, as far as I can read it.
Then I wondered why I'd never seen camera-to-subject distance in EXIF data. Turns out it was because I wasn't looking hard enough.

Get the measurements from an individual frame for each store, using the pixel-to-meter ratio, but I'd have to also measure the distance from the camera to the glass each time. Not a really big nuisance with an inexpensive laser distance measuring device like the Bosch DLR130K. I'd need an assistant to measure and record the distance for each store while I was driving, or vice versa.

This method would definitely work, but it's only a short step, really, from using a tape measure on the window of every store.

Attach a meter-long stick to the edge of one window, photograph the storefront, walk to the next store, repeat. This is also like using a tape measure, but I my attempts have shown it to be more efficient to get the pixel-to-meter ratio from the stick and measure the rest in Photoshop.
Somehow figure out how to use OpenCV with my two GoPros for stereo triangulation. Like in this video, the source code for which has been removed.

Should it work, this approach has the advantage of getting video and distance simultaneously. Not to mention 3D, should there ever be any use for that.

Use any number of range imaging methods, none of which I actually see myself pulling off.
http://en.wikipedia.org/wiki/Range_imaging

So now I'm hoping someone has dealt with this kind of thing before, and can show me the real way to do it! :)

How accurate do you need to be?


text:
Does mjpeg handle interlaced video correctly?
I'm using mencoder/libav to capture an interlaced source to mjpeg.
Now, my hunch is that mjpeg is a codec that handles only full-frames, progressive video - because I assume it compresses single (full-)frames as jpeg. How would it handle the "half frames" of interlaced video??
Am I wrong? Did the mjpeg developers take that into account and figured out a way to properly keep the interlaced aspect of interlaced video when stored as mjpeg?
Or is my hunch correct and I am unknowingly "sort of" de-interlacing my material?

To encourage answers, my thoughts on this are:
Ok, Motion-JPEG compresses each frame as a jpg, more or less. Right? Then, how is interlaced material handled? Let's assume it vertically merges/compresses each half-frame from the "lined" state into what looks like a non-interlaced image and then compresses that as a jpeg. Well, then, the (possibly heavy) smearing/blocking/blurring of normal jpeg would kick in and the lines would bleed into each other. On reassembly of the interlaced picture-stream, separating the lines again, this blur then would end up in the final re-interlaced video. Resulting in a loss of quality a native, interlaced-capable codec wouldn't have introduced... At least that's my hunch, as I don't know anything about the internal workings of mjpeg (what probably became obvious above). Prove me wrong.
More encouragement: eye-candy:  This is a screenshot-section, from a mjpeg encoded interlaced video. And even though this image itself is again jpeg encoded (at q=85%), the "bleeding" of lines into each other is not that bad. Could be, jpeg resolution at average compression ratios is good enough to resolve the "lines", and I am worrying about nonsense. Still, technical details anyone?

Using the words "properly" and "interlaced" in one sentence is basically a contradiction in itself. The whole idea of interlaced video is nothing but a historical artifact. You should try to get to an all-progressive workflow.

(Got the irony.) I know. And would love to. BUT: I am doing archiving here, and the source material is interlaced. Keeping the "interlaced aspect" of the material is part of authentically storing it. So my question remains: Is mjpeg fit to store interlaced video? (And deinterlacing is no option, for me.)

To refine your question: proper handling would be if the JPEG artifacts remain within an interlace field, but do not span over the interlace lines, right? Because this would be all there is to it when handling interlacing. The video codec has nothing else to do with it.

If you are archiving video for historical reasons, I'd recommend you use the FFV1 codec from the ffmpeg suite, which is Free Software. FFV1 is lossless therefore artifacts in interlacing is not an issue. Its output files are a little bigger than with mjpeg, though I have seen smaller results as well, depending on video material. Also there are different understandings of the mjpeg format by different vendors, FFV1 is clearly specified and since the source code is available, it can be ported to future computer platforms. Public archives in Austria, Canada and Australia are already using FFV1.

@paul-hansch: You summed it up well! I hope as well that mjpeg more or less treats scan-lines as singular jpeg data streams, so blurring only happens horizontally - but how would mjpeg encode that into valid single frames, as it does? So I think (fear) it doesn't care about the "lined, half-frame state".

@paul-hansch: Yes, FFV1 is great, and in one pipeline I do rely on it heavily. Yet, in another pipeline, "the quick, low datarate" one, I use mjpeg as a "mezzanine" codec and I keep asking myself if that is a poor choice...

I don't know about the specific format of mjpeg that you are working with, but it is certainly possible to handle interlaced video with mjpeg.  I believe the most common way is to do a jpeg per field, so you get half the vertical resolution and alternate between the odd and even fields.

I think VirtualDub will fix those headers.
Simply download VirtualDub from here, unzip it and drop the file into it. A popup is going to be showed telling you if you want that VirtualDub fixes it for you.

Huh? This answer doesn't tell me anything about the mjpeg internals...


text:
How can flicker from a slide projector be removed from existing video footage?
Previously it was asked how to prevent flicker when recording a presenter and a slide show simultaneously. I'm interested in how to correct pre-existing video where there are flickering slides.
Here is an example video that demonstrates the flicker.
I appreciate that the flicker is caused by some problem to do with the video and projector refresh rate being out of sync. However, assuming that such film has been taken, I'm interested in ways to remove the flicker. In particular, when filming slides, the rate of movement in slide content is low. So on some level I assume that there is enough information in the video file to restore an image without flicker. Perhaps there is some smoothing effect that can be applied post processing.
So my question is:
How can flicker from a slide projector be removed from existing video footage?
In particular, I'd be interested in simple and efficient solutions available in standard consumer video editing software.

I didn't view the entire video, but from what I saw it looks like a series of static slides. You could grab a still frame from each slide and create a (say) five second repeat of that frame, and use it to cover the section in the video where that slide appears. Every editing package I'm aware of can do this.
Better yet, get the original slide stack and scan them, then do the same as above. You can correct for parallax etc and have more readable content.

Your best bet is to composite in the screen.  That's the typical solution for this kind of problem.  You can use a program like After Effects and Mocha to image track if you have any shots that have motion and feed either the original or stills of the presentation in as the image to be mapped on to the area that the screen appears on.  Since screens are square with strong edges, they are very easy and reliable to track, so results are generally very good, though it can take a bit of time to do depending on how often the shot changes.


text:
MP4 video rendering differently on different browsers and different machines
I have asked a similar question before, but we are still having the same issues.
Background color of MP4 rendering incorrectly in QuickTime
I am trying to encode MP4's for playback on a website. I have created a test page so you can see the problem I am having. The original video is created in After Effects. When the page displays correctly the video should match the background (so should be unnoticeable apart from while loading).
http://videooptimization.azurewebsites.net/
The MP4 file was encoded via Adobe Media Encoder
PAL, 25 fps, Progressive
No Audio, 2.06 Mbps
The difference in rendering seems to change depending on machine. My machine renders the video perfectly in IE10 and not in Chrome or Safari, my colleagues machine renders the video fine in Chrome and Safari, but not in IE10 (so an exact swap of issue). We both run Windows 8. There are also similar problems on Macs.
IE10 Screenshot

Chrome Screenshot

Safari Screenshot

Can anyone tell me what is going on / how I can create an MP4 that will render identically cross platform and device?
Thanks.

Based on the screen shots I do have one additional thought.  Since you are using a gradient, it could also be a difference in how the gradient is rendered by the browser.  Have you tried using a constant background?

Unfortunately you are not going to be able to accomplish your goal.  Two major factors impact this.  First, color processing on different systems is going to differ.  This will result in slight differences in the colors that are displayed because many video players apply "enhancements" to video and what you actually see when viewing the video in a browser is an embedded player that is installed on the local machine.
Second, different software is also going to use different implementations of a decoder which may result in slight differences in color based on optimizations and rounding error based on how they do their calculations to get the video out.  It's just a side effect of the way the players operate, there isn't a problem with your source (as the data in the file can't change from one player to another.)

Ok, thanks for your reply. Not the answer I was hoping for, we are finding the differences in colours to be quite extreme

@Tom - how extreme is quite extreme?  I could easily see the square when I opened your demonstration link, but I wouldn't exactly have called it extreme.

Have added screenshots. Maybe not so extreme, but certainly noticeable. Also seems odd that the results are reversed for me and my colleage when we both have the same operating system and machines pretty much and the same colour profile set (sRGB IEC61966-2.1). We do have different graphics cards, will this be causing the difference in rendering (seems strange it would)? I suppose is not much we will be able to do, but would be interested to find out what is causing the difference


text:
Recommended Encoding for VHS to Digital to be Followed by Post Processing
I have VHS tapes that I want to digitize. I started this using something like Pinnacle's Dazzle. I notice that the only encoding options were for compressed video, which could lead to quality degradation, especially in reprocessing to improve the image quality (such as adjusting colors and contrast, noise reduction, and de-interlacing).
I was concerned whether I should continue such a time consuming process without first choosing an encoding wouldn't lead to unwanted limitations (e.g., as described here) in the final product.
I would guess that I have on the order of 100 hours of video. In the past, cost of disk storage was a concern, hence encoding with compression was the norm. But I don't feel constrained that way anymore.
Can I get some recommendations on a range of consumer hardware and encoding choices and some ideas of what the benefits and limitations are?
(Sorry if this has already been answered, but I didn't see anything in the list of related questions. This one touches on the subject, but doesn't go into much detail.)

What software do you have in mind for your "Post Processing"? It would probably make sense to capture in the format that is best suited to that software.

With all due respect I believe this is a common misconception being promoted as an answer here:  i.e. "its already low quality so a high quality copy isn't necessary".  In fact it is the fact that it is already encoded to the point of almost being humanly annoying which means you need to get it as good as possible.  If you don't do this, special effects (think star wars or smoke) come out pixelated or with harsh contrast/saturation zone lines between the gradients and fine details such as the nap of a jacket get homogenized in to one color/contrast/brightness and saturation which begin to make the video look like an animated paint by number piece.
This is a hotly debated topic, I expect lots of backlash so I urge you to do several trial runs and prove this to yourself rather than deciding based on who is most verbal in the forums with their advice.
"Ya canno change the laws o physics.":
Montgomery Scott

This does not provide an answer to the question. Once you have sufficient reputation you will be able to comment on any post; instead, provide answers that don't require clarification from the asker. - From Review

If you want something pretty standard and with good quality with DV. The most important thin, whatever the codec you choose, configure it for an interlaced source (since VHS signal is interlaced). If you don't you will end up with a digitized file that will need more space and have much lower quality.

VHS is already highly 'compressed', so capturing to an uncompressed format is likely overkill. For your purposes MJPEG with a reasonably high quality setting will preserve all your options and shouldn't degrade the images any further than VHS already has.
MJPEG goes by other names -- the idea is that it's all "I-frames". It is a lossy codec, but there are no interframe artifacts since each video frame is encoded separately.
. . . . .
VHS is already highly 'compressed', so capturing to an uncompressed format is likely overkill. For your purposes MJPEG with a reasonably high quality setting will preserve all your options and shouldn't degrade the images any further than VHS already has.
MJPEG goes by other names -- the idea is that it's all "I-frames". It is a lossy codec, but there are no interframe artifacts since each video frame is encoded separately.

Could you provide some more info on MJPEG and what software is available for capture, encoding & playback? Can the audio be muxed with that?

MJPEG is just another codec. Any means you have of capturing, with audio, should honor the availability of any installed codec. Look at http://www.free-codecs.com/download/motion_jpeg_codec.htm for example. Any codec that allows you to use 'all I-frames', like DV or ProRes, will work as well, with different storage costs.

Another point: if possible, find an encoder / video capture card or device that can handle S-video directly, and use an S-VHS deck for playback. The hope is that you can avoid a transition to composite and then to a digital format. Even if your original tapes are not S-VHS, the player would be able to deliver the chroma and luma directly, without re-encoding as composite video. Sorry, no specific products, but S-video input should be called out as a feature on any capture device that offers it.

This may be an option. http://www.hauppauge.com/site/products/data_usblive2.html

DV can also work well as a format since it is designed to maintain pretty good quality in standard definition and is still fairly compressed.  That's the standard format used for capturing from miniDV cameras and should take around 1 gigabyte for every 4.7 minutes of video.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
Software to make a transcript?
I record conferences and produce them in an HTML player. I have a need to transcribe some content and integrate it into the player.
I found this question, but the answer seems to say that the transcription is mixed into the video file. I do not want that.
What I need, or could work with, is a transcript that is in a separate text file with the timings that the sections begin. XML, CSV, or some other standard is perfect.
I have thousands of hours per year that I would potentially need to do this on. There needs to be very little effort involved to get the transcripts for this to be viable.
What would be perfect is that I tell the program what videos I want a transcript for, click go, then it produces the files. Any OS is fine, though I prefer Windows.

Update: I learned that Google employs a very good transcript engine, but you cannot seem to take advantage of it without actually uploading files to YouTube. I asked if there was a way around this on Superuser, but got nothing. To further complicate things, YouTube decides if the video with be transcripted without notice to the user. There is no option to select it or generate it on command. So in expansion of this question, what options do I have available to me regarding YouTube's engine? Is there a way around this? I can upload to YouTube as long as I can keep it private and the transcript will be generated at time of encoding, if that's the only option.

Adobe premiere has a speech analysis system built in, after cs4 I believe. Machine transcription systems tend to be very poor though - in my experience it is only useful for a vague sense of where you are in the video. See below:
http://www.realeyes.com/blog/2010/03/05/caption/
Human transcription services are getting cheaper as many of them use Amazon's "Mechanical Turk" to provide the human labour. The quality is much better, but will still require editing for readability. See the link for more info:
http://waxy.org/2008/09/audio_transcription_with_mechanical_turk/

Thanks for the link. I have had premiere on my PC for years and still haven't used it. I will give this a go and report back.

With the Premiere transcription thing I always found that the time spent hunting through the transcript and checking for errors was greater than the time it would take to just write it yourself. Especially as the errors are sometimes not apparent unless you're reading it while listening to the voice, and even then a few always slip through. We have to transcribe everything we produce and we use an online transcription service. The price beats paying one of the office staff for the time it takes for them to do the transcription (and then for me to check the timings) by an order of magnitude.


text:
What techniques are used to create this 1-minute motion graphic?
Here's a 1 minute After Effects (?) production about The Noun Project (an iconic website):
https://vimeo.com/48846655
I really like the style of it and would like to learn how to create something similar.
Questions

What effect is used for the letters to animate per-letter vertically?
How is the scene setup so that element gradually fade in and out from the top/bottom?
How can the "elements-to-globe animation" at 0.54 done?
Where can I find or create sound similar to that used in the film?

Hi dani -point 4 is going to be off topic here. As for point 1- what do you mean? Are you asking about animation, motion blur, panning or what?  There are a range of techniques in use in this video and asking about all of them is a bit too broad a question.

Thanks for your comment. Ideally I'd like the answer to outline how I could create a similar film in AE, perhaps giving examples of settings used to achieve these specific effects: What values for motion blur and how is the camera set up? How is the typography animated and what about the other vertical movement?

I think this question may be to broad to get a good answer.  It would be better if you split it up into several questions about specific portions of the video.

Yea you are essentially asking, how to do motion graphics...

Thanks for your comments. @ChrisJamesChampeau, I rephrased questions to be more specific.

Okay, now that you have updated your question I think we may be able to answer your questions better...
But keep in mind this could have been done 100 ways and we are simply hypothesizing on how it could have been done.

The individual letters coming in like this could be done 100 different ways, it could be done via an effect in aftereffects, a preset in livetype, etc.  I most likely would simply make each letter its own layer and tie that to a slider via expressions and then be able to keyframe the slider to initiate and finish the animation...this allows me to change the speed of the animation easily and the in and out points of the animation etc.
My guess is that as the items are sliding in and out vertically there is a mask of white with a high feather so that as it goes from center to bottom or top...it is going beneath a layer of white that is feathered to solid at the tops and bottom and feathered to transparent at the center.
I am going to say this was also done with expressions, he had a gride of icons, in a circle...made the middle icons slide from the - in the z axis and arrive on 0, with a crossfade of an icon of the world.
This is more of an audio question, "how do you make music?" but I would say digital performer, or even on the super cheap side is garageband which is free with mac os, and theres millions between, burn-studios.audiotool.com is free, theres audacity, theres fruity loops

Hope this helps you a little bit


text:
OGV Format plays properly on my computer but transcoding drops (duplicate?) frames
I've made a set of screencasts using recordmydesktop on ubuntu 12.10.
The output is an ogv file.  When I watch the ogv file using the default movie player (totem) it looks fine - the audio and video are in sync.  When it is transcoded (by me or youtube) the audio and video are out of sync.  It looks like I skip through a slide or two while narrating.
Update
I suspect the problem is more properly characterized as dropping duplicate frames during transcoding.  Converting video where the mouse is moving seems to normally work fine.  But when I'm just talking during a slide those duplicate frames are dropped.
I saw this but it isn't quite my situation (trying to go from ogv -> anything) https://superuser.com/questions/436187/ffmpeg-convert-video-w-dropped-frames-out-of-sync
AVI files seem to translate correctly!  I assume this will be a big hint to someone.  I'd still like to track down the underlying issue.  I'm testing the conversion of my previous videos to AVI but this takes a while since I have to check each transition.
Examples
This is the original OGV file from gtk-recordmydesktop:
http://dl.dropbox.com/u/64693533/sync_test/sync_test1.ogv
The video starts with a slide for 10s, then advances to 3 more slides 5s each.  Each time I advance slides I tap the microphone too (10s, 15s, 20s, 25s).
Here are some conversions that were done (each displays it's own video timing issues):
http://dl.dropbox.com/u/64693533/sync_test/sync_test1.mp4

this one shows the first slide in the first frame but quickly advances past it
this was done using the stock ffmpeg

http://dl.dropbox.com/u/64693533/sync_test/sync_test1.ffmpeg-static.mp4

this one is pretty close - for some reason at 13s it decides to advance though
this was done using the static build of ffmpeg from a few days ago

Here it is on youtube - you can see that at around 13s it advances early (from slide 1 -> slide 2):

Here is proof the OGV file works correctly:

ffmpeg translation
Using ffmpeg or avconv I seem to get similar results as youtube (transitions appear to happen early but not necessarily at the same time).
Here is the command I use (with a recent static build of ffmpeg) and output:

$ ~/ffmpeg/ffmpeg -i JSP.ogv JSP.mp4
ffmpeg version N-50025-gb8bb661 Copyright (c) 2000-2013 the FFmpeg developers
  built on Feb 17 2013 05:23:03 with gcc 4.6 (Debian 4.6.3-1)
  configuration: --prefix=/root/ffmpeg-static/64bit --extra-cflags='-I/root/ffmpeg-static/64bit/include -static' --extra-ldflags='-L/root/ffmpeg-static/64bit/lib -static' --extra-libs='-lxml2 -lexpat -lfreetype' --enable-static --disable-shared --disable-ffserver --disable-doc --enable-bzlib --enable-zlib --enable-postproc --enable-runtime-cpudetect --enable-libx264 --enable-gpl --enable-libtheora --enable-libvorbis --enable-libmp3lame --enable-gray --enable-libass --enable-libfreetype --enable-libopenjpeg --enable-libspeex --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-version3 --enable-libvpx
  libavutil      52. 17.101 / 52. 17.101
  libavcodec     54. 91.103 / 54. 91.103
  libavformat    54. 63.100 / 54. 63.100
  libavdevice    54.  3.103 / 54.  3.103
  libavfilter     3. 38.100 /  3. 38.100
  libswscale      2.  2.100 /  2.  2.100
  libswresample   0. 17.102 /  0. 17.102
  libpostproc    52.  2.100 / 52.  2.100
[ogg @ 0x34d4640] Multiple fisbone for the same stream is not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented.
[ogg @ 0x34d4640] Header parsing failed for stream 0
[ogg @ 0x34d4640] Broken file, keyframe not correctly marked.
Input #0, ogg, from 'JSP.ogv':
  Duration: 00:12:49.67, start: 0.000000, bitrate: 224 kb/s
    Stream #0:0: Data: none
    Stream #0:1: Video: theora, yuv420p, 1600x880 [SAR 1:1 DAR 20:11], 15 fps, 15 tbr, 15 tbn, 15 tbc
    Metadata:
      RECORDMYDESKTOP : 0.3.8.1
    Stream #0:2: Audio: vorbis, 22050 Hz, mono, fltp, 89 kb/s
[libx264 @ 0x369c5e0] using SAR=1/1
[libx264 @ 0x369c5e0] using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2 AVX
[libx264 @ 0x369c5e0] profile High, level 4.0
[libx264 @ 0x369c5e0] 264 - core 129 r2230 1cffe9f - H.264/MPEG-4 AVC codec - Copyleft 2003-2012 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=15 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'JSP.mp4':
  Metadata:
    encoder         : Lavf54.63.100
    Stream #0:0: Video: h264 ([33][0][0][0] / 0x0021), yuv420p, 1600x880 [SAR 1:1 DAR 20:11], q=-1--1, 15360 tbn, 15 tbc
    Metadata:
      RECORDMYDESKTOP : 0.3.8.1
    Stream #0:1: Audio: aac ([64][0][0][0] / 0x0040), 22050 Hz, mono, s16, 128 kb/s
Stream mapping:
  Stream #0:1 -> #0:0 (theora -> libx264)
  Stream #0:2 -> #0:1 (vorbis -> libvo_aacenc)
Press [q] to stop, [?] for help
[ogg @ 0x34d4640] Broken file, non-keyframe not correctly marked.
    Last message repeated 2 times
Broken file, non-keyframe not correctly marked.=00:00:08.37 bitrate=  28.7kbits/s dup=66 drop=0
Broken file, keyframe not correctly marked.time=00:00:51.01 bitrate= 125.3kbits/s dup=675 drop=0
Broken file, keyframe not correctly marked.time=00:00:55.05 bitrate= 140.2kbits/s dup=782 drop=0
Broken file, keyframe not correctly marked.time=00:00:59.60 bitrate= 140.5kbits/s dup=836 drop=0
[ogg @ 0x34d4640] Broken file, keyframe not correctly marked.
Broken file, keyframe not correctly marked.time=00:01:08.00 bitrate= 143.0kbits/s dup=900 drop=0
Broken file, keyframe not correctly marked.time=00:01:11.86 bitrate= 141.6kbits/s dup=910 drop=0

...repeated many times...

Broken file, keyframe not correctly marked.time=00:12:47.62 bitrate= 153.0kbits/s dup=9087 drop=0
frame=11521 fps= 87 q=-1.0 Lsize=   14849kB time=00:12:49.48 bitrate= 158.1kbits/s dup=9087 drop=0
video:2401kB audio:12024kB subtitle:0 global headers:0kB muxing overhead 2.938094%
[libx264 @ 0x369c5e0] frame I:49    Avg QP:16.05  size: 29658
[libx264 @ 0x369c5e0] frame P:2912  Avg QP: 9.88  size:   114
[libx264 @ 0x369c5e0] frame B:8560  Avg QP:12.76  size:    78
[libx264 @ 0x369c5e0] consecutive B-frames:  0.9%  0.1%  0.2% 98.9%
[libx264 @ 0x369c5e0] mb I  I16..4: 90.8%  0.4%  8.8%
[libx264 @ 0x369c5e0] mb P  I16..4:  0.0%  0.0%  0.0%  P16..4:  0.0%  0.0%  0.0%  0.0%  0.0%    skip:99.9%
[libx264 @ 0x369c5e0] mb B  I16..4:  0.0%  0.0%  0.0%  B16..8:  0.3%  0.0%  0.0%  direct: 0.0%  skip:99.7%  L0:65.3% L1:34.6% BI: 0.1%
[libx264 @ 0x369c5e0] 8x8 transform intra:0.5% inter:15.8%
[libx264 @ 0x369c5e0] coded y,uvDC,uvAC intra: 6.4% 0.1% 0.1% inter: 0.0% 0.0% 0.0%
[libx264 @ 0x369c5e0] i16 v,h,dc,p: 94%  4%  2%  0%
[libx264 @ 0x369c5e0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 19% 22% 44%  1%  2%  2%  3%  1%  6%
[libx264 @ 0x369c5e0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 35% 17% 19%  4%  5%  5%  5%  5%  5%
[libx264 @ 0x369c5e0] i8c dc,h,v,p: 100%  0%  0%  0%
[libx264 @ 0x369c5e0] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 0x369c5e0] ref P L0: 82.5%  1.4% 11.9%  4.3%
[libx264 @ 0x369c5e0] ref B L0: 47.2% 52.4%  0.4%
[libx264 @ 0x369c5e0] ref B L1: 99.2%  0.8%
[libx264 @ 0x369c5e0] kb/s:25.60

The video still advances early but at different times.  It sounds like gtk-recordmydesktop is generating a "broken file".  What's annoying is that the OGV does work so it seems like I should be able to make this work with some set of options.
I have found that I can render the video in kdenlive and it seems to be working there.  I'd still like to know what is going on.  kdenlive does a much better job, but it still advances early sometimes.

Please show your ffmpeg command and the resulting complete console output.

Good idea @LordNeckbeard I added the command and output.  I notice an error/warning: max_analyze_duration reached.

Does the issue still occur if you use a recent static build of ffmpeg? This will rule out any potential bugs that you may be encountering that have already been fixed with a newer version of ffmpeg. No need to install or anything. Just download, extract the archive, and then execute the included ffmpeg binary.

Can you provide a sample input file that the problem can be reproduced with?

Good idea, I'll whip up a small one and post it later tonight.

Would an answer along the lines of 'use a different screen recording program' be acceptable? It looks like GTK-recordmydesktop is creating broken files.

@evilsoup - Unfortunately no, I've created a number of recordings already before noticing the problem.  Moreover I can watch the OGV just fine in linux so it seems it's not totally corrupt.  That being said, I will be trying to track down why it's creating "broken files".

Unless I'm missing something this is probably a bug or lack of ogg feature support in ffmpeg and/or a bug in recordmydesktop (that ffmpeg hasn't made a special case for). A bug report may be the best option here. Make sure to use the latest ffmpeg version you can, show your ffmpeg command and complete console output, provide sync_test1.ogv, and try to show the problem using only native encoders (no lib* such as libx264) if possible.

Thanks for the suggestion @LordNeckbeard I'll submit a bug report and see where that goes.  Any idea why AVI seems to be working?

Why convert to OGV when your final upload is going to be to youtube, I may be wrong but you can convert to x264 video codec with AAC Audio even on linux and upload that to youtube considering that is what they prefer to be uploaded anyway.  Have you tried making an h264 and uploading to youtube instead of the OGV file and seeing if that was the issue.  Because I would bet that if that solves it, you then know it was an issue with the OGV being uploaded to youtube, and if it does not solve it, it could be a frame-rate issue with youtube's interpretation or something similar.
There have been a lot of issues with OGV files uploaded to youtube in the past.  I cant imagine that it is 100% fixed even at this point.
http://support.google.com/youtube/bin/answer.py?hl=en&answer=1722171
EDIT: also just noticed that your original footage is at 15fps...this could very well be the source of the issue
EDIT 2: I seemed to slightly have misread the question a little bit...being that you are starting with a video file that is OGV, and I saw that you are going to MP4...this changes things a little bit...but I am going to guess it has something to do with the 15fps and 22050 Hz audio...I know the sample rate has nothing to do with syncing the audio, but from experience when using non standard frame-rates and audio samplerates, I have tended to see drifting...getting these to sync may be rather difficult while not being able to edit these after the initial recording with a cheap video editor...
While software has gotten better about drifting audio it is still a common problem when using uncommon framerates and samplerates as the keyframed sync points are not standard and could be rounding key frames etc...
You see where it says "Broken file, keyframe not correctly marked." that is what it is referring to...
my advice for you would be to get it as close as possible, take it into a video editor and slip and cut up the audio to get it to match the way you want it.  Unfortunately sometimes this is how it is fixed...
Software based transcoders do not always work as they should...hense why a protools setup and/or an avid setup would come with hardware to further ensure sync capabilities and constant frame-rates etc...
Another thing you could try is to convert the footage to a standard framerate, and try to re-mary the audio...as I am pretty sure it is the video drifting...probably ever so slightly slowing down and then speeding up towards the end or vice versa.
EDIT: I was able to get the video to sync to the original using this ffmpeg command...it may have need the rate clause which is what I suspected
ffmpeg -i sync_test1.ogv -strict experimental -pix_fmt yuv420p -r 15 -vcodec h264 -acodec aac sync_test1.mp4

The original file is Theora video and Vorbis audio in ogv container. Amir T is not re-encoding to this format, as far as I know, but when he attempts to re-encode the original with either ffmpeg or YouTube the sync problem manifests.

The input format is ogv which is what gtk-recordmydesktop outputs.  I'm trying to get to anything other than ogv (flv, etc).

Read my updated answer...I think it is an issue of FPS

I added an example source file.  The sync issue is very noticeable.  It seems to me like a bunch of frames are elided for various formats.

Try this...see new answer

Adding -r 15 is the same as omitting it because ffmpeg will inherit the input frame rate by default, and the resulting output files, with or without -r 15 are exactly the same with ffmpeg from git head (version N-50285-gad89952). If it is working for you using an older ffmpeg version this could be a regression and should be reported to the FFmpeg bug tracker.

@ChrisJamesChampeau thanks for the suggestion - I tried the command you listed using the static build of ffmpeg I get slide 2 at 12s and 3 at 17s: https://dl.dropbox.com/u/64693533/sync_test/sync_test1.cjc.mp4

Well the FFmpeg I am using is a MAC version versus your Linus version not sure but my guess is that there must be a bug with your FFMPEG?? have you tried removing it and reinstalling the latest version?

Yeah, I've tried two versions, the ubuntu default from apt-get and the static build.

I am with @LordNeckbeard you should report this as a bug to FFMPEG

I struggled with a similar issue on Ubuntu 12.04.3 LTS. I fixed the problem using the static ffmpeg build which is available from http://johnvansickle.com/ffmpeg/

I also tried a static build and it worked somewhat better.  Perhaps the bug has been fixed, in which case it might be useful to add the version number from the static build to your answer?

It seems this bug is still in recordmydesktop, or at least I got the exact same symptoms here with the version from Debian testing (0.3.8.1+svn602-1.1).
I just managed to transcode this video almost correctly, in the following way:

Use VLC.
Ask it to transcode to the WebM "profile".
Ask it to display the video as it is transcoded.

The result still has the correct synchronization (yay!), but it still suffers from a problem: the resulting video announces itself as lasting more than 4h whereas my video only lasts 25min.  Peertube hence lists it as a 4h video, tho once you start playing it the correct 25min duration is displayed, so the problem is not too serious.
Point 3 is important, but point 2 is also: maybe other profiles will also work, but at least the H264 profile gave me an unusable video (either with bad sync like ffmpeg or worse).

Try just changing the container to avi rather than transcoding, which seems to work better for youtube:
ffmpeg -i JSP.ogv -vcodec copy -acodec copy JSP.avi

I tried this, and the upload just never finishes processing, same as if I upload OGV. Since this answer predates youtube accepting OGV, it must be that change.  Annoying that ffmpeg still has this conversion problem four years later.

My ffpmeg is:  3.2.14-1~deb9u1  (apt-get installed)

I have tried all the variations above, with static builds (git-20191029), and while it gets a bit better, the audio and video unsync.  If trying one needs a large --max_muxing_queue_size value. I used 40960.


text:
what's a good basic app to edit stop motion video?

Possible Duplicate:
How can I align photos for stop motion?
Command Line Tool for Converting Image Sequence to Quicktime .mov Video

Want to do a project with my kids over the holidays and create a stop motion video using their large assortment of dolls.  We are good with taking the shots but wondering what a good editing app would be to put it all together.

See my answer to a similar question for an app to help with photo alignment.  As for converting the images into a movie, this question may help.

could you provide your operating system? so that we can provide a wider range of solutions.

Thanks for the answer FoG.  I have a Macbook Pro so looking for an OSX solution.

Personally, for a quick-and-dirty solution, I use iMovie. You put all the stills into a new project, then you highlight them all, choose clip settings and disable the Ken Burns effect, and put the duration of the photo to 0.1 seconds (This is the fastest iMovie can handle).

If you just want to put all the photos together at a certain frame-rate I would recommend Quicktime 7. Keep in mind that no editing with respect to colour and contrast is possible in that application, it's very basic.
These are the steps when you want to make a stop-motion video out of a series of photographs:

Install Quicktime 7 from the original installation CD. I am certain that this is possible on Snow Leopard, not sure about newer OS's. Also check your Utilities folder, maybe it's already installed.
Organize. Make sure that your images are in one folder and that they are sequentially named. The first frame should have the lowest number (not necessarily 1) and the last frame should have the highest number.
Resize.Check the size of your photos. If they're shot on a consumer level compact camera it is very likely that the size is something like 3888 x 2592 pixels. For a photo this is good, but for a video/time-lapse this is overkill. I would recommend to resize the photos such that the longest size is smaller or equal to 1920 pixels.
3a. Resize using Preview. You can resize the images in any way you want, I will explain the workflow when you use the pre-installed Preview. Work on a copy of the images, just in case something goes wrong.

Open Preview, click File -> Open or hit cmd+O.
Navigate to the folder containing a copy of the images and select them all to open.
Make sure the sidebar is visible. Go to View -> Sidebar -> Show Sidebar or hit shift+cmd+D.
Go to View -> Sidebar -> Contact Sheet or hit cmd+option+1.
Now select all the images and go to Tools -> Adjust Size...
You will see the following window:

Change the largest dimension (in this image the width) to 1920 and leave the rest as is.
Wait for Preview to process all images.
Go to File - Save All or hit cmd+option+S.

Load the images. Open Quicktime 7, go to File -> Open Image Sequence... or just hist shift+cmd+o and select the first image of the resized sequence. Click Open.
Pick your desired frame-rate. This depends on the amount of photos you have taken and influences how long your final time-lapse will be.
Finished. Now the time-lapse movie is done. Click File -> Save and save it as a self-contained movie. Or you can hit File -> Export if you want more control over the movie format.


text:
How to reverse video in different software packages
One of the basic edits one can make to a video is reversing it such that it plays backwards.
The goal of this community wiki is to show beginning users how to reverse footage with different video editors.
When adding answers, please try to make the guide as easy as possible as this is aimed towards beginning users.

List of software in alphabetical order

After Effects
Premiere Pro
Vegas Movie Studio & Vegas Pro

Are you interested in Vegas Movie Studio and Vegas Pro?

Just put any video software package that you have access to in this wiki. I'm thinking of making a similar wiki for audio editors.

After Effects
There are three steps involved when you want to reverse footage in After Effects.

Import the footage
Go to File -> Import -> File... select your footage and click Open
Create new composition
In the Project Panel drag your footage to the new composition button as shown in the image below:

Reverse the footage
Now in the Composition Panel right click on your footage and go to Time -> Time-Reverse Layer as shown in the image below:

Now your footage is reversed and you only need to export it with the settings you desire by clicking Composition -> Make Movie...

Premiere Pro

Make a new project
Go to File -> New -> Project. Set the folder and project name and choose the sequence preset that fits your footage with regards to the dimensions, frame rate, frame aspect ratio, etc...
Import your footage
Go to File -> Import, choose your footage and click Open.
Put the footage in the sequence
Drag and drop the footage from the Project Panel to the timeline in the Sequence Panel as shown in the image below:

Reverse the clip
Right click on the footage in the timeline and go to Speed/Duration.... In the window that shows up check the Reverse Speed checkbox and click OK.

Now your footage is reversed and you can export it by going to File -> Export -> Media.

Vegas Movie Studio & Vegas Pro
Assuming you have put the desired clip(s) in the timeline.
Right click on the clip and a menu will appear, check 'reverse' and this will reverse the clip. You will get confirmation by a reverse arrow appearing at the leading edge of the clip in the timeline. Note, you will need to do this for both video and audio tracks separately. To undo go back and uncheck it.


text:
Will lens softness be visible in DSLR video?

Possible Duplicate:
What factors are important for DSLR lenses for shooting video?

The one-line question above had to be vague, so let me elaborate:
Let's say that I'm using a Canon T4i (doesn't necessarily have to be that camera) with a Canon 50mm f/1.4 USM lens to shoot 1080p video. I know that this particular Canon lens is naturally not very sharp at 1.4, and this would probably be apparent on a full-size photo when blown up to 100% scale on a screen.
However, it seems reasonable to me that, even if the lens is soft, if I were to shoot video at f/1.4 and then view it at 100% scale on a screen, the video is still so small in resolution that the lack of sharpness may not be very visible, similar to taking the photo previously described and scaling it down to 50%.
In this way, I want to see if I can get away with using this lens at 1.4 and get results that look very good and really sharp, despite the lens's apparent natural limitations (and, of course, assuming proper focus on my part).
Does my theory have any truth behind it?

I feel that this question actually has answers which should cover off your question: http://avp.stackexchange.com/q/1704/674

You are correct. You're shooting at a much lower resolution on video than stills, and so your effective circles of confusion are much bigger. So you can get away with glass that a decent stills photographer wouldn't touch. This is speaking from experience at work where I share DSLR equipment with a bunch of stills photographers who are always complaining about lenses that I use all the time for video with no problems.
"Get away with" being the critical phrase there. Crap lenses are still crappier than good ones.

No, if the lens is soft while shooting video you will notice.  However when shooting any of the Canon Cameras, 5D mark three to be exact, the camera is very susceptible to sharpening in a proper grading software or VFX software, AE can do this, so can Nuke, Flame, Smoke, and many of your color grading softwares.
So yes you will notice if the lens is soft in your video, however you can counter this with a bit of sharpening in post.


text:
How does YouTube encode my uploads and what codec should I use to upload?
Related to What codecs/formats are appropriate for full motion video recording for youtube? I'm wondering exactly how I can expect Youtube to handle my videos. I know they have a rather zealous processing set up that generates multiple copies of my upload at different resolutions; 1080p, 720p and 480p and apparently a mobile one, at the very least.
What codec(s) do they use? As a producer I have an option to download the file as an MP4; however I note a third party downloader (which is extremely shady and crappy) brings the files down as FLV. I'm basically wondering if my codec is going to be preserved or overwritten with H.264 or whatever they use. Considering their amazing compatibility across devices I assume they either use a very common standard or multiple codecs for each video.
So what codec can I expect my videos to be output in, and if it depends, what does it depend on? Should I adjust my own encoding to "play nice" with Youtube's codec, or does it matter, quality-wise? I know I can throw pretty much anything on Youtube and it will take it, so I'm mostly concerned with video quality.

here's a tool to see available formats for a video: http://www.h3xed.com/web-and-internet/youtube-audio-quality-bitrate-240p-360p-480p-720p-1080p

Some general info about the formats used:
YouTube uses 4 container formats and 4 different codecs. It depends on the popularity of the video what codecs are used for your video (see below why). Generally, every of your uploaded videos will be encoded in h.264 and will be muxed into an .flv and .mp4 container. That's the standard and this will happen for every video. Though .flv will only be used for resolutions below 720p. Meaning only 360p and 480p will exist in an .flv container. Though every video below 720p will also have a mp4 version available. For 240p YouTube is also using 3gp which is a rather old codec (based on MPEG-4 Part 2 (not to be confused with MPEG4 Part 10 aka h.264) meant for mobile devices (long before the smartphone era), it comes in the container .3gpp.
The other codec used is VP8 which is coming in the WebM container format. WebM is a format developed by Google and was meant as a standard video codec for HTML5, support for it is by now pretty good in most modern browsers.
WebM was introduced with the HTML5 version of YouTube. YouTube only encodes some videos in WebM after they got uploaded and mostly only popular videos (going by the videos I saw encoded in WebM) so it's not certain your video will be present in WebM. Though this is changing with WebM gaining some more support.
YouTube also supports VP8/VP9 in the WebM container. This is supported by all major browsers for several years now. With WebM, they also introduced support for the Opus audio codec (besides AAC which is used in all other containers).
In regard of your linked question (maybe they should be merged?)
What codec/container should you use for uploading?
That depends, if you are limited/concerned by your upload speed then use h.264 Level 3.1/4.1 with Main Profile for SD or High Profile for HD. YouTube will accept this just fine and it will look nice after it got encoded by the YouTube servers. I would usually recommend a bitrate of ~4-5 Mbit/s for 720p material and ~8-9 Mbit/s for 1080p. For 4k go for ~15-25Mbit/s or more depending on the complexity of the footage. "Cartoon" content with few colours can usually have a much lower bitrate in general.
This is usually a good balance between size and quality. If you want better quality go with a higher bitrate, and if you want a smaller video go with a lower bitrate.
But be aware that YouTube will ALWAYS encode your video once it's uploaded, doesn't matter what codec and settings you use. So if you want the theoretically best quality for your uploads, choose a lossless codec for uploading or at least visually lossless.
See YouTube as the final output into a delivery/consumer format and the upload to YouTube is the last step in production and during production you want to stay lossless.
But please note this is all just a theoretical thing, practically I'd say it really doesn't matter as we are talking about YouTube and not about TV broadcast or Cinema. In almost all cases a very high bitrate h264 encode (20-40mbit/s) will suffice even for high-end content.
But if you really want to do it the "perfect" way, use a production codec and not a consumer codec like h.264.
MJPEG would be a good codec for that, YouTube definitely supports that in an .avi or .mov container. MJPEG is a lossy codec but the visual quality will be the same as the source (if you chose a high enough quality setting, this is practically JPEG as the video codec).
Going with a real lossless codec would be a waste of hard-drive space and bandwidth in my opinion.
But if you want to upload your video truly lossless and don't care about the upload time, I recommend using a standard QuickTime codec as they should be nearly all supported by YouTube (note that not all of them are lossless, h264 is also a standard QuickTime codec). Though YouTube doesn't state which QuickTime codecs are supported, unfortunately. Animation or JPEG2000 should work I guess. Both codecs can be 100% lossless depending on settings in case of JPEG2000.
When it comes to frame rates, if you can choose then use 25FPS or 30FPS  during recording/animating (by now YouTube also supports 50 and 60FPS+ video, so use that if your content benefits from a higher framerate), YouTube likes standard framerates like 25 or 30FPS the most (or again one of the higher FPS options) but if your footage comes already in another frame rate like 24FPS then stick with that and don't interpolate up or down. YouTube will handle the conversion for you and generally does that better then your average encoder. They have to deal with all kind of framerates every day and solved this (actually very complicated) issue really well.
Audio:
For the audio use PCM if you want to stay lossless with the audio as well but again this is really just a theoretical quality improvement. AAC will usually do the same job quality wise (subjective) and will be smaller. I recommend a bitrate of at 128-192kbps for AAC. The size impact is usually not as big as the video codec so you can also just go with 192kbps or higher if you feel your audio content is very sensitive. YouTube will convert audio to ~24kbps(Mobile aka 3gp) ~64kbps(240p), ~128kbps(360p/480p) and ~192kbps(720p+) using the AAC and Opus (WebM only) codec.

I agree to this answer. But there is a practical limit: the upload speed. How much time are you allowing for an upload? A whole weekend, a night, or a couple of hours until the end of your working day.
I myself put the limit to 2 GB for 10 minutes of video, which needs around 4 hours of upload time in my case. But is this really restricting the quality? My 2 GB video has a bit rate of 30 Mbit/s, which YouTube converts to 3 Mbit/s. A lossless encoding would multiply the upload time, but the YouTube output would still be at 3 Mbit/s.
Please set your personal limits by yourself.

Sure thats why I made it (hopefully) quite clear that its theoretical and in no way practical. H.264 is to be recommended for almost all cases.
The only actual practical usecase for MJPEG I can think of is when color banding occours with the first h.264 encode which will get worse with the second encode from YouTube.

Youtube support h.264 high profile, so you should use it always.  Main profile for SD content is silly.  Leaving out 8x8dct is always a bad idea.  In x264, enabling 8x8dct is the most efficient tradeoff of CPU time for better quality per file-size (aka rate:distortion or RD).

H.264 will look a lot better at the same bitrate than MJPEG.  If you want better quality, just turn up the bitrate (or the quality setting in constant-quality instead of target bitrate mode).  You can go all the way to lossless h.264 if you don't mind uploading a huge file.  It will probably be smaller than lossless j2k.  Both are perfect quality, though, since that's what lossless means.

For audio, IDK if youtube supports FLAC or not.  If so, that would be your go-to choice for lossless.  Otherwise yeah, high bitrate AAC made with a good encoder.  (-c:a libfdk-aac, not the default faac or builtin aac encoders in ffmpeg.)

Your question is "How does YouTube encode my uploads and what codec should I use to upload?".
Digging deeper into your question I see: "Should I adjust my own encoding to "play nice" with Youtube's codec, or does it matter, quality-wise? I know I can throw pretty much anything on Youtube and it will take it, so I'm mostly concerned with video quality.".
The answer is YouTube uses Lavf57.25.100 to encode new Videos while Videos over a few years old were encoded with a proprietary Encoder (that doesn't have "Lavf57.25.100" embedded in it's ID but instead has this sentence: "IsoMedia File Produced by Google, 5-11-2011"). The old Videos were not reencoded when the Algorithm was changed.
It is acceptable to use many different Codecs, YouTube recommendeds H.264 - see here: https://support.google.com/youtube/answer/1722171?hl=en .
For some reason you choose not to ask about the Container (which isn't the same thing as a Codec). You also assume that 1080P is going to be available and don't ask about the most important thing - Bitrate (followed by Resolution).
If you upload a 1080P Resolution Video at 60FPS then the maximum Resolution available is 720P (at 60 FPS, on a Mobile Device, capable of 1080P), uploading a 1080P Video at 29.97 FPS permits 1080P viewing on a Mobile Device.
What IS important is Bitrate and Resolution if "quality" is your goal. You can't upscale or use lossless to cheat since YouTube runs a 'Compression Test' to determine how much they can crush your Video with minimal degradation - upload mush and it will be highly compressed mush, upload high Resolution and high Bitrate, then YouTube will back off on the crushing, and deliver a much better viewing experience.
See: https://support.google.com/youtube/answer/1722171?hl=en .
Notice that different Resolutions and 'Quality Expectations'. For 4K Video with low expectations you can upload Videos that have a Bitrate of 35-45 Mbps but if you're a "Producer" and quality is your goal you need both a higher Framerate and to use at least 66-85 Mbps for the Camera Bitrate (before you compress it very gently).
If you upscale a low Resolution Video and use an uncompressed Codec hoping to get the finest quality possible you'll be caught (and reduced to mush).
Record using a Production Quality Camera, high Framerate and Bitrate Video, very gently compressed (Ffmpeg Q=<10) to get the best results - the "Codec" (your words) is not the sole determining factor (though I'd advise against an old one).
Ffmpeg supports .MP4 Containers and the H.264 Codec, so use those.
People often complain that YouTube ruins their Videos, the problem is that they didn't upload high enough quality in the first place to 'trip the switch' and cause YouTube's Compressor to tread gently upon your Upload. Pixel-peeking perfect Videos are possible. The GIGO Rule applies.

Thanks for the official "Recommended upload encoding settings" link, that directly answers the "what codec should I use to upload?" part!

What is known about what YouTube does during the 'Compression Test', i.e. what encoder settings it tries and how it computes whether results are acceptable? That probably can be reverse engineered by uploading different videos and checking the encoded results. Have you come across such an analysis/info?

They are Encoded with Lavf57.25.100 .
This is one of a few conflicting Help Pages that contains better Info than some of the others: https://support.google.com/youtube/answer/6039860?hl=en


text:
How to Monochrome, Haze video Effect in FFmpeg?
I have a lots of searching but i coudn't find the FFMPEG command for Monochrome effect and Haze Effect on video.
Orignal

Haze Effect

Monochrome Effect  (This is not sepia effect)

Your help would be appreciated.

How to increase contrast via command ?, and what about monochrome effect.?

So I assume you want to increase the contrast for your effect you called "haze"? Did you use Photoshop to create these previews?

yes if it got same result then it ll be fine.

actually i found this effect from https://github.com/MasayukiSuda/ExoPlayerFilter, and it was a preview screenshot that and put it here. i am not making it in Photoshop.

Monochrome

One method is to use the hue filter to desaturate.
ffmpeg -i input -vf hue=s=0 -c:a copy output
ffplay -vf hue=s=0 input

De-haze (increase contrast)

The curves filter has several presets including a few that increase contrast. You can also make your own curves in Photoshop, export the ACV file and use it via the psfile option in the curves filter.
ffmpeg -i input -vf curves=preset=increase_contrast -c:a copy output
ffplay -vf curves=preset=increase_contrast input

Thanks alot for your answer @llogan, as per your answer monochrome effect is same as grayscale effect, can you make command like my monochrome out put?

and second thing How to use ffplay for live preview in android, i am really stuck to do that in android. any solution?

@NikunjParadva You are showing the sepia image from the link you provided (refer to the animation in the link), but you said you wanted monochrome which I assumed meant a grayscale.  Upon viewing the link again I see "monochrome" is actually a grayscale with more contrast. But now it seems you actually want sepia? I don't know anything about Android.

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
What is the CRF range for VP9 conversion using ffmpeg?
My Problem
I am converting a .mov (h264) file to VP9 / WebM using ffmpeg, and I don't know what the CRF numbers mean.
What Have I Tried
I have read this ffmpeg manual about 2-pass conversion, which states that:

To trigger this mode, you must use a combination of -crf and -b:v

In Google's VP9 documentation, I see that:

-crf     Sets maximum quality level. Valid values are 0-63. Lower numbers are higher quality
Note: Other codecs in FFmpeg accept the -crf parameter but may interpret the value differently. If you are using -crf with other codecs you will likely need different values for VP9

However, on the ffmpeg documentation, I only found reference to CRF for .h264, not for the target VP9:

The range of the CRF scale is 0–51, where 0 is lossless, 23 is the default, and 51 is worst quality possible

So, there seems to be a conflict between the VP9 CRF range on Google's site and the ffmpeg CRF range on the ffmpeg site.
My Question
What is the scale for CRF values using ffmpeg to encode in vp9 / WebM format?

libvpx is a software encoder developed by Google, and used in ffmpeg, to encode VP9. And as the Google docs say, 0-63 is the applicable range for encoding VP9 with libvpx.

Tested and confirmed on Linux version of ffmpeg it allows up to 63.


text:
Why does this clip go green and how do I fix it?
I have a 4k clip in after effects, in which I have used the Keylight effect. The shot looks like this (I have to blur the face for privacy reasons):

Anyway, but in some frames, towards the end of the video, the shot flashes briefly to this and back to the original:

This sometimes happens during preview while I am working if I start running out of RAM, but I don't know for sure. Sometimes, the shot stays green like that for quite a while before switching back.
I have had this happen in other after effects projects that were not 4k...
I don't know what is going on. Can someone please tell me how to fix this?

Dose same thing happen, when you export your video? Most probably it is just "preview" thing, because your system can't handle KeyLight for 4K in realtime. Try to flush your media cache, it can help, is preview was rendered wrongly

@Shultc It happens a lot in the preview, but, for the first time, I had it happen after I rendered as well.

Is it just one single frame or more than one frame when you render?

@Capogear I solved the issue! I have already written an answer down below, thanks for taking your time to check out my problem :)

I fixed this issue by changing the renderer from OpenGL to Software based. The problem is still there when previewing in the timeline, but it's gone after exporting.

This happens to me sometimes using Keylight.  I find that if I make a tiny adjustment to the settings (holding down CMD and dragging on one of the controls (eg Screen Gain or Screen Balance), it usually disappears.

When Keylight acts that way, usually emptying the cache helps. If it doesn't help, just add a new adjustment layer to force everything render again.


text:
How does ffmpeg record -timecode in different file formats?
As a followup to Add timecode information to file
ffmpeg documents the -timecode parameter:

-timecode hh:mm:ssSEPff
Specify Timecode for writing. SEP is ’:’ for non drop timecode and ’;’ (or ’.’) for drop.

Two questions come up:

Which container formats support the -timecode option? Are there any that don't?

The option to specify DF/NDF timecode implies the ability to store DF flag in the file alongside the framerate. Is that how it works, or does ffmpeg convert DF timecode to a corresponding NDF frame count and stores that?

FFmpeg only supports timecode in a limited set of formats. They are the MOV family (MOV/MP4/3GP..), MXF family, raw DV and Grass Valley GXF.
How the timecode is stored and flagged is specific to the format. MOV stores a DF flag, integer framerate and the timecode as a rate-adjusted integer frame index. MXF does essentially the same.