FFMpeg: "Invalid audio stream. Exactly one MP3 audio stream is required" I am trying to adapt this FFmpeg script that encodes all video files in a directory, to instead convert mp3 files present in that directory with similar preferences.

The original script:

This works for .MOV -> .MOV encoding.

cd /Convert; for i in *.MOV; do ffmpeg -i "$i" -c:v libx265 -preset veryslow -crf 23 -af "volume=25dB, highpass=f=180, lowpass=f=15000, equalizer=f=50:width_type=h:width=100:g=-15" -c:a aac -strict experimental -b:a 192k "${i%.MOV}-ENCODED.MOV"; done

Adapted for mp3 re-encoding:

cd /Convert; for i in *.mp3; do ffmpeg -i "$i" -af "volume=25dB, highpass=f=180, lowpass=f=15000, equalizer=f=50:width_type=h:width=100:g=-15" -c:a aac -strict experimental -b:a 192k "${i%.mp3}-ENCODED.mp3"; done

Throws errors:

Invalid audio stream. Exactly one MP3 audio stream is required.
Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument.

What is wrong with the script?

You're trying to store an AAC stream in a MP3 container, would be my guess.

Either store the result as "${i%.mp3}-ENCODED.aac" or switch -c:a aac to -c:a libmp3lame


how to improve quality while editing video captured through CamStudio? I used CamStudio Ver. 2.00 to create a recording of a region of my screen. I want to add annotations to it, but when I import it in Movie Maker, the quality is significantly degraded. I tried importing it in Adobe Premier Pro CS, but the quality is still slightly degraded and the video is very jerky. Why is this happening? I have left all the setting of CamStudio to default values before creating the screen capture video.

Most likely, the jerkiness is just your system being overloaded.  Many screen capture programs record relatively large files to avoid loading the CPU while capturing, but this means that the data rates needed for playback can be very high and thus can result in problems with reading the data fast enough to keep up with playback.

As far as the degradation, without a sample of what the degradation looks like, it's hard to tell.  The preview may simply be reduced quality to help with the load.  Also, a final output is going to be slightly lower quality as more thorough compression is probably applied by default and any lossy recompression is going to result in further quality loss, though choosing good compression options should minimize the level of loss.

You can try re-compressing the video from the screen capture and it will likely improve performance, but it will also degrade the quality of the final output.  Alternately, you could use a better NLE (non-linear editor) that might handle it more smoothly through better buffering or graphics card acceleration, but most likely you'll want faster hard drives or more memory to work from if you want to maintain the best quality and smoothest editing experience.


A question about VHS and SVHS I have this situation:

I have two VCRs, one is a simple LG VHS VCR. It is one of the latest VCRs, with 4 heads and is standard (composite, not S-Video output). The quality is really poor.

The other VCR is Mitshubishi MD-3000 SVHS medical VCR. It was bought new. The quality is fine and sharp when playing SVHS tapes, but during VHS playback. I lost a lot of frames. I have only old vhs tapes and some of them really old. I get strange blue and red pictures.

The question is, if I transfer from VHS playing from the LG to SVHS  recording on the Misthubishi, will i get a good quality recording and can I transfer to my video capture card? Or is this only a waste of time?

You can't improve the quality of a bad recording. Especially if it is because the tape stock is flaking off oxide or is stretched, both of which are common problems with older tape stock. No matter what tape format you transfer it to, it will likely just get worse.

You might get about the same quality by digitizing with your capture card. However, you will likely need to use a fairly high bit rate, because analog artifacts have a tendency to cause low bit rate compression to induce even worse digital artifacts. If you use a low bit rate, expect the quality to worsen when you digitize it.


Voice over translation with interjections In a voice over translation (which doesn't need to be lip-synced), like the ones in the news when they interview someone that doesn't speak English, is it ok to keep some interjections if they conveys meaning to the whole sentence?

For instance the following sentence:

  I don't know what it has to do with me or anything ha ha ha

The laughs are saying that on the contrary, the person saying those words does know that it has to do something with her.

Is it ok to add those laughs in the voice over, or should I rewrite the sentence to convey the same meaning without using interjections?

It would help if you add a video with a voice over that uses interjections, so I can hear how the speaker handles those.

The difference between a Dub and a Voice-over is that a Dub attempts to match a foreign language with lip movement and fully replace the audio using new words that don't change the meaning (much) whereas a Voice-over attempts to keep the original audio at a low level to preserve the feeling of the original and can be a bit freer with the translation.

Even though a Voice-over keeps the background audio any music may be replaced with something better accepted (as that type of song) by the audience.

Similarly a Dub while attempting to fully replace the audio may include some original audio.

In the specific case of your question and example: >"I don't know what it has to do with me or anything ha ha ha".

"The laughs are saying that on the contrary, the person saying those words does know that it has to do something with her."

In the case of "News" (for English speakers) you would want to translate accurately and add additional words that it is the Reporter's opinion that the interviewee said the comment in a sarcastic manner or to clearly overdo the sarcasm to avoid a misleading translation. Culture plays a complex role in the result.

A Dub would have the Translator do the laugh and a Voice-over would likely have the original laugh but could have the Translator do the laugh with the additional original laugh synced.

There's a knack to it and getting the right feel for both languages and cultures is difficult.

In 'English speaking culture' a bad dub or voiceover can be part of the feeling/amusement of the work in those that know nothing of the other culture/language; that IS appreciated by the listener but may well be seen as butchering the work of Art from the opposite point of view.

Examples from "The Matrix", in Russian:

These seem to work OK but the background could be a bit louder and the Voice-over a bit less dominating. It's more or a mixing issue (or an ardent desire to make the audio more clearly distinguished) and is slightly overdone.

It's a fine Art, to change and not ruin someone else's work. As difficult to explain in general terms as it is to do and undoubtedly done differently in different parts of the world.

One example is untranslated East Indian movie clips and trailers often trend on YouTube in mostly English speaking countries together with many English comments in the Comment Section - no reason to think enough people understand it in North America for it to trend, more of a curiously I would imagine. I only watch sometimes to see why it Trends so well. Others seem to find a lot of humor, even in serious movies.


How can I sync audio in Premiere with a comp in After Effects? I've got a track in Premiere that's composed of a lot of screen shot stills and there's an audio track that narrates across all of them.

As the narrator talks, I want to illustrate what she's saying with FX from AfterEffects. For instance, when she mentions a specific region in the image, I want to animate in a highlight like so:

But I can't figure out how to sync the audio with the effects. If I replace the one still image with my AE comp, then I have no audio and I don't know when I need to apply the highlight.

The only other alternative I can see is to finish the entire track and then import it, audio and video, into AE and apply the effects. But then I'll have a massive AE track with hundreds of layers, each one targeting a different part of the timeline, and that seems like it will be very hard to manage.

Is there a better workflow or technique that I could use here?

Go to the in and out points of the clip and add edits (ctrl / ⌘k) to the audio track, so that the section of audio underneath the image clip you want to replace is separate (don't worry you can rejoin it later).

Now select this audio and the image clip and replace with an After Effects comp (using the right-click menu and choosing Replace with after Effects composition). The new AE comp will have the selected video and audio clips in it, so you can synch up.

If you don't want your audio to be chopped up, just alt-click the audio that comes from the AE comp and delete it, then stretch the ends of the original audio clip to cover the gap, select the match-cut edit and hit delete and the added edit will disappear.


How to remove an unwanted dynamic object from a dynamic footage I need to remove an object (in my case - a newspaper) that is being hold by a man who moves it a bit from side to side and sometimes it is hidden behind some other objects. How do I do this?

My idea is to use rotobrush in After Effects and somehow fill it using 'content aware fill', but I cannot find anything like 'content aware fill' option. I have seen some tutorials on web about how to  remove an object from a steady background, but this case is more complicated.

PS I don't want to mask it frame by frame in Photoshop.

If the camera and background are both stationary (or perhaps very near stationary) you should be able to extrapolate a background plate from looking for frames where the man and paper are not blocking that part of the shot.  Once you have that background plate, you can mask the newspaper and expose the appropriate portion of the background plate.

This works best if the camera isn't moving, though you may be able to do a camera tracking in the event of small camera movements and still get workable results by matching the position and angle of the background plate to the camera (though it will likely require far more advanced background plates to account for any perspective changes).  With anything more than minimal movement of the camera though, the perspective changes will become too severe to compensate for and you won't be able to build a background plate from previous/future frames.

At that point, you would actually have to build a model of the scene in order to be able to render out the background to fill in with perspective adjustments and that would be far more complicated than re-shooting.

Note that this also does still require frame to frame adjustment of the mask and requires building the back plate by hand as well.  It is still non-trivial, but isn't quite masking frame by frame in Photoshop since the rotoscope tool should work for it.

If shadows are visible on the background as well, then you may need to make some animated masks to emulate the shadows on the background plate as well.  Either way, we're talking about a pretty elaborate operation most likely depending on the quality you need.  If any shadows from the actor are visible though (particularly soft shadows against not flat objects) the quality level will drop like a rock and the complexity will go higher fast.

If you do get hit with shadow issues or background movement issues (and reshooting really isn't an option) you may actually be served best by replacing the background entirely).  If you build a fixed background plate that doesn't have any shadows from the actors, people are not super likely to notice the lack of shadow compared to a gap in the shadow or a reconstructed shadow.  It would involve even further rotoscoping, but might be easier than trying to build a believable shadow.

Reshooting really is the best option, even in the ideal case though.


FPS for the internet HI I want to know how many FPS I should use for a video for the internet. I guess it depends on where I am going to show it? youtube, vimeo, etc?. if you can, please, give me a list of possibilities, thanks!

If your source footage is interlaced, deinterlace it.  If your progressive frame rate is a constant 23.976, 24, 25, 29.97, or 30 fps, then keep the frame rate as it is, unless you require a very low bitrate and want to halve the frame rate.  These are all widely supported frame rates, although other arbitrary frame rates below 30 fps will often work as well.  Many popular devices only claim to support up to 30 fps.  If your source footage has a higher frame rate or you have a variable frame rate, consider converting it to one of these constant frame rates for wider compatibility.  Don't bother if you are submitting to YouTube as they will accept a wide range of frame rates and will re-encode the video for you at various quality levels.

If you are shooting all new footage specifically for the Internet, which will not be combined with existing footage, and you have your choice of frame rate, 30 fps (progressive) is a good and popular choice.  If you will not have any fast motion and want that cinematic look, you may prefer 24 fps.


Exporting with transparent background in premiere I exported a video that starts with fade in and it is transparent so when I put it in another project I won't need to add keyframes every time.

The problem is that the video is "jumping" - watch video here (720p to see better):

I exported with QuickTime format, 32 bit depth and:

"Animation" video codec, 60 fps, Field order: "Upper First", aspect: square pixels(1.0), quality: 100 and the rest as default.
"Animation" video codec, 29.976 fps, Field order: "Upper First", aspect: square pixels(1.0), quality: 100 and the rest as default.
"Animation" video codec, 29.976 fps, Field order: "Progressive", aspect: square pixels(1.0), quality: 100 and the rest as default.
"Apple ProRes 4444" video codec, 60 fps, Field order: "Upper First", aspect: square pixels(1.0), quality: 100 and the rest as default.

I tried all of these export settings and the same problem with everything. Any suggestions?

Do you need to choose "Millions of Colors+" when you select Animation codec, to make sure it generates an alpha channel? Also if it's an animation, you probably want progressive, not interlaced (upper/lower field first = interlaced)


Is possible to use this "map" as a mask? (After Effects) I'm creating animations like the hearthstone golden cards,and I'm tired of masking everything bit by bit.
I know that the hearthstone team used masks (with colors) in order to make the animations,they used a map of colors that was telling the after effects where to apply the effects and where to ignore the effects. Exemples:

Image 1:

Mask 1:

In this case,the blue area had a particles effect,the yellow/green had a glow and the redish was some rotating light effects.

In a nutshell:
How can I tell after effects to make some effects visible only in a certain spot using a color map?

Create an adjustment layer above the base image and apply one of the effects to it (you will have to do this whole process several times with one effect per adjustment layer).
Add the colour mask layer above the adjustment layer and use a key effect (Effects>Keying>whatever…) to make the relevant colour for the effect transparent.
Set the track matte for the adjustment layer to "Alpha Inverted Matte the colour mask layer".

Using an alpha inverted track matte will make the adjustment layer opaque only where the Alpha Matte is transparent, so the effect will only be visible in the areas defined by the relevant colour. Note that when you apply the track matte the layer that is acting as a matte is made invisible (eye icon switched off).


Software or video interpretation to create live dance floor effects I'm trying to create a video feed that will display a special effects rendition of a dance area on a nearby video board.  Much like what many of you have probably seen in a children's museum.  An example of what I'm trying to do can be seen here: http://exs.exploratorium.edu/exhibits/recollections/

I've been searching for hours, but as there isn't a specific search term I can think of, it's extremely frustrating.  I would really appreciate it if someone can point me in the right direction or has another solution to how this can be done.

I think most things like this tend to be specialty installations where the system and image processing is designed by the artist making it.  The exact ways to approach it would depend on the particular type of effect you are trying to produce.  It could be as simple as storing the last few frames and blending them together with an average that is weighted towards the last frame to give it a blur look or various other possible methods of effect.

At it's simplest, you might look at some of the simple effects stuff that some webcams make available, but I'd expect you'd need to do custom work for most of it.  You could also look in to video jokey software that might have some components that could be used for this kind of thing, though I don't personally have a whole lot of experience in that particular arena, so the amount of help I can give is limited there.


Is the difference between full- and crop-frame DSLR footage noticeable and disrupting? For a short film my friend has two Canon DSLR's available, one full-frame and one crop-frame camera (5D Mark II and 550D).

Would it be very noticeable in the end result if footage from both cameras is used after one another?

Can the difference be covered up in post so one can cut from one camera to the other without feeling that something is off?

I expect the difference caused by the sensor to be negligible compared to the change in footage that is caused by the use of different lenses and filming angles. However, I might be overlooking something.

There are several sources of difference, but you should be able to handle them all with some work.  The first difference will be depth of field.  A full frame camera has a shallower depth of field at a given angle of view because it can achieve the same angle of view with a longer lens.  You can compensate for this by using a smaller aperture (higher f/value) for the full frame camera to make the full frame field of view wider, or you can simply ignore it as differences in depth of field between shots won't be that noticeable.

The next major issue will be color reproduction.  Different camera models will likely have a different feel in terms of their white balance.  If they are both balanced to the same grey target, it probably won't be that far off, but there will be some differences in shadow detail and the like, so you may need to do color grading of the footage to match the color of the footage.  This is typical anyway as color grading should be done to achieve the final look you want for the color.

Finally, you will need to be mindful of the crop factor of the APS-c camera which will result in a smaller field of view for similar lenses.  You will also want to consider the relative quality level of the lenses being used on each camera.  These may have a noticeable impact on the overall quality of the final video as well.

So, overall, there shouldn't be any issues that can't be adjusted for, but be aware of what you are doing and be prepared to make some basic corrections in post to adjust the footage to look similar.  You also want to make sure you use similar export frame rates and compression options so as to ensure similar file quality.  It is worth noting that most of these distinctions apply for any two different cameras though, not specifically crop vs ff.


ffmpeg timecode and -r Following up on this question: ffmpeg drawtext timecode source framerate

I want to change the frame rate of a file, scale it down and burn the timecode in one operation.

ffmpeg -i in.mpg -r 24 -vf "scale=-2:360, drawtext=timecode='00\:00\:00\:00': r=24:" out.mpg

When I do this, the timecode is relative to the source frame rate, not the output. So if my input FPS is 59.94, I get this timecode sequence:

00:00:00:02
00:00:00:04
00:00:00:07
00:00:00:09

How can I tell drawtext to use destination frame numbers instead of source?

Use a filter to reduce the framerate beforehand

ffmpeg -i in.mpg -vf "fps=24,scale=-2:360,drawtext=timecode='00\:00\:00\:00': r=24" out.mpg


How to remove honking noise in room for voice over recording I am making some video tutorials on some programming topics. An outside honking noise is interfering with the recordings. The windows and doors are packed, but even then the problem persists.

When recording, as soon as you hear a honk or another noise, stop and go back to the beginning of the sentence you were saying. After your done, go back through your recording in a programme like Audition or Audacity and remove all the half-sentences that were interrupted by a honk, so only complete sentences remain.


After Effects - How do I create animated coding Are there any tutorials on how to create animated 'coding', where it looks like code is being typed in? I want to do something similar to this: http://footage.shutterstock.com/clip-1355773-stock-footage-a-d-animation-about-the-network-data-flow.html. In that video about half way through it pans to a section where it looks like code is being typed in.

I dont know of any tutorials off hand (you will need to do a google) but to animate text to make it look as if its typing on isnt too hard:

Create your text layer
Expand the later (clicking the white triangle next to the name)
Click on the animate button > select Opacity
Now you can use the range selectors to animate what is changed.

There is also a typewriter preset in the Effects and Presets panel which does the same thing.


Weird (interlacing?) artifacts in my rendered video I've been making a YouTube outro for my channel with blender recently.
I exported the outro in blender using the QuickTime container together with the QT / QT Animation video codec at 60fps. Everything worked just fine until I tried to put the outro after a test video using Davinci Resolve 17. The test video I exported with Davinci at 30fps using the mp4 format and h.254 codec had weird line artifacts. I did a bit of googling and discovered that my problem could have something to do with a thing called interlacing.
I think it might be caused by the process that's "scaling down" a 60fps video to 30fps... But I am completely unsure how I can solve this problem...

Any suggestions?

It is very likely that you have exported your render not as progressive but as interlaced. This would explain the strange artifacts you're experiencing. You can try to deinterlace your footage (a quick google search should prompt you with viable methods) or you might need to export your shot again, but as progressive. Interlaced footage was used to minimize the data required for a fluid motion picture broadcast for TV, there is little to no use in our field of use.


Will Canon lens work with a7s II? Will this lens work with the Sony A7s II.

So I am learning which lenses can be used with my new camera. Basically I am looking for a relatively inexpensive zoom lens. I understand that the lens has to not only be e mount but also needs a full frame lens.

Eventhough this lens is canon, will it work with my Sony camera with an adapter. Will the frame be cropped? (I am looking at the Fotodoix adapter). Also will Image Stablization work at all?

Thanks in advance

Ah yes, Canon lenses are a lot cheaper it seems than Sony lenses. With the A7s ii you an use both APS-C and FF (full frame) lenses. With an APS-C lens you have to enable APS-C mode in the camera and it will result in a crop, and in my experience, a slightly noticeable drop in quality/sharpness especially in low light. That being said, APS-C lenses shouldn't be completely written off.

With regards to this lens, I check and it is a full frame lens so you are good to go!

With regards to your choice of adapter. I've personally used the Fotodoix adapter and it works fine. Sure you won't get the extra stops of brightness as you would with the Metabones speedbooster, but its a good low-cost alternative.

Image stabilization. This lens has IS which means that you can turn off IS in the camera and use the built in lens IS, OR you can manually set the zoom distance (mm) in the IS settings of the camera and turn off IS on the lens. The latter can be a pain because every time you adjust the zoom you have to change the mm setting in the camera, but you can always use a custom key to shortcut to it.


Change codec so seek bar works in Windows Media Player The library I work at has been converting VHS tapes to DVDs. They used a Magnavox ZV427MG9. The DVDs play in Windows Media Player, but the seek bar doesn't work. It works fine in VLC Player. It is essential that they play in WMP, because that is the supported institutional standard here.

What would it take to re-encode the DVDs so that the seek bar works? Can it be done in a lossless way, or would the VHS tapes need to be transferred again using a different method?

The problem is probably not WMP but the Microsoft MPEG-1 codec. The straight forward solution other than using a decent player is to use a better codec pack - ffdshow, it feeds WMP through the operating system level. Besides the seek issue you'll probably get better playback performance, and it doesn't require any end-user involvement - they continue to use WMP as usual.

If touching the end-user's machine is entirely out of the question then you'll have to transcode the video to something else. You'll probably get the best results (file size, quality, compatibility) by transcoding to H.264/AAC (mp4), although the encoding process is heavier/longer than alternatives such as MPEG2. You'll need for that ffmpeg and start with:

ffmpeg -i mpeg1filename outputfilename.mp4

There are tons of options that will affect the transcoding quality and speed, and much of your success will depend on trial and error with your specific footage. All that said, your first choice should be to install ffdshow on the end-user machine.


How do I alter just the framerate of a VP9 webm without affecting anything else? I wish to change just the framerate of a VP9 encoded webm file.
The source file has a framerate of 1000 FPS, and I'd like to change it to 30 FPS, without affecting the video/audio in any other way.
I'm a completely blank slate at video encoding/editing. No prior experience/knowledge
Google had no answers for me

Questions:

Is there a way to do it? I'm using Ubuntu 14.04
Will lowering the framerate mean lowered CPU usage?

This has come up before for other codecs / containers.

This DOESN'T work in ffmpeg without transcoding, since ffmpeg unfortunately isn't set up for messing with timestamps on non-decoded frames.

I think you should be able to do it with this (untested):
mkvmerge --default-duration 0:30fps  in.webm -o out.webm

Where 0 is the track-id of the video track.  Check the man page for mkvmerge for more details.  Note that it says that --fix-bitstream-timing-information is only implemented for h.264 currently, so your output will have a vp9 stream that probably still says it's 1000 fps, but the container will have frame timestamps at 30fps.  Players almost always use container presentation-timestamps, though.

If there is audio with the video, I assume it's the right length for the video being 30fps?  Otherwise that's a big stretch needed...


After Effects: Set Alpha/Matte to hdr layer without clamping the values to 0-1 range I have a .hdr sequence as well as a .tga sequence. the .tga sequence contains the alpha channel to be used for the .hdr sequence.

The problem is that if I apply the alpha channel to my hdr sequence using Set Matte or Set Channel, then the color values of my hdr sequence get clamped to 0-1.

How can I mask my hdr sequence without losing the hdr range?

using After Effects CS5

Okay, this tutorial answered my question and provides a workaround.


H.264 on analog camera Years ago I bought Vitamin D Video software for videosurveillance, which doesn' support H.264, but only mpeg-4.

Currently I'm using two cheap analog cameras (RCA, PAL) connected to pc through 1 usb Easycap and another usb cheap pinnacle (I could't have 2 Easycap connected at the same time) and cameras transmit video at resolution of 640x480 pixels.

Now that one camera stopped working, I'm looking for a cheap but little better camera. Lot of the cameras I found have these specifications:
Resolution: 1200 TV Lines, Pal: 960x860 pixels
Video Compression Format: H.264

Some are cameras have Resolution: 2MP 1920*1080 (always PAL)

When I add a new camera in Vitamin D Video, I can choose between these resolutions:
QVGA 320x240
VGA 640x480
XGA 1024x768
SXGA 1280x1024

My first doubt is: can also analog camera use H.264 codecs? Isn't it a codec for digital transmission?

Also, having an usb device in the middle, do I have to worry if usb devices support h.264 or do I have to check if Vitamin D Video supports it, or both?

Any links / tutorials are welcome.

Thanks

Here is a good guide to help you understand the compression.

Go Digital, scrap analog. You won't need a computer to handle the cameras or a video encoder.

Buy a cheap Axis camera and download Axis Companion software, then the camera just needs access to the internet and you can view it from anywhere in your smartphone.

You could also buy any other IP camera and get their dedicated software.

I work at Axis, so I do recommend our product line for stability, availability and quality.


Selecting and extending multiple image durations simultaneously So, I'm not sure I'm even doing this the right way or not but I've got a video and I'm overlaying that with multiple images (up to 20 some in some area's) which pretty much stay on screen throughout the whole video, but alter at certain points, changing places, sizes and rotations etc.

Some of these don't alter and I've grouped those up into compound clips, but the vast majority all remain free, which is a massive pain in the backside when I progress a few minutes through the footage and then need to drag the end duration point of fourteen or fifteen images up to bring everything back onto the screen to see if everything is aligned!

Is there a way to select multiple images and drag the end point of them all together?  I've googled this and can't find anything that works at all...

Select the images - use the select tool (A) to rubber-band them - and hit Control-D. Amend the duration and it'll be applied to all the selected images.


How can I reduce size of video files on a Sony XDCAM? I bought a decent camera (Sony XDCAM) however I have a problem with the output file size.  The .MTS files it makes work fine in my editor, and they create the quality I need, but the 2 gig per 10 minute of footage file size is killing our transfer time.

The quality of my end product is nowhere near this so I know I am shooting way way over the top for what I need to achieve my desired end product.

I look at the settings and I see 1080/50p PS, FX and FH
or
/25p of the same as above FX and FH
or
720/50p FX, FS and HQ

I want to film seminars from the back of the room using the zoom ring on the lens.

All works ok, but the 2 gig per 10mins is killing us. How can I reduce the file sizes to a more workable size?

For $495 you can cut things down to 500MB/10 minutes (or perhaps even less, depending on compression parameters): https://www.blackmagicdesign.com/products/h264prorecorder


How to force Adobe Media Encoder to use 100% CPU and memory? On my machine, Adobe Media Encoder is very slow. It takes 12 hours to render 4 minutes of 1080p video for YouTube (the video is based on Adobe After Effects project with an original MOV file and four effects: curves, remove grain, unsharp mask and hue/saturation.

I noticed that it doesn't use all the memory available, nor does it try to use as much CPU as possible. Here's the actual usage during the encoding process:

Is there a way to speed up the encoding process by convincing the application to use all CPU and all memory available?

As a side note, is it expected to be that slow? I can't possibly imagine movie making companies using it to encode a movie which usually is slightly longer than 4 minutes and has slightly more than four basic effects, even with a whole data center. Removing "remove grain" effect speeds up the encoding from 12 hours to 3:30.

There might not be a way.  Based on your description of the problem, it sounds like the processing is the slow part.  While the video encoder itself is able to do multi-threaded processing, the image processing you are doing may not be able to.  By default, Premiere has always done as much parallel processing as possible for me and I frequently see it hit 99% CPU usage on my hyper-threaded quad core desktop.

The problem is most likely that some of your effects require the result of the previous frame to begin processing on the next frame.  If this is the case, there isn't an easy way to break it down across multiple threads and that would make it impossible to hit 100% CPU usage on a multi-core computer.

Similarly, RAM wouldn't be expected to cap on encoding as it is a stream operation.  There are some things that may need to be tracked over time, but for the most part, it is a stream operation with data going out as fast as it comes in, so there isn't much accumulation of data.

There are two main things that can improve the performance.  The first is GPU processing.  General purpose CPUs aren't really ideal for many audio/video processing tasks.  They are designed for doing a wide variety of general purpose operations, but aren't super efficient at basic operations.  GPUs, on the other hand, are designed for doing simple operations very quickly.  They can often reduce video processing tasks quite a bit.

A further improvement can be found in purpose built hardware.  There are professional cards designed specifically for processing video and provide real time processing and encoding of video.  These are often included in high end professional video editing workstations, but the price can be quite high.  It isn't unheard of for a professional video editing workstation to be able to get up in the $15,000 to $20,000 range or even higher, just for hardware.  They can go for a lot less if you don't mind waiting for renders (I work on a $2,350 system for my video work) but they can also get very high.


What's the quickest, most efficient way of sending files/proxies to a remote editor (using Premiere) over a moderately slow internet connection? Say that I have many gigabytes of files (4GB) and I want to send them to an editor who lives many miles away. The editor will create a new Premiere project file, edit a couple of sequences and send the project file back to me. This all has to be done within 24 hours.

However, my internet connection is slow and it would take 24 hours for me to upload the files.

Does Adobe CC implement a system that would make this process quicker? Is there a standard workflow that solves this problem?

The solution I have in mind is to send all the files to Encoder and save the output to the cloud. The editor would work with these proxy files. Then once they have sent me the project file, I can link the project to the original clips (I am not exactly sure how I would do this). Is there a better solution?

Sending proxies is also a well established workflow if you choose to go that route. “Offline” and then “Online” editing.

See the following link for explanation on how to correctly create the proxy files with Premiere Pro

https://helpx.adobe.com/premiere-pro/kb/ingest-proxy-workflow-premiere-pro-cc-2015.html#CreateProxies

Send your Premiere Project and proxy files to your remote editor and receive back the completed project. Import their sequence into your original project and as long as they did not alter the proxies in any way before editing you should be able to reconnect the original media easily.


5 channel video installation For my graduation project (a spatial documentary installation), I need to find a system to play 5 different video's simultaniously, all connected to a projector.

So I have 5 projectors and 5 seperate video's.

I already tried the program Multiscreener. In this case I connected every projector to a macbook and every macbook ran Multiscreener. One macbook is the master and regulates the other 4 macbooks.

However, I was very depended of the network, and the wifi was not strong enough.

Is there any other solution to this? Of course, my budget is not big.

Thanks in Advance!
Julia
Royal Academy of Arts graduate

A Macbook pro would be about the most expensive device you could possibly use as a playback machine, but I'm guessing you didn't buy them for the installation…

There are several devices that are designed specifically for the purpose of video playback, for example these units by Brightsign. They're used in the museum where I work, and are popular for retail display. They can synch across networks.

An emerging competitor is the Intel Nuc, which his probably a bit cheaper than the brightsign. They're a bit more general-purpose than the brightsign, but they're becoming popular for exhibition displays and signage. The latest major installation that I did at work was a blended three-screen, seven audio channel video installation plays smoothly on a NUC with synched lighting effects. I'm not sure what the software is that runs it all, I just made the content.

Going even cheaper there's the Raspberry Pi, basically it's a small very cheap computer that has HD video playback capability. Whether there is software to do what you want it to I don't know. I know they are also used at my museum for interactive video displays, but I don't know if you can connect several to synch playback. VLC might be able to do it.

You'll probably find more options if you look for digital signage players. Like this one, about which I know nothing.


How do I remove night footage from 300 days of Time lapse video I want to remove night footage from a Timelapse video of construction over 300 days. So I want to remove 300 nights from this video. How do I do it in an easier way? Is there a option to cut video at predefined frame/points after regular intervals in one single command? I want to avoid manual labor. I am using adobe premier pro cc 2014

Using ffmpeg, a command line tool, you can use

ffmpeg -i in.mp4 -vf select='trunc(mod(t+2,3))',setpts=N/FRAME_RATE/TB -crf 23 out.mp4

The select filter is used on the video stream. This filter evaluates the supplied expression on each frame and keeps the frame if the expression evaluates to a non-zero value.

The expression used is trunc(mod(t+2,3)). The modulo function returns the remainder of the first operand when divided by the second. The first operand here is the timestamp of the evaluated frame. The truncate function truncates that result to an integer. If it is zero, the frame is discarded, else kept.

e.g. for a 25 fps video

t       t+2      mod(t+2,3)       trunc(mod(t+2,3))    select
0.00    2.00     2.00                    2             KEEP
0.04    2.04     2.04                    2             KEEP
...
0.96    2.96     2.96                    2             KEEP
1.00    3.00     0.00                    0             CUT
1.04    3.04     0.04                    0             CUT
...
1.96    3.96     0.96                    0             CUT
2.00    4.00     1.00                    1             KEEP
...
3.00    5.00     2.00                    2             KEEP
...
4.40    6.40     0.40                    0             CUT
...

Since you want to 'collapse' the video by removing the night time portions, the setpts filter is added to make all the kept frames continuous i.e. after the frame at 0.96, the next kept frame (2.00) will have the new timestamp of 1.00.

The video has to be recompressed since a filter has been used. For MP4s, default codec is H.264 and default encoder is libx264. The -crf 23 sets the bitrate control method (CRF) and value (23). Lower values retain more of the source quality at the expense of larger size. 18 to 28 are typical values.

You can get a ffmpeg binary for your platform from https://ffmpeg.org/download.html. Always get the latest nightly or snapshot build.


Removing / Overlaying logo on mp4 video format with ffmpeg on linux I'm trying to remove logo from an .mp4 video format with ffmpeg on linux machine without re-encoding (for preserving the same quality) with the following command:

ffmpeg -i input.mp4 -vf delogo=x=270:y=190:w=40:h=40 -c:a copy output.mp4

and it give me the following errors:

Unrecognized option 'vf'

then a new error came up:

Unable to find a suitable output format for 'delogo=x=270:y=190:w=40:h=40'

ffmpeg always updating and it seems that they change command line arguments alot so any material or tutorial i find online seems to get out-dated quickly

I review their website documentation but can't get it to work, I think i'm missing something...?

so what is the correct command line in linux shell
also, how to view or find out exactly the area coordinates to be removed before actually removing logo/overlaying it and keep testing every while

and how to overlay a solid color in certain area instead of removing logo transparently as well?

Your command is missing double quotes around the filter definition :

ffmpeg -i input.mp4 -vf "delogo=x=270:y=190:w=40:h=40" -c:a copy output.mp4

(as explained in FFmpeg filters documentation)

Nevertheless, this filter will decode and re-encode your video stream.


Does the Sampling Rate affect the syncing process to a video source? I have recorded interviews using a point and shoot camera for the video and my android phone with Smart Recorder. The camera records in MOV and is uncompress with mono audio. Then I use my smartphone to record myself and the interviewee, since the camera is far away to hear us. The audio is in .wav and I use Premiere Pro to align them. While it does work at the start, sometimes it magically gets out of sync all of the sudden, so I have to cut the audio so that I can catch up.

I am puzzled, and would like to have your insights on how to keep this at a minimum if possible, eliminate it. My theory is that sampling rate is an issue. If this is incorrect, please advice otherwise.

You can tell which one gets out of synch like this:

Set up your camera and your phone like you usually do. Put a clock that shows seconds right in front of the camera. Then, even though this sounds boring, record yourself counting off the seconds.

Synchronize the video and audio in Premiere Pro like you usually do. When they get out of synch, check whether the video lost a second, or whether the audio lost a second. You should be able to tell based on the repetitive rhythm.

Then, as @AJHenderson pointed out, you should replace the piece of equipment that failed. I agree that a camera that can accept external audio input is probably the best option, though it's expensive.


ffmpeg add audio to video not working in below command in below command final video is created but sound of second video is muted after some time.
here duration of audio and video is same.

ffmpeg -y -i intro.mp4 -i videoaction.mp4 -i outro.mp4 -i audio1.mp3 -i vcs-watermark-video.png -filter_complex "[0:v]drawtext=fontfile=FutuMd.ttf: text=helloworld: x=300: y=450: fontsize=40: fontcolor=white: enable='between(t,2,5)',fade=t=out:st=5:d=1,setpts=PTS-STARTPTS[v0]; \
[1:v][4]overlay=W-w-5:H-h-5,fade=t=in:st=0:d=1,fade=t=out:st=63:d=1,setpts=PTS-STARTPTS[v1]; \
[2:v]fade=t=in:st=0:d=1,setpts=PTS-STARTPTS[v2]; \
[3:a]volume=enable='between(t,36,44)':volume=-10dB[3a];[1:a][3a]amix=inputs=2:duration=shortest[maina]; \
[v0][0][v1][maina][v2][2]concat=n=3:v=1:a=1[outv][outa]" -vcodec libx264 -c:a aac -ac 2 -map "[outv]" -map "[outa]" finalvideo.mp4

The audio.mp3 is likely shorter. Set duration=first in amix.


When import video in final cut pro it’s uses wrong resolution I have a .mov video exported from Photos app (it’s the video part of live photo). The original video resolution is 960x720:

And in Quick Time player it looks right:

In Final Cut Pro I have a project with the same resolution:

And when I add the .mov video into timeline (via drag & drop) it squeezes it like this:

I'm a total newbie in FCP so maybe I missed something obvious. How to make FCP to not squeeze the video? (I’ve tried Spatial Conform -> Type -> None but it does not help: it cuts the sides and enlarge the video height while keeping wrong aspect ratio)

You were on the right track with Spatial Conform -> Type -> None, but you also need to adjust either the fill or the sequence settings.  You are trying to put a round peg in a square hole and FCP is trying to guess how you want it to make the peg fit.

You've told it you don't want it to stretch the peg. (This makes sense as a default because some formats do not use square pixels, such as anamorphic widescreen or NTSC DV.)  Now you need to tell it either that you don't mind if the peg is too small for the hole (prevent scaling to fill) or adjust the shape of the hole (altering the sequence/timeline settings).

I unfortunately can't give you specific details on how to do this in FCP as it's been quite a while since I last used it seriously, but the general concepts are basically the same across NLEs.


Is it possible make in Vegas Pro? I need to create a brief presentation of my mobile app. I use Vegas Pro. But I have weak skills. I want to do something like this: the text and the animated image are interchanged.

I would like to make something like this:

It is possible make with Vegas Pro? Or is it better to use another application?
any advice and suggestions - there is already no time :)

It is possible but animations are much better suited for a speciality program like After Effects. Vegas on its own will only provide you basic video effects and nothing close to animations like these.


Do I need an attenuation cable between my audio recorder and the RCA out of a DJ's mixing board? I'm filming a wedding in a couple weekends and I'm double checking everything to make sure that I'm ready.

I'm going to be plugging directly into the RCA out of the DJ's mixer board at the reception to capture the audio for the speeches and toasts, but I'm curious as to whether or not I'll need an attenuation cable between the recorder and the RCA-to-3.5mm cable that goes into my Tascam DR-07 MkII.

Thoughts? And if I do need one, do you have a recommendation as to which one I should buy? I already own a Sescom Tascam, male-to-male cable that goes from my recorder to my 5D MkII, so should I/could I use this with an RCA cable?

Copied from the Tascam manual:

Analog audio input/output ratings
MIC/EXT IN jacks (supporting plug-in power)
Connector: 1/8” (3.5 mm) stereo mini
Input impedance: 25 kΩ
Nominal input level: –20 dBV
Maximum input level: –4 dBV

This Tascam doesn't even take nominal consumer level without distorting (-10dBV).
Most likely on an RCA output from a mixer you'll have -10dBV, so you'll need to pad the level by at least 10 dB (nearly 22dB if the DJ mixer outputs professional +4dBu).

But, the Tascam lets you trim level before recording, so it looks like all the pad you need is in the Tascam itself.
Just make sure you set that beforehand to a level around the -12dB mark on the Tascam's meters and that you take out the Auto Gain, which always ruins levels. Check the manual which explains how to do these clearly.


FFMPEG Only converting at 1.5-2 FPS I am a newbie to this forum and am hoping I can get some insight and assistance with an issue I am having. I wrote a script that takes all of my captured videos (.avi) and converts them to mp4 using ffmpeg. When I run the script by double clicking the file, it runs good at about 45 FPS using about 85% of my CPU. I created a task in Windows 10 Task Scheduler and when I run the file from there, it only converts between 1.5-2 FPS utilizing only 3% of my CPU and I have no idea why. Obviously, that conversion rate is not acceptable. Here is the script file which also shows all the ffmpeg parameters I have passed in:

@echo off
for %%a in ("D:\Aaron Cirlin\Videos\Captured Movies\*.avi") do
"C:\Program Files\WinFF\ffmpeg" -y -i "%%a" -itsoffset 0.765 -i "%%a" -map 1:0 -map 0:1 -crf 20.0 -vcodec libx264 -filter:v scale=1280:720 -preset slow -acodec libvo_aacenc -ar 48000 -b:a 128k -coder 1 -flags +loop -cmp chroma -partitions +parti4x4+partp8x8+partb8x8 -me_method hex -subq 6 -me_range 16 -g 250 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -b_strategy 1 -threads 0 "D:\Aaron Cirlin\Videos\Movies\%%~na.mp4" & del "%%a"
pause

Does anyone know why it would that much slower via the Task Scheduler?

Any help would be greatly appreciated.

I was able to change the priority level by exporting the task and editing the XML file, then deleting the initial task and re-creating task by importing the edited XML file.  Worked like a charm.


Video file size for web use What is the best video size for let's say a 5 minute video. I want to host my own videos. So, I want to understand more.

What is an acceptable size?

First off, why host your own videos? YouTube, Vimeo and many others have awesome embed tools, and unless you have a couple of GB to waste on your host, they're very practical.

But to your question, 1080x720 is perfectly fine, and creates a reasonable file size. 1920x1080 is pushing it a little, and 4K is just overkill.

I'm a web developer too, and when I have to host videos for a live background, featured video, etc, 1080x720 is my go to resolution, and I host things of larger size on YouTube since they'll take something like a 4K video, and give viewers the option of a resolution as low as 360p.


GoPro looping settings I'm using my GoPro Hero3 White as a dashcam.
Setting it to overwrite files, I encountered 2 strange things:

5min settings give me 1min files, and 20min settings give 5min files.
The counter stops at 05:00 / 20:00 even though it goes on filming.

Can anyone help me understand why is this happening and how can I change it?

Thanks, Ronen.

This is as it is described in the manual. These modes are continuously filming, but only saving the last 5min or 20min. This is done by splitting the part up in serveral files, and the oldest one will be overwritten. To your second question: What do you mean by 'counter'?


Batch conversion into a new folder with ffmpeg I'm trying to batch encode 45 video files, and copy the encoded files into an existing subfolder called "encode"

I've used the suggested code from this question (https://stackoverflow.com/questions/5784661/how-do-you-convert-an-entire-directory-with-ffmpeg) But, I don't know how to capture the original file names (with spaces and punctuation) and use that as the new file name in the new directory.

Here's the code I'm using so far:

for i in *.mp4;
  do name=`echo "${i%.*}"`;
  echo $name;
  ffmpeg -i “$i” -vf "scale='if(gt(a*sar,16/9),640,-1)':'if(gt(a*sar,16/9),-1,360)',pad=640:360:(ow-iw)/2:(oh-ih)/2,setsar=1" -vcodec libx264 -b:v 1600k -bufsize:v 1600k -r 30000/1001 “encoded/$name.mp4”
done

It's giving me an "invalid argument" error message when I run it - probably because I haven't specified the names correctly(?)

The ffmpeg code that I'm using does work (I can encode individual file) but I haven't figured out how to batch encode the entire directory.

If anyone can let me know what I'm doing wrong, I would love to know!

Thank you!

The accepted answer in the question you're referring to uses additional unnecessary processes, legacy code, and doesn't prevent globbing or word splitting.

See the second answer which is shorter, simpler, and more efficient:

for f in *.mp4; do ffmpeg -i "$f" <additional options> "encoded/${f%.*}.mp4"; done

Secondly, don't use fancy quotes which will cause errors, so instead of “$varible” use "$variable".


Exported the same video twice with the same settings yields files with different hashes When I export an Adobe Premiere project to video twice with the same export settings, why does it yield videos with different file hashes?
Shouldn't the files be identical and have matching hashes? Where is the source of randomness coming into the encoding process?

The encoding settings

These two files were encoded using identical settings a few seconds apart, note that the files are not actually identical.

Yes, your observation is correct and everything works fine. Even if settings are identitcal, the file hashes will always be different.
The reason is quite simple: XMP metadata which is embedded in the files.
Such metadata entries which are often different are:

time stamps (not only the date but the time too)

creation date
modified date
metadata date

IDs

document ID
instance ID
original document ID

A bit of binary data in the header is different too. All the rest, meaning the actual video and audio data is the same. The encoding algorithms are working deterministic - that means, given the same input they produce the same output. At least those I've tried for my example. This doesn't have to be true in other cases.


Why is MP4 black background gray in Internet Explorer 11? I exported a Flash movie with a black background to MOV, and converted the MOV to mp4 (H.264). In Quicktime player, the background of the MOV and mp4 are black. In native players in Firefox and  Chrome (desktop) and Safari and Chrome (ipad), the background of the mp4 is black. In IE11... it's dark gray.

The actual gray is rgb 16 16 16, hex #101010.
Any ideas?

The solution was to turn off IE-11's "hardware acceleration" feature which (says here) "lets Internet Explorer move all graphics and text rendering from the CPU to the Graphics Processing Unit (GPU)".

I disabled that under Tools -> Internet Options-> Advanced by selecting "Use software rendering instead of GPU rendering".  It's pictured here

Then, after obligatory re-start (of IE), all the grays were black and colors bright in IE-11.
Now, how I communicate this knowledge to IE users viewing my washed-out videos is a tough new question.


Why is ffmpeg producing a background? I am a chemist and since a few weeks I am making short videos with ffmpeg by combining images, I am using the command below (for some reason without profile:v high, powerpoint crashes when I would import a video).
ffmpeg [...] -r 24 -preset slow -profile:v high -level:v 4.0 -pix_fmt yuv420p -c:v libx264 -crf 8 output.mp4

The images are from a raytracer and their background is perfectly white (I checked), however the output movies have a slight background (some kind of beige). Why ? Is it from one of my parameters ? I would like if possible to have a perfect white background while keeping high quality,

I already tried to delete the background of the images with ImageMagick, it is working but it lower the quality.
Thanks

Its impossible to say for sure, Because you dont say what your input format is, But there is most likely a color space/range conversion occurring.
You may may need to set the those values. you may need to specificity the agues to use for the conversion as well.
This post should explain it.
https://mux.com/blog/your-browser-and-my-browser-see-different-colors/
I don't cover color range in that post. But you most likely want to use full range.


Tilting videos while not leaving black bars I have a video where the character is looking towards the left of the screen. I want to rotate the video in such a way so that the character looks towards the right side while not changing any proportion.

Make sure your video is in a Sequence.
Go to the Effects tab, and select Horizontal flip.
Drag the Horizontal Flip effect onto your video clip in the timeline.


How to disable overwriting in Premiere Pro cc? whenever I drag a clip across the timeline and place it on top of another, the entire thing or a portion of it gets deleted, how do I disable this feature?

(I know the general work around to do this is not to do it but I would like the security that if I missed that I accidentally dragged another clip on top of another and then deleting a little bit that it won't happen)

There is couple solutions:

Use Alt+ Drag
Use Track Select Tool to move everything before and after dragging
Use Insert button (,) button from Source monitor

Good luck!


ffmpeg stops exporting images when using overlay I am using ffmpeg to stream first 35 seconds of a movie over udp ..
in the process of showing a preview of this movie while streaming i reached this command

ffmpeg.exe -re -t 00:00:35.000 -i input.mp4 -i overlay.png -filter_complex "[0:v]scale=1200:720[scaled];[1:v]scale=150:-1[overl],[scaled][overl]overlay=main_w-overlay_w-10:10[logo]" -map "[logo]" -map 0:a -c:a copy  -c:v libx264 -f mpegts udp://224.2.2.1:1234 -vf fps=4 -s 320x240 -update 1 -y preview.jpg

the problem is .. if i don't use the overlay i get my preview.jpg perfectly, but when i do .. ffmpeg streams ok but without creating the jpg image ..

any idea ?? please.

thank you.

The final processed stream has to be cloned and mapped, so for the given command,

ffmpeg.exe -re -t 00:00:35.000 -i input.mp4 -i overlay.png -filter_complex "[0:v]scale=1200:720[scaled];[1:v]scale=150:-1[overl];[scaled][overl]overlay=main_w-overlay_w-10:10,split=2[logo][preview];[preview]fps=4,scale=320x240[preview]" -map "[logo]" -map 0:a -c:a copy  -c:v libx264 -f mpegts udp://224.2.2.1:1234 -map "[preview]" -update 1 -y preview.jpg

(The issue corrected here has nothing to do with the updating of a single image).


convert horizontal side by side to vertically stacked 3D video I have seen this and this post explaining how to crop and stack videos using ffmpeg.

My question is - is there an easy (preferably one step) way to turn a horizontally stacked video into a vertically stacked one?

And is there a Linux-way to re-encode given 3D video formats into others?

Edit:

with Mulvyas help I wrote a script which does the converting stuff and creates a text file with meta information needed by the Gear VR video player.

Note: you need a recent version of ffmpeg for the vstack filter - version 2.6 which is installed with Fedora 22 is too old. Version 2.8.3 has vstack available.

Just integrate all filtering into one command:

ffmpeg -i input.mp4 \
-filter_complex "[0:v]crop=in_w/2:in_h:0:0 [top]; \
[0:v]crop=in_w/2:in_h:in_w/2:0[bottom]; \
[top][bottom]vstack[outv]" \
-map "[outv]" -map 0:a -c:a copy output_3dv.mp4

Edit: this command below scales and pads the output to 2000x2000

ffmpeg -i input.mp4 \
-filter_complex "[0:v]crop=in_w/2:in_h:0:0 [top]; \
[0:v]crop=in_w/2:in_h:in_w/2:0[bottom]; \
[top][bottom]vstack,\
scale=iw*min(2000/iw\,2000/ih):ih*min(2000/iw\,2000/ih), \
pad=2000:2000:(ow-iw)/2:(oh-ih)/2[outv]" \
-map "[outv]" -map 0:a -c:a copy output_3dv.mp4


After affects transition help I need to do a transition that puts random circles that expand over a video but each circle needs to start at random times.

Does anyone know the best way to achieve this?

You could use the particle engine CC Particle World.

Set the particles to be shaded spheres, adjust the X&Y radius of the producer to fill the screen, adjust the birth rate to produce particles at the rate you need, turn off gravity and velocity.  set the end size to be so big that they fill the screen.  Set the Particle Transfer Mode to "black matte", and you'll get something like this:

then precomp the particle layer, moving everything inside the comp

Now add your two layers (the files for before & after the transition). Put the "before" layer at the bottom, then the "after" layer, then the "particle" comp layer.
Turn of the particle layer by clicking the eyeball.
In the example below, I'm using a pink and blue layer for the before and after.

Add a "Set Matte" to the "after" layer, and set the "Take matte from layer" setting to your particle layer.

When you drag through the comp, your "before" layer should reveal the "after" layer via your circles.


OBS Studio multitrack audio exports only one track I have OBS Studio configured to combine different audio inputs into several audio tracks/channels using its built-in mixer. But when OBS saves a local copy of the stream, the video file only has one audio track, not the several I configured. I'm exporting the video to MKV file, as I thought it would be the most versatile format and had support for multiple audio/video tracks.

Is this a configuration issue or is there something else to keep in mind? Perhaps a different export file format would be better? I'd still like to retain all (multiple) audio tracks within the single exported file.

In OBS Studio go to Settigns->Output->Recording and under Recording Format you have Audio Track. You have to enable audio tracks that you set up in audio mixer. You can also name them in Audio tab.


Syncing Multiple Audio Streams With One Video Stream (FFMPEG) I'll try and keep this as simple as possible, and thanks for any help.

I have two PC's one that I'm gaming on, one that I'm recording on. I also have two RME audio cards (one in each respective PC) hooked up to each other to share audio between the PC's. My main display is hooked up to a displayport splitter that splits to my recording PC's capture card and I'm also routing my game audio from the sound card in my gaming PC to the capture PC's audio card.

I'm running discord on the capture PC and have my game audio, discord audio, and my personal mic all on separate input channels. I have the capture card video and the game audio channel output to the same MP4 file and then have my mic audio and the discord audio output to two separate WAV files. This way I can choose to omit the voices from the video so only game audio can be heard and or I can mix the volumes independently after recording. This way I can make sure the discord, my voice, or the game audio isn't overwhelming in the final product.

Everything seemed to be working great, until my capture card dropped a few frames over the course of 3 hours. The resulting footage had out of sync audio and video, the discord audio and my mic were also now out of sync with the game footage. After searching around for a very long time it seemed the solution was -vsync 1 but it didn't seem to work, here was my code for that:

ffmpeg -guess_layout_max 0 -y -f dshow -video_size 3440x1440 -rtbufsize 2147M -pixel_format nv12 -r 100.00 -vsync 1 ^
-i video="Video (00 Pro Capture HDMI 4K+)":audio="Analog (1+2) (RME Fireface UC)" -map 0:0 -map 0:1 ^
-codec:v h264_nvenc -pix_fmt nv12 -b:v 250M -maxrate 250M -bufsize 250M -b:a 320k -ac 2 ^
-segment_time 600 -segment_wrap 9 -f segment C:\Users\djcim\Videos\PC\PC%02d.mp4 ^
-guess_layout_max 0 -f dshow -rtbufsize 100M -i audio="Analog (3+4) (RME Fireface UC)" -map 1:0 -b:a 320k -ac 2 ^
-segment_time 600 -segment_wrap 9 -f segment C:\Users\djcim\Videos\PC\Voices\Theirs\TheirsPC%02d.wav ^
-guess_layout_max 0 -f dshow -rtbufsize 100M -i audio="Analog (5+6) (RME Fireface UC)" -map 2:0 -b:a 320k -ac 2 ^
-segment_time 600 -segment_wrap 9 -f segment C:\Users\djcim\Videos\PC\Voices\Mine\MinePC%02d.wav

That's all one line of code, carrots are line breaks. But after playing for a while and dropping some frames the problems persisted. I was under the impression that -vsync 1 forced the desired frame rate, duplicating frames to make sure the audio stayed in-sync. So I thought maybe I had it in the wrong place and tried this:

ffmpeg -guess_layout_max 0 -y -f dshow -video_size 3440x1440 -rtbufsize 2147M -pixel_format nv12 -r 100.00 ^
-i video="Video (00 Pro Capture HDMI 4K+)":audio="Analog (1+2) (RME Fireface UC)" -vsync 1 -map 0:0,0:1 -map 0:1 ^
-codec:v h264_nvenc -pix_fmt nv12 -b:v 250M -maxrate 250M -bufsize 250M -b:a 320k -ac 2 ^
-segment_time 600 -segment_wrap 9 -f segment C:\Users\djcim\Videos\PC\PC%02d.mp4 ^
-guess_layout_max 0 -f dshow -rtbufsize 100M -i audio="Analog (3+4) (RME Fireface UC)" -map 1:0 -b:a 320k -ac 2 ^
-segment_time 600 -segment_wrap 9 -f segment C:\Users\djcim\Videos\PC\Voices\Theirs\TheirsPC%02d.wav ^
-guess_layout_max 0 -f dshow -rtbufsize 100M -i audio="Analog (5+6) (RME Fireface UC)" -map 2:0 -b:a 320k -ac 2 ^
-segment_time 600 -segment_wrap 9 -f segment C:\Users\djcim\Videos\PC\Voices\Mine\MinePC%02d.wav

I actually have yet to drop a frame since then... is this my code causing this? With vsync working correctly would it no-longer display dropped frames in the console? Am I mapping correctly in conjunction with vsync? It almost seems like with -map 0:0,0:1 I'd be syncing the audio to the video but what I would really like is if I drop frames just take the last successful frame and duplicate it. That way (theoretically) the other two audio channels would stay in-sync too... I'm just trying to make sure that I don't screw up an important recording before it happens.

Thanks for any help.

Just thought I'd let you guys know that I got this working.

I needed to use -framerate instead of -r to get it to duplicate dropped frames, the reason I wasn't using -framerate in the first place is because it would spam the message "past duration too large" and the video wouldn't play back after exiting the recording. I also used an audio filter to delay the other channels so they they would start at the the same time as the video. I had to use -af "adelay=200|200" instead of -filter_complex "[1:0] adelay=200|200 [1:0]" for some reason. Ended up being cleaner anyways and it worked but I don't understand why the -filter_complex wasn't working an the -af was. I went ahead and applied -vsync 1 and -async 1 but I'm not quite sure if that is default and therefore redundant. Lastly I used -preset llhp (low latency high performance) which seemed to decrease the amount of dropped frames. The result - everything stays in-sync even if I drop frames and all tracks "start" at the same time:

ffmpeg -guess_layout_max 0 -y -f dshow -video_size 3440x1440 -rtbufsize 2147.48M -pixel_format nv12 -framerate 200 ^
-i video="Video (00 Pro Capture HDMI 4K+)":audio="SPDIF/ADAT (1+2) (RME Fireface UC)" -map 0:0,0:1 -map 0:1 ^
-preset: llhp -codec:v h264_nvenc -pix_fmt nv12 -b:v 250M -maxrate:v 250M -minrate:v 250M -bufsize:v 250M -b:a 320k ^
-ac 2 -r 100 -async 1 -vsync 1 -segment_time 600 -segment_wrap 9 -f segment C:\Users\djcim\Videos\PC\PC%02d.mp4 ^
-guess_layout_max 0 -f dshow -rtbufsize 2000M -i audio="Analog (3+4) (RME Fireface UC)" -map 1:0 -b:a 320k -ac 2 ^
-af "adelay=200|200" -segment_time 600 -segment_wrap 9 -f segment C:\Users\djcim\Videos\PC\Voices\Theirs\TPC%02d.wav ^
-guess_layout_max 0 -f dshow -rtbufsize 2000M -i audio="Analog (5+6) (RME Fireface UC)" -map 2:0 -b:a 320k -ac 2 ^
-af "adelay=825|825" -segment_time 600 -segment_wrap 9 -f segment C:\Users\djcim\Videos\PC\Voices\Mine\MPC%02d.wav

I was able to get the rid of the "past duration too large" warning by increasing the input framerate to 200, I have absolutely no idea why this would fix that message. Put -r 100 on the output to make sure it came out as 100FPS which is what I actually wanted the framerate to be. I am confused as to why several parts work the way they do and can’t find answers but nonetheless it’s working.


Why sometimes I can set framerate sometimes I can't? Why I get the following when I try to get camera feed from Logitech webcam?

The driver changed the time per frame from X to Y

Sometimes it happens sometimes it doesn't.

How should I resolve this problem?

Note that camera has many different pixel_formats supported and they have different framerates specification. Check the pixel_format you used, it is likely that the default pixel_format does not support the framerate you want.


Playing in time line stops when the bar touches the mark out point Basically my questions is: what is this orange bar attached to the playing cursor and how can I remove it to make the cursor stop at the marker when I'm playing selection. Many thanks!

The orange bar is the frame indicator. In the screenshot, the playhead is displaying the last frame of your in/out range.

If the playhead stopped one frame further, as you suggest, it would be showing the next frame AFTER your in/out range (and could be confusing, although obviously this method is too!).


adding depth and motion to images for video I was struck by some of the effects in the "god made a farmer" superbowl commercial... and was curious what programs are out there that let you take an image, and in a video, produce the illusion of...

the sky moving in the background
false depth as the camera "pans" across the image (making different layers in the image overlap)

Any ideas?

I think you're referring to the (false) parallax effect. This guy has applied it to stationary photographs in a similar way as in the "God made a farmer" video and in the video description he explains the global steps he has taken.
Here's a quote from his description concerning the production process:

  First, the image is cut into multiple sections, each cut section being
  at different distances from the camera. After the photos have been
  sliced into multiple layers and the holes filled in (yes, you have to
  fabricate some of the background, a slow but usually pretty easy
  process in Photoshop) the layers are then brought into After Effects
  and separated in Z-Space (pushed away from the viewer in 3D space). If
  the layers are put approximately in the correct distance from the
  virtual camera, mimicking the distance from the original image, a
  believable parallax "video" can be made with simple virtual camera
  moments.


Is coaxial cable an option for distances of around 150 m to transfer SDI digital signals Is coaxial cable an option for distances of around 150 m to transfer SDI digital signals?

If coaxial cable can be considered an option for a distance of 150 m, is the cost of deploying coaxial cable, including any special connectors and amplifiers, larger than the cost of deploying fiber optic cables for the same distance of 150 m?

I know, this might be a very broad/generic question, but we are in the process of decision-making about our tech stack.

300 Feet is about as far as you can take SDI or HD-SDI; before it needs to be reclocked. So no, 150 M is too far. Also the quality of cable; and if it's being run in parallel with other cables that cause interference can affect how long you can go.

You can reclock at the half way point using a distribution amplifier, and you'll lose 1 frame of sync for each time you reclock.

Your next best option is to run Fiber Optic; which you can run for 25 miles without having to deal with any signal loss issues.


How to create MPEG-DASH variants at resolutions where one dimension is not a whole number in pixels? I've created a bunch of variants and a DASH manifest for Sintel, which more or less works, but does not pass validation. The issue is when I want to scale a video to a specific width, but the height that maintains the aspect ratio is not a whole number - or vice versa. For example, I've tried 640:-1, 640: -2, and 640:290 as the value of "-vf scale=", but either ffmpeg rejects it, or validation fails. How can I transcode to these resolutions?

Error log from conformance site:

### error: moov-1:trak-1:tkhd-1
### Width in TrackHeaderBox is not matching with out of box width information
WARNING: Sample description width 2560 not the same as track width 2558.532104
Warning: Unknown atom found "pasp": video sample descriptions would not normally contain this
WARNING: unknown mvex atom 'trep'
WARNING: unknown/unexpected atom 'meta'

My ffmpeg and MP4Box commands (OSX):

OUTDIR="sintel-transcoded"
#VIDOPTS24="-an -c:v libx264 -r 24 -tune animation -force_key_frames expr:gte(t,n_forced*3)"
VIDOPTS24="-an -c:v libx264 -tune animation -x264opts keyint=72:min-keyint=72:no-scenecut -vsync passthrough"

mkdir -p $OUTDIR

ffmpeg -i $SOURCEDIR/sintel_4k.mov \
$VIDOPTS24 -vf scale=320:146 -profile:v baseline -level 3.0 -crf 31 -maxrate 170k -bufsize 170k $OUTDIR/sintel_320.mp4 \
$VIDOPTS24 -vf scale=480:-2 -profile:v baseline -level 3.0 -crf 30 -maxrate 330k -bufsize 330k $OUTDIR/sintel_480.mp4 \
$VIDOPTS24 -vf scale=640:290 -profile:v baseline -level 3.1 -crf 30 -maxrate 500k -bufsize 500k $OUTDIR/sintel_640.mp4 \
$VIDOPTS24 -vf scale=640:290 -profile:v baseline -level 3.1 -crf 25 -maxrate 1000k -bufsize 1000k $OUTDIR/sintel_640_hq.mp4 \
$VIDOPTS24 -vf scale=960:-2 -profile:v main -level 3.1 -crf 19 -maxrate 2800k -bufsize 2800k $OUTDIR/sintel_960.mp4 \
$VIDOPTS24 -vf scale=1280:582 -profile:v main -level 3.1 -crf 19 -maxrate 4000k -bufsize 4000k $OUTDIR/sintel_1280.mp4 \
$VIDOPTS24 -vf scale=1920:-2 -profile:v high -level 4.0 -crf 20 -maxrate 6800k -bufsize 6800k $OUTDIR/sintel_1920.mp4 \
$VIDOPTS24 -vf scale=2560:1162 -profile:v high -level 5.0 -crf 19 -maxrate 12000k -bufsize 12000k $OUTDIR/sintel_2560.mp4 \
$VIDOPTS24 -profile:v high -level 5.1 -crf 20 -maxrate 20000k -bufsize 20000k $OUTDIR/sintel_3840.mp4 \
-vn -c:a aac -b:a 64k $OUTDIR/sintel_audio_64k.mp4 \
-vn -c:a aac -b:a 96k $OUTDIR/sintel_audio_96k.mp4 \
-vn -c:a aac -b:a 128k $OUTDIR/sintel_audio_128k.mp4

cd $OUTDIR

MP4Box -dash-strict 3000 -rap -frag-rap -profile dashavc264:live -bs-switching no -out Manifest.mpd \
sintel_3840.mp4:bandwidth=20000000 \
sintel_2560.mp4:bandwidth=12000000 \
sintel_1920.mp4:bandwidth=6800000 \
sintel_1280.mp4:bandwidth=4000000 \
sintel_960.mp4:bandwidth=2800000 \
sintel_640_hq.mp4:bandwidth=1000000 \
sintel_640.mp4:bandwidth=500000 \
sintel_480.mp4:bandwidth=330000 \
sintel_320.mp4:bandwidth=170000 \
sintel_audio_128k.mp4 \
sintel_audio_96k.mp4 \
sintel_audio_64k.mp4

mkdir dist
mv *dash* Manifest.mpd dist

The scale filter resets the sample aspect ratio to match the original display aspect ratio. You should add setsar=1 after each scale. In any case, videos don't contain pixel count with fractional components, and FFmpeg won't output those.

I'm not sure about DASH but I suppose the validator expects each variant to have the same exact aspect ratio. In your command list, I can see 640x290 and 1280x582, which are not the same aspect. If DASH needs all to be same, the latter should be 1280x580


Using PTZ Optics 20x-IP with BlackMagic ATEM Studio 4k Does anyone have experience using PTZ Optics (20x-IP) cameras with the Black Magic ATEM (Studio 4k)? I can get video on a television and over IP, but for some reason I can't get it to show at all on the Black Magic ATEM switcher.

I'm running video through SDI onto Cat6 cable. Is there any chance that something about the signal would work on a TV but not on the video switcher?

Robert,

I too am thinking about buying this camera to use with my ATEM switcher. The ATEM can be quite finicky regarding compatibility. Have you tried it with straight SDI into the ATEM? If this does not work try adding a cheap sdi splitter from Kanex etc to the line.

The camera needs to be set to the exact right settings to work, for example 1080i. The PTX Optics manual says that "After changing the switch, you need to restart the camera to take effect"

You can check the compatibility of your Cat 6 conversion equipment at atemuser forum

and share your results.


Vertical Black Bars, Aspect Ratio Problem. NEED A FIX Heres the problem.

When exporting in Adobe Premiere CS5, there is an output tab. Once clicked it should show me what the video will look like when its exported but this is not the case and even when uploaded to youtube it isn't correct. Here are some screen shots to prove what I am talking about. I should add, when looking at the exported version. I have even checked off aspect correction to off and on then on and off. Also, matching sequence settings doesn't work either.

Ouput Tab

Presets

Clip Settings (Proves its actually in 480)

Finally here it is after its exported, how do I fix this. Many suggestions would help. THANKS!

You have set the wrong pixel aspect ratio (that has nothing do with the aspect ratio of your video resolution). Notice how you're source footage (the mpg file) has a pixel aspect ratio of 1.21 but you export it with a pixel aspect ratio of 0.91. Also your sequence is set to a pixel aspect ratio of 0.91 (that value in parenthesis next to your resolution in the export settings where the source specs are listed).

Change your sequence settings to the same pixel aspect ratio as your source (1.21 or simple the widescreen setting in the drop down menu), aswell as in your export settings. Though your might wanna export with a square pixel aspect ratio of 1:1 which is what youtube prefers. You will have to change the resolution for that though.


Does Youtube accept 10bit uploads? If so, what codec should I use? I am launching a series of videos to Youtube.  These videos have a black background and lots of colored gradient changes.  4k, 60fps.

Unfortunately this picture style is causing terrible banding issues in H264.

Accordingly I want to upload my videos to Youtube in 10bit - is this possible?

If so, which codec would you recommend?

Youtube converts files in two main containers, flv and MPEG-4 AVC (or h.264). For everything below 720p, youtube usually switches to flv, for everything above it uses h.264.

Your file will get compressed by youtube's own bitrate indeed, but upping the bitrate in the encoder will still give you vast improvements in image-quality.
You need to keep in mind that the file will get compressed about three times in your case. When the camera records the image, it compresses it according to the filetype and codec it is set to. Then, after editing, the file will get rendered and compressed furthermore. And at last, youtube will also convert and compress your file.

So, to minimize loss of quality, it's worth considering upping your bitrate of the encoder you use (Adobe Media Encoder, Premiere, After Effects, etc.), since this is the only thing you could change as of now. A bitrate of 25-30 should be what you want. If file-size is not to be considered, I would even recommend pumping it up to about 50. Also, make sure to tick the "use maximum render-quality" when you're using adobe's encoders.

The only limit youtube has for uploading is 124gb file-size if I remember correctly. It's a value videos should never reach tho.


FFmpeg with OpenCL support - Ubuntu 18.04 Recently I asked about GPU acceleration in FFmpeg using AMD Radeon (AMD support for ffmpeg? Can't get my dedicated GPU to work). After many tests I see that fighting with this topic is hard, especially if I read something like that: Feature support varies – for more complex codecs with many different profiles, hardware decoders rarely implement all of them (for example, hardware decoders tend not to implement anything beyond YUV 4:2:0 at 8-bit depth for H.264) (https://trac.ffmpeg.org/wiki/HWAccelIntro).

But maybe I just started with wrong solution? Maybe OpenCL is what I need? So I'd like to ask if someone could help me with OpenCL. I installed it on my OS (Kubuntu 18.04.2 LTS) and confirmed it works. I used tips and examples found here: https://wiki.tiker.net/OpenCLHowTo

I also installed FFmpeg with OpenCL support from Snapcraft (https://snapcraft.io/ffmpeg):

ffmpeg version n4.1 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.10) 20160609
configuration: --prefix= --prefix=/usr --disable-debug --disable-doc --disable-static --enable-avisynth --enable-cuda --enable-cuvid --enable-libdrm --enable-ffplay --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopus --enable-libpulse --enable-sdl2 --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libv4l2 --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxvid --enable-nonfree --enable-nvenc --enable-omx --enable-openal --enable-opencl --enable-runtime-cpudetect --enable-shared --enable-vaapi --enable-vdpau --enable-version3 --enable-xlib

I use FFmpeg mainly to convert images sequences to movies - thousands of images in 2K-4K resolution. I call it usually like this:

ffmpeg -framerate 30 -i frame-%05d.png -preset ultrafast -tune film -c:v h264 -c:v libx264 -b:v 20M -pix_fmt yuv420p output.mp4

My question is (quite) simple: how can I "translate" above to FFmpeg+OpenCL language? I'm using integrated Intel HD Graphics 4600 and external AMD Radeon HD 8790M. Nevermind which device will be used, I'd like to check if OpenCL will help me to reduce time of encoding.

Could someone help me?

OpenCL is not what you need.

In https://trac.ffmpeg.org/wiki/HWAccelIntro, see the section on “FFmpeg API Implementation Status” — Notice that OpenCL is not applicable for encoding and decoding, only for use in filters.

That's because OpenCL is a low level API used for writing code in such a way that it can be accelerated by GPUs or CPU SIMD instructions depending on the platform/driver. It is used in FFmpeg to implement various filters, but you aren't using any filters. If you really want to use OpenCL for encoding/decoding, you will have to start writing your own encoder/decoder first.

For your use case (encoding a video from source frames), you are better off using an API specifically designed for video encoding. These use the separate special purpose video encoding/decoding functionality found on most modern GPUs (including integrated GPUs). The best choice depends on your platform and use case, but for example this page has some examples for using VAAPI: https://trac.ffmpeg.org/wiki/Hardware/VAAPI. Usually this means selecting a different encoder, for example h264_vaapi instead of x264 (which is a purely CPU-based encoder). To ensure good performance, avoid copying frames between host/CPU memory and device/GPU memory as much as possible.


What types of cables support closed captioning? For example, I know that HDMI cables explicitly do not send a CC signal to the TV, even if the source and TV both support it.

I assume that coax cable does support it since I can use a digital antenna and receive CC on my TV from digital over the air broadcasts (in the US).

Is there any other cabling that will carry the actual CC signal for the TV to decode?

I am currently sending a DVI signal to projectors in an auditorium and I am sending the same image by VGA over CAT5 to HDTVs in our lobby. We may need to add Closed Captioning to the lobby feed only so I do not want to change the image going to the projectors in the auditorium.

Your question was initially confusing because you had focused on "cables" which is not the correct way of looking at this.

Once you've decoded a video signal to components, the closed captions are no longer available. If they were not inserted as open captions (aka subtitles) then they're simply not there.

So any transport that removes the Line 21 caption data or the digital caption packets eliminates your ability to defer captioning at the distant end -- you must insert the captions / subtitles before transport. That's the case with DVI / VGA / HDMI.

If you must allow the ability to choose a captioned or non-captioned display at the distant end, you would have to send two component feeds (e.g. two CAT5s), one captioned and one plain, and A/B switch them at that end.


Text templates made in after effects render gibberish characters in Premiere Pro Upon importing the template composition, the layout get successfully imported, however the text is changed to random exotic characters. Why?

Could be a text encoding problem. Is the original text using the Latin alphabet, or something more complex (accents, cedillas, or right to left languages)? If not, maybe try copying the text into a plaintext editor (like Notepad on a PC or TextEdit on the mac). Then copy it again, and paste back into AE? I haven't tried the premiere import yet, so these are guesses...


How do I PROPERLY slow down a 60 fps clip in Vegas Pro 11? Let me start at the very beginning:

My project frame rate is 23.976 fps (standard film). When I create such a project in Adobe Premiere and then want to add a clip to the timeline, I can set the frame rate of the clip manually. Therefore, when my clip is 60 fps shot with a Canon DSLr (actually I believe and hope it's 59.94 fps), I can override its fps to 23.976 and then drop it to the timeline, thus getting the perfect slow-motion = as slow as possible without any frames missing in-between.

Now, I don't know how do I do this in Vegas Pro 11. All I can do is drop the clip to the time-line and then set its playback rate to 0.4x original speed (59.94 * 0.4 = 23.976). However, I don't know how safe this is. Is it safe to assume that the playback speed of the clip will be EXACTLY 23.976 fps and there won't be any frames missing in-between, thus creating the perfect slow-motion?

You should be safe setting playback rate at 0.400. 59.94 is actually 60/1.001 and 23.976 is actually 24/1.001, so the 0.4 multiplier is technically exact. Switch off resample to be sure. Of course, how Vegas actually handles this internally is anybody's guess.

One way to test this would be to generate a frame sequence just containing an incremental numeral display (1,2,3...) in AE or similar, then render that as a 59.94p video. Import in vegas with playback 0.4 and resample off and then cycle through the frames to see if there are any duplicates or missing.


How to Cut & Ripple Delete on a german laptop keyboard? I am using my windows laptop for video editing and recently came across this incredibly time saving feature:
Cut & Ripple Delete, which basically does 3 actions in one. You can see in this guide at 4:48 how this command is used:

Unfortunately there seem to be problems with the german keyboard. The english shortcut is:
Ctrl + Shift + [
But it doesn't work on a german keyboard. The problem seems to be that on a german keyboard you have to press an extra Alt key to be able to type [.
The keyboard customization settings in Resolve 16 do not even show this command (Cut & Ripple Delete). I don't know if I'm stupid or what but I am having tremendous issues setting a new shortcut for ANY command.
Does a shortcut for Cut & Ripple Delete exist on the german keyboard that actually works? Can I make this work in Resolve without setting my system keyboard localization to english?

I figured it out. The commands you're looking for are:
End to Playhead - in Application/Trim/Ripple
Start to Playhead - in Application/Trim/Ripple
Put them on some shortcut that is actually working on the german keyboard.


H.264, 1 FPS, 640x480 Resolution - What bit rate should I be using? I need to transmit this video stream over satellite. So far, I have been able to send 1 fps, 320x240 with no problem. However, when I raise it to 640x480, the picture comes in once every few minutes and that's about it. Bandwidth is not an issue - we are using ~192 kbps and up. Any ideas?

That's something thats going to differ a fair bit based on picture complexity, implementation quality, profile used, etc. But going to low shouldn't cause the picture to stop, just fill with compression artifacts.

Often, video completely stopping means you've had transfer issues. If you remove the satellite link, does the video freeze still occur? Cheap satellite links (i.e., those costing less than $1000/mbit/mo) are notorious for dropping, reordering, and delaying packets. If the freezes occur without the satellite link, I'd guess your cameras have a deficient H.264 implementation, or at least one not designed for 1FPS.

Your camera's H.264 implementation may be taking 192kbps as 192kbps average, with a buffer of X bytes. So on the first frame it may generate a lot more than 192kbit, expecting to make it up later (buffer size may be assumed to be 1 megabyte or even larger). And then, the satellite link is pegged for a few seconds as it transmits that "buffered" amount.

Lowering framerate on H.264 doesn't save nearly as much bandwidth as you'd expect, due to there being large differences between each frame. But it degrades visual quality at least as much as you expect. So its often a bad trade-off. Also, various H.264 options can increase compression, but result in multi-frame decode delays. At 1FPS, that is really noticeable.

At 1FPS, who knows how often your camera is generating keyframes.

I'd suggest sending some data encoded with X264 (or ffmpeg, which uses it). See if that works. Its probably a better implementation than your cameras feature. It also lets you tweak buffer sizes (you probably want a low one, unless you're buffering on the receiving end).


ffmpeg - Unable to find a suitable output format This is a part of my command:

-r 60 -preset medium -codec:v libx265 -ar 48000 -acodec aac -shortest -strict experimental -sn -vsync 1 -pix_fmt yuv420p -b:v 30000000 -movflags +faststart  -x265-params high-tier=0:pmode=1:wpp=1:tune=fastdecode :bitrate=30000:fps=60:keyint=360:min-keyint=180:vbv-bufsize=30000:vbv-maxrate=30000:scenecut=0  -metadata title

and when i run it i get the following error:

  Unable to find a suitable output format for
  ':bitrate=30000:fps=60:keyint=360:min-keyint=180:vbv-bufsize=30000:vbv-maxrate=30000:scenecut=0'
  :bitrate=30000:fps=60:keyint=360:min-keyint=180:vbv-bufsize=30000:vbv-maxrate=30000:scenecut=0:
  Invalid argument

I think there might be a missing space or something like that somewhere but i'm not too sure what's wrong with this syntax?

Thanks!

...tune=fastdecode :bitrate=30000...
                 ^^^

There's a space that should not be there.


Producing Video Lectures What are all the software and hardware needed to produce a video of this kind?

This looks like she used a graphics drawing pen tablet (e.g. a Wacom Pen Tablet) and recorded her screen with a screencapture software such as Fraps. To have the person appear in the lower right like this, you will need a well-lit greenscreen to key out the background. To produce the video from your recordings, you will need NLE software. Since there aren't any special effects in this video, you don't need a professional program; the only requirement would be the greenscreen processing capability.

Alternatively, you could also create the screen writing effects completely digitally with an animation/SFX program like After Effects. However, this is pretty difficult and it will certainly take some time to learn the required skills to produce a video like this.


Record a live lecture from one room and stream it live to two other televisions I'm working on a church project and I'm not too familiar with video equipment all too much.

We need to stream a lecture to other sides of a building (at least two tv's).
I was playing around with some ideas with IP cameras and connecting it via an Apple TV / Roku device but I can't find any combinations or guides on that working.

So I'm just gathering some information and advice into this

Get a camera with HDMI output and plug it in to a Blackmagic Intensity PCIe card or USB/Thunderbolt unit. Then use Adobe Flash Media Encoder to take that input and encode it into an RTMP/RTSP stream that a computer can easily play on the other via the network, plugged in to a projector or TV.


Close aperture on Canon 1100D I have a Canon 1100D and a 50mm f/1.8 lens. Seems like the camera insists on shooting at default aperture, but I won't have it, since that results in a mostly blurred video. How can I adjust the aperture?

Okay, so it turns out that the shutter change is automatic depending on the amount of light available. You cannot alter the shutter manually. What this means in practical terms is that, with room lightning you are 99% guaranteed that you're shooting wide open, which just blurs everything and makes the video mode pretty much unusable. Thanks Canon.


Dark interview setup, what should the subject wear? I am doing a project using a similar setup to the "I am Second" lighting. Basically a black background and the subject light from overhead/ front. I'm not keen on my subject wearing black (also I don't want to copy this style directly). With a dark interview setup, could my subject wear white? I know white can be tricky and reflect more light. What solid color would you recommend?

I plan to shoot CU to MCU, so the chair or stool the subject will sit on won't be seen.

Here is a great tutorial about lighting ratios: http://wanderingdp.com/cinematography/cinematography-school-lighting-ratios-101/

Tl;DR?  Whatever skin tone your subject has, and whatever tattoos you might want to highlight, you need to know the key value and dynamic range of your subject, independent of the shirt.  Once you have established those, you can decide where in the range you want to place the shirt, and whether you want to add color (and all that color may symbolize) into the mix.

A white shirt might be so bright that when you adequately light your subject, the white shirt uses up too much of your available dynamic range.  Also the extreme contrast between the white shirt and the black background may compete against your subject for attention (since the vision system is always looking for contrast).  The reference shot you provide is a great example of a splash of white that balances with the white highlights of the forehead without trumping it.  A CU that just barely includes a white collar may do the same thing, but an MCU might show too much white.

But do look at the lighting tutorial to see how one properly gets the right key value and dynamic range for the face, and then you'll see how to fit the shirt into that range.


.Mov file corrupted after QuickTime Exporting for web I recently attempted to export a large video file to the web through QuickTime Pro in hopes of uploading it to my web storage account and put on my website. However, when I encoded this .mov file, somewhere in the process it became corrupted and it appears as a much smaller file. I can play the file on my computer locally, but when I upload it to my web storage account I can no longer access/play it. It also appears as a much smaller file. This is the only file of the movie I have on my computer so I find it curious that it plays locally but cannot be accessed online. Please let me know if you have any suggestions as to how to fix this problem. Thank you!

I guess you've uploaded a reference movie file, because this kind of movie is much smaller, and can not play without it's master. What you need is a self-contained movie.

My suggestion: To avoid this, try to export your movie via the "Export…"-Item, but not with "Export for Web…". So you'll get a self-contained movie.


What is the difference between 'Set To Frame Size' and 'Scale To Frame Size'? In Premiere Pro CC; what is the difference between 'Set To Frame Size' and 'Scale To Frame Size'?

I need to blow up a video to fill a larger frame. I am going from SD 720x480 to HD 720x1280 frame size. If I have to do this what is the best way?

Scale to Frame Size

Scales the clip to fit the size used in the current sequence whilst retaining the original aspect ratio to fit within the frame. Essentially, the clip has been rasterized to match the resolution used on the current sequence.

Despite adjustments to the size of the clip, the scale setting in the Video Effects panel for the clip will remain as 100%. This isn't a permanent change, the modification can be disabled by unchecking the option in the same way you enabled it.

If I place a photo which has a resolution of 3264 x 2448 and used 'Scale to Frame Size' to fit it into a widescreen 1920 x 1080 resolution, the photograph will be reduced in resolution. If I wanted to zoom in by scaling the photograph back to 100%, I would lose the original quality.

'Scale to Frame Size' can improve performance when scaling down a large clip.

Set to Frame Size

Scales the clip to fit the size used in the current sequence.

Premiere will automatically apply the scale adjustment under the clips Video Effects, which can be adjusted. The clip retains the original resolution.

Here are two identical photographs, the first photo I used 'Scale to Frame Size' and scaled in the Effects panel by 400%, for the second photo I used 'Set to Frame Size' and scaled by the same amount.

You should be able to see a clear difference in quality when scaled.

You probably won't see any noticeable difference scaling UP when using either of the methods.


Which PC software does live effects on video from a tethered camera? Which software for Windows/Mac/Linux allow me to connect a DSLR (any DSLR brand is fine) and see in realtime (and record) the result of passing the live video feed through a filter?

If software is all you're interested in, here are a few options:

Quartz Composer
Pixel Conduit
Resolume
VDMX
Arkaos
Modul8

Personally I've only tried Quartz. It's hugely powerful and free, but the learning curve can be quite steep. It's more of a node programming language for video graphics, that's what makes it so powerful.
Some downsides are that it's not actively developed anymore and that it only runs on OSX.
I'm excited to try Pixel Conduit soon. It seems to be an attempt at a modern version of quartz, and the free version seems pretty powerful.
If you want to record the video as well you might have to look at a separate program called Syphon.
I used a Blackmagic Intensity Extreme box to get the live video from our Sony XDCAMs into my Macbook Pro. I had to use Black Syphon to get the feed from the Blackmagic box and send it into Quartz for live processing.
UPDATE
I've been using Resolume to do exactly that. It works really well and is way more user friendly than Quartz. Though you can also use Quartz in it. Resolume also can record the video to an output file out of the box.
Pixel Conduit didn't seem to have gained much traction unfortunately. So I never used it in a production environment, I only played with it.


Video Format Compatibility with GoPro cine studio Can a video recorded using Edmund optics camera in mp4 format be played and edited in GoPro studio? The video I have recorded can not be imported.

GoPro Studio allows constant frame rate H.264 .mp4 and .mov files. Your camera might use a variable bitrate which doesn't seem to be supported by GoPro Studio (Source).

You can transcode the video to a constant frame rate video by using the tool Handbrake and choosing a constant frame rate in the "Video" tab. Choose the "High Profile" preset for a good quality encoding or choose your own quality settings.

You might also want to force a certain framerate that comes close to your average frame rate instead of using "Same as source" if Handbrake makes a automated decision.