How can I remove an object from a shot? I’m attempting to remove a head mounted GoPro in a mirror shot, exactly as seen in this video, around the 15 second mark:

I’m using premier pro cc 2018, and I’m just looking for some ideology, or methodology on how to do so. Obviously a clear cut solution would be ideal. Thank you.

Object removal is usually done by masking, tracking and inserting a clean plate into the masked area.
Easier done in After Effects than in Premiere.

It looks like in the above video it is a different shot inserted into the mirror.


Software for marking AND describing places in video When editing sport videos one of the most tedious and time consuming parts is actually watching the footage and describing where, what and what is quality of the part of the video.
For now I haven't found better technique than just watching it, pausing on the spot, typing time and description in excel like :
GOPRO1234.mp4 | time : 02:34 | quite decent jump ! | rating 5/5 | category : jump

Then I can sort and filter this..

But this takes a lot of time. I know that editing software gives flags and markers in different colors but I need more than that to think later what should go where in my video.

Do you know any software which allows to do it efficiently? Like photo categorization software but for videos. My dream workflow would be to be able to stop a video and get an easily keyboard navigated popup with time marked automatically, then just type description, set tags and hit ENTER and go further.

Any suggestions? Free software would be the best, but of course if there are also any paid alternatives - give me a hint!

I don't know of any sports video shot logging tools designed for personal use. Most are part of MAM systems. This site compares logging tools for cinematic production, but you can extrapolate from that. Both Adobe Premiere and Prelude include logging tools that let you set ratings and enter comments. You can use subclipping and bins to replicate the category part of your workflow.


Good free m2ts to mp4 converter? I'd like to convert some AVCHD footage (.m2ts) to mp4 files. Can anybody here recommend a good converter (preferably free) that'll do a good job?

FFmpeg should be able to do this - assuming you don't mind getting down with the command line (there may be some GUI options out there too possibly).

My Olympus E-P3 produces .MTS files - I assume they're similar (AVC/AC3 in a Blu-Ray Video wrapper).

I ran the following command:
    ffmpeg -i 00001.MTS -vcodec copy -acodec copy -f mp4 00001.mp4

That just tells FFmpeg to copy the video and audio streams but put them in a new mp4 format (the -f option).
The resultant mp4 still has the same AVC/AC3 combination but now in a MP4 wrapper.

I played both source and output in VLC and they looked the same - obviously you should satisfy yourself that quality has been maintained.
I'll wager that most GUI tools to do this task use FFmpeg under the hood.


Cannot import XAVC S/AVCHD with Premiere Pro CC 2019 I am attempting to import XAVC S/AVCHD footage from Sony a6300 camera. It seems the proper way to do this is to use the Media Manager window.

The issue I am having is that it does not detect it as anything other than files, and the all other options are greyed out in Directory viewer.

If I try to import entire PRIVATE folder, I get “File Format not supported” errors.
If I try to import M4ROOT or M4ROOT/CLIP folders I get “The imported reported generic error” for various metadata files like XML files.

Either way it seems I am loosing metadata. Transcoding is obviously not a good option as you would end up transcoding twice.

This is XAVC S/AVCHD format and uses MP4 container so all files are within M4ROOT folder and AVCHD is empty.

How can I import this format properly with Premiere Pro CC 2019 under Windows?

the same problem encountered here with a different sony handy cam.
I don't know how to solve the issue but I have a way to get around it.

import both AVCHD file & MP4 file in Premiere Pro and open both in a sequence.
now use video of AVCHD file & Audio from MP4.

\\ I don't want to use video from .mp4 file because its resolution is lower than the AVCHD.


Viewer for DNxHR HQX files I'm using Avid DNxHR HQX as an intermediate codec to go from Resolve to Premiere, but I can't find a viewer that will play it.

MPC-HC, MPC-BE, MPDN, Windows Media Player even the dreaded quicktime player all refuse to play it. The only thing that works is ffplay.

Anyone know of a player that can handle this codec yet?

Here is the link to the White Paper on the codec.

AVID DNxHR CODECS

You can download the codecs for Quicktime here:

http://avid.force.com/pkb/articles/en_US/download/Avid-QuickTime-Codecs-LE


Editing software with a good textbook (Windows) What are the leading editing tools available that also have good textbooks for them? I'd like to learn making videos based on Fraps footage: manage multiple audio tracks, cut/move pieces of audio, possibly record and insert pieces of audio right on the spot, add text on top of video, add fade in/out effects between pieces of video, etc.

I imagine there are several such products, so I'll try to be more specific: it should be modern, easy to use, not buggy, able to use all CPU cores for the rendering and have good tutorial to learn all its stuff.

Ideas?

Thanks.

Video editing software is a tool to do video editing.  Any decent textbook should teach video editing, not video editing software.

Conversely if you know how to edit, most NLEs (the technical term for video editing software) should be pretty intuitive.  I can sit down at any decent NLE you put in front of me and start editing without a manual, but I've been editing for 15+ years.

In terms of NLE software with good documentation, Premiere has very nice documentation and is a very solid platform, but it also isn't the cheapest option out there.

Overall, I would recommend not focusing on the NLE software and more on how to edit though.


Why does After Effects not export with audio? I have made a simple four second long video in After Effects and exported it only to find that it had no audio. I tried changing the file type to .MOV and re-rendered it but  now the file had audio but no video. I have thoroughly researched the problem but nothing worked. here are some pictures:

Any help is appreciated!

The issue seems with your playback of the rendered file. Try playing it with QuickTime (you are exporting with QuickTime after all) or VLC Media Player or Media Player Classic. All these are good options if you want to test you rendered files.

Using the media player that comes with your version of Windows is always a bad idea, Microsoft never bothered with good codec support.


ffmpeg: explicitly tag h.264 as bt.601, rather than leaving unspecified? I want to tag video as explicitly bt.601, rather than "unspecified".  I know players typically choose bt.601 as the default for videos less than 1280 pixels wide, but I want to make it explicit that bt.601 is the correct colour matrix for a video.

The sticking point is that there is no bt601 option for ffmpeg or libx264, only bt709 and some others.

I have some videos that were downscaled from HD, and are still in bt.709, but aren't tagged properly.  So when I watch a video, I sometimes have to manually toggle my player to bt.709.  Tagging explicitly as bt.601 will communicate to future viewers (e.g. myself) that it's definitely bt.601, and not a mis-tagged bt.709 video, when I look at it with mediainfo.

Another use-case for this would be if you upscaled a bt.601 video to 1280 or higher without doing a colormatrix conversion (using -vf colormatrix), players would incorrectly assume bt.709 if you left the color information unspecified.

FFMpeg's colormatrix video filter does support bt601 as an input or output color matrix, but doesn't also set tags.  (Since it doesn't have the side-effect of setting ffmpeg's color options, it refuses to even operate with src and dest the same, like -vf colormatrix=bt601:bt601.)

ffmpg in  -color_primaries bt709 -color_trc bt709 -colorspace bt709  out

will tag the output video as using bt.709 for yuv<->rgb.  The tags end up inside the video bitstream itself, not just in the container (since this is seems to be a codec-specific thing, not a container thing, for mp4 and mkv containers at least).

e.g. mediainfo output:

Complete name             : out.mkv
...
Writing application                      : Lavf57.14.100
Writing library                          : Lavf57.14.100

Video
ID                                       : 1
Format                                   : AVC
...
Writing library                          : x264 core 148 r2638+4 afcf21c
Encoding settings                        : cabac=1 / ref=8 / ...
Language                                 : English
Default                                  : Yes
Forced                                   : No
Color primaries                          : BT.709
Transfer characteristics                 : BT.709
Matrix coefficients                      : BT.709

So bt.709 is easy to tag.  The problem is, I don't see bt.601 anywhere.  Is one of other names an alias for it, or is there really no way to specify it explicitly?

x264 --fullhelp output:

  --colorprim <string>    Specify color primaries ["undef"]
                              - undef, bt709, bt470m, bt470bg, smpte170m,
                                smpte240m, film, bt2020
  --transfer <string>     Specify transfer characteristics ["undef"]
                              - undef, bt709, bt470m, bt470bg, smpte170m,
                                smpte240m, linear, log100, log316,
                                iec61966-2-4, bt1361e, iec61966-2-1,
                                bt2020-10, bt2020-12
  --colormatrix <string>  Specify color matrix setting ["???"]
                              - undef, bt709, fcc, bt470bg, smpte170m,
                                smpte240m, GBR, YCgCo, bt2020nc, bt2020c

ffmpeg -h full  shows the same set of options for its color options, which ffmpeg's -c:v libx264 video codec passes on to x264.  Is any of these an alias for bt.601, or have a numerically equivalent colour matrix?

PAL and NTSC have different color primaries, so

NTSC = SMPTE 170M = BT 601 525

PAL = BT 470 BG = BT 601 625

See the rows for value 5 & 6 on the table on page 387 of the active H.264 standard.

So the right args for ffmpeg are:

NTSC:

# NTSC
ffmpeg -i input  \
 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m

mediainfo:
Color primaries                          : BT.601 NTSC
Transfer characteristics                 : BT.601
Matrix coefficients                      : BT.601

PAL:

-color_trc doesn't accept bt470bg, but ffmpeg -h full shows that gamma28 means "BT.470 BG" for that option.

# PAL
ffmpeg -i input  \
 -colorspace bt470bg -color_primaries bt470bg -color_trc gamma28

mediainfo:
Color primaries                          : BT.601 PAL
Transfer characteristics                 : BT.470 System B, BT.470 System G
Matrix coefficients                      : BT.601

-colorspace is the most important option; the others don't make a visible difference for software players like mpv on Linux.


Correct lens distortion with ffmpeg It seems to be possible to correct lens distortion with ffmpeg. According to the manual you can adjust K1 and K2 values. What this means? How to use it correctly?

Example still image - captured with a canon 60D and a focal length of 18mm (EFS 18-55mm zoom lens)

In the manual it says:

  To use opencv use the calibration sample (under samples/cpp) from the
  opencv sources and extract the k1 and k2 coefficients from the
  resulting matrix.

If you go to the opencv website there's a sample source code for a lens correction program, written in c++, here. You'll have to compile it yourself, after installing OpenCV (sounds like you better put on a pot of coffee).
When you run it it will spit out an xml file containing the values for k1 and k2, which you can then use as inputs to the filter.


FFMPEG How to use FIFO to solve a "buffer queue overflow, dropping" error? I got this code to append an intro and an outro to a video, along with an overlayed logo but I'm getting the error “buffer queue overflow, dropping” on Concat, I've been searching around and it's apparently caused by a matter of filters not requesting the frames fast enough and the recommended solution is to add FIFO to the script, could you please explain to me why this happens and how can I use FIFO to solve this? I'd like to learn more about FFMPEG but the guides I've stumbled upon are quite basic and don't get into droppings.

for %%I in ("C:\Users\Administrator\Desktop\work\*.mp4") do ffmpeg.exe -y -i "%%I" -i logo.png -i out1.ts -filter_complex "[1:v][0:v]scale2ref=iw/6:ih/18[logo][0v];[0v][logo]overlay=W-w-3:H-h-1,scale=hd720,setsar=1[vl];[2:v][2:a][vl][0:a][2:v][2:a]concat=n=3:v=1:a=1[v][a]" -map "[v]" -map "[a]" -r 20 -c:v libx264 -preset fast -crf 18 -ar 48000 "C:\Users\Administrator\Desktop\Completed\%%~nI.mp4"

pause

I went back to a 2016 FFMPEG build and it works fine again.


What software is available for recording in 1/60 FPS? I am recording my computer screen which updates once a minute. I want to record for around 8-12 hours uninterrupted, and I would prefer not to compress the video because the details are very fine and any grainy pixelation would potentially make the video unreadable.

Is there any (preferably free) software I can use which records at 1/60fps and can output a lossless (or very close to that) format?

AutoScreenRecorder (currently version 3.1) appears to allow you to record as low as 1 frame per minute in the Pro version only (the free version does not allow altering the framerate).


Recording Presentations with OBS and a Bluetooth Mic I want to use OBS to record meetup presentations.
I can grab the laptop screen for the video and am looking for an inexpensive wireless Bluetooth microphone for the audio.

I managed to use OBS to successfully record a presentation with a cheap BT headset+mic.

I'm looking for recommendations for a BT Lavalier microphone that transmits directly to the laptop.

Most of the wireless (Lavalier) microphones that I've come across come with transmitter+receiver elements. Some of these, like the Sony ECMAW4 Wireless Microphone, apparently use Bluetooth to communicate between the two TX and RX.

However, the laptop has a built in BT receiver (and presumable more power than a battery operated device too) so I do not understand why such BT, RX-only mics are not common.

You could get a Sennheiser ClipMic, plug it into a cell phone, and then establish a Bluetooth connection between the cell phone and the Laptop.  I can't give any first-hand recommendations on best practices for Bluetooth audio streaming for live mics (I think most professionals prefer dedicated RF equipment to BT), but it does seem like there are options available.  Here's one that came up in a google search for "cell phone bluetooth PC audio microphone" without quotes.


How can I have a music track fade to a low gain/volume while I talk over it with a second audio track in Adobe Premiere Pro CC? I'd like to know how I can setup two audio tracks where the following happens:

The first audio track (music) plays at full power/volume/gain.
A second audio track (narration) causes the first audio track to fade to a much lower volume (but still able to hear it) while the narration happens.
The second audio track (narration) finishes which causes the first audio track (music) to resume to it's normal/full volume.

I don't want any audio discontinuity to occur. Meaning, I want the first audio track (music) to play through while the narration happens.

I am using Adobe Premiere Pro CC 7.2.2

Ducking is a great solution for broadcast audio (for example, muting crowd noise when a commentator is trying to explain what's happening on the field).  In production, the limitations of ducking become apparent: sometimes it's too much or too little, sometimes it needs to be faster than the default, or slower.  These are things that are not necessarily obvious the first time you listen, but become obvious after the second or third listening.

Broadcast audio production presumes you hear things only once, so the limitations of ducking are acceptable.  If you are producing material that people might watch more than once, you really should do the ducking manually, setting audio keyframes and moving the volume manually to maximize not only quality and intelligibility, but also emotion and impact.


Lossless concatenation of slightly different MP4 files I am trying to combine 2 or more .mp4 videos into a single video (concatenation). But I am getting timestamps errors (with ffmpeg concat demuxer protocol). The videos are very similar (same resolution, fps, etc.), so I'm not sure what is causing this. I am open to trying different tools (hopefully something that runs on linux).

Apparently they are slightly different in some way.

How can I concatenate them, without losing quality?

If you need more information please tell me what command I should run to print the required details.

Update: I am trying to concatenate 4 files. I am using the command:

ffmpeg -f concat -i list.txt -c copy full.mp4

where list.txt is a text file with the contents:

file 1.mp4
file 2.mp4
file 3.mp4
file 4.mp4

By request I executed the same command with -report as added as the first option. This produced a large log file (110 MB) that you can see here: http://www.filedropper.com/ffmpeg-20180606-024711.

I also ran ffprobe on each file, and uploaded the results here:

ffprobe 1.mp4: https://justpaste.it/64pih
ffprobe 2.mp4: https://justpaste.it/6r4ig
ffprobe 3.mp4: https://justpaste.it/77iij
ffprobe 4.mp4: https://justpaste.it/3xdoi

Your 2nd file is different. You can re-encode it this way,

ffmpeg -i 2.mp4 -map 0:a -map 0:v
       -c:v libx264 -profile:v main -c:a aac -ar 48000
       -video_track_timescale 2500   2-new.mp4

Depending on how the video in the other files was encoded, you may need to try adding -bf 1 or -bf 0.


Use Ffmpeg to Add Music Intro and Outro to Video I'm trying to add a music intro and outro to a video. When the music is playing, a particular image should be shown as well, both before and after.

If I could overlap x seconds of the music with the video as well, that'd be even better.

I've done this sort of thing with only an audio file, but not sure how to do it with video.

So example, let's say I have a 30-second intro and a 30-second outro, each of which I wish to overlap by 10 seconds with the video.

So for 20 seconds, the image should show. Then the video should start for the last 10 seconds of the intro.

Then the first 10 seconds of outro will begin during the last 10 seconds of the video, and for the final 20 seconds of the outro, the image will appear.

Any help would be appreciated.

Step 1 Get the duration of the main file.

ffprobe main.mp4 -show_entries format=duration -of compact=nk=1:p=0 -v 0

This will print out a single value, like this

61.600204

which is the duration in seconds.

Step 2 Perform the concat

ffmpeg -i main.mp4 -i intro.mp4 -i outro.mp4 \
  -filter_complex "[1]trim=0:20,setpts=PTS-STARTPTS[pre]; \
                   [2]trim=10,setpts=PTS-STARTPTS[post]; \
                   [pre][0][post]concat=n=3:v=1:a=0[v]; \
                   [1:a][0:a]acrossfade=d=10[a1];[a1][2:a]acrossfade=d=10[a]" \
  -map '[v]' -map '[a]' out.mp4

Since the video and audio from the intro/outro are treated differently, in terms of duration, we perform two separate concats.

First, the intro video is trimmed to leave out the last ten seconds. The outro is trimmed to leave out its first ten seconds. Then those two trimmed segments are sandwiched with the main video stream in the first concat.

For audio, the crossfades are performed in two stages. First, the intro with the main audio. Then, that result with the outro audio. Duration of crossfade is 10 seconds.

In case, the intro/outro music and image are separate files, use

ffmpeg -i main.mp4 -i intro.mp3 -i outro.mp3 \
       -loop 1 -framerate X -t 20 -i pre.jpg -loop 1 -framerate X -t 20 -i post.jpg \
  -filter_complex "[3][0][4]concat=n=3:v=1:a=0[v]; \
                   [1:a][0:a]acrossfade=d=10[a1];[a1][2:a]acrossfade=d=10[a]" \
  -map '[v]' -map '[a]' out.mp4

Here, X should be replaced with the framerate of the main file. The images should be of the same resolution as the video.


Are two videos "identical" if their decoded data is the same, but not the encoded data? Say I have two files A.mkv and B.mkv which are meant to be (told to me to be) the same content at the same quality. However my source tells me they suspect that there is a minor difference, but can't put their finger on it.
I can extract and hash frames from the files like so:
$ ffmpeg -i A.mkv -map 0:v -c copy -f md5 A.framemd5
$ ffmpeg -i B.mkv -map 0:v -c copy -f md5 B.framemd5

Then compare them with diff or git diff (I prefer the latter just because I know the options/defaults better) and see that there's 8798 different frames (out of roughly 230555) via wc and some basic arithmetic. However, if I now spend the time to decode these videos and get their framemd5 output, i.e.,
$ ffmpeg -i A.mkv -map 0:v -f md5 A.decoded.framemd5
$ ffmpeg -i B.mkv -map 0:v -f md5 B.decoded.framemd5

These logs are exactly the same, content wise.
Does this imply that visually, the two videos are the same, and that they just happen to be encoded slightly differently?
More interestingly; reading the original diff into a python script and determining where exactly the differences lie, 3198 of them are only off by 1 unit in the presentation timestamp, another 3198 of them are only off by 1 unit in the duration time stamp, and the remaining 2414 actually have differences in their hashes and size.
If this does not imply that visually the two videos are the same, is there any way to extract frames that I wish by their DTS/PTS and compare them using an image filter (or some filter + frame stitching method directly built in to ffmpeg?)
(Before anyone asks, the audio content, both copied and decoded, has no differences in the framemd5 logs nor the md5 hash, and as mentioned in the sample above, I'm only hashing the video stream for the purposes of this question).
Note in case it matters, because I've found conflicting reports about FFmpeg trashing HDR metadata, both files are HDR consisting of the same color space / primaries / bit depth / so on (in case this can cause the result I'm referencing above with the decoded streams).

If the hashes for the decoded streams are identical, then the streams are essentially identical.
Differences can be due to bitstream encapsulation (Annex B vs length-prefixed in case of H.264/H.265) or packet arrangement or embedded parameter sets (for configuration). As long as the bitstream is valid, these differences won't affect decoding.


Final Cut Pro (FCPX)- Scrolling credits speed How can I set the speed of scrolling credits? For example, I want to set a consistent duration of time that it takes from the time a name appears at the bottom of the screen to the time it takes for it to disappear of the top.

I don't want to just estimate it and drag the duration randomly until it LOOKS about right. I want to set a consistent scrolling speed regardless of the number of names I may have to scroll through.

The built-in Credit Tile from FCPX does not work like that. As far as I know, the scrolling speed is determined by the duration and the amount of text.
So if you have a long duration and few text the scrolling speed will be slow and vice versa short duration and lots of text fast scrolling. The Tile makes sure that all text is shown in the duration given.
You might consider to try and make your own copy with Motion 5. Left Click on the Tile >> "Open a copy in Motion" or go for a 3rd party Title or Generator.


How to force After Effects to interpret footage at a specific framerate? I just started using after effects CS4, and created my first video.
But if i look at my final (rendered) video, its 2x the speed it was originally.
I recorded a 22 second clip, and traced etc.
Looked awesome, but after rendering, its only 11 seconds, so 2x speed.
Here's the video

The Cam is a Logitech C920 Pro HD Webcam

EDIT

I found whats wrong, but don't know how to fix it. The recorded videos are 15 fps, but AE imports them at 30, how do i change that? Immediatly when i import, its speed up

How can i make it so it goes normal speed?

To answer your edited question:

If your footage is 15fps and After Effects thinks it's 30fps, you need to tell After Effects to re-interpret the footage.
You do this as follows:

Open the Project panel (by default on the left of your screen)
Right click on your footage and go to Interpret Footage -> Main... as shown below.

In the screen that opens up input the desired framerate (15fps in your case) in the textbox next to Conform to framerate. Press OK.

Now After Effects should know that the footage is 15fps.


What do I need to know about buying a VCR for digitising old VHS tapes? N.B. I considered posting this to hardwarerecs but not only is it much less active than this site, I also have a feeling there's a lot more specialist knowledge on the topic here, and practical questions about hardware that is no longer manufactured does appear to be on-topic.

I have some family home videos on VHS that I'm responsible for digitising. I know I will need both a VCR and a USB capture card, but money is tight so there are a few important details I want to clarify before I spend anything.
The Capture Card
This is probably the easiest part, and I'll more than likely be buying
this one here as it seems to be the cheapest one without a lot of worrying reviews.
The VCR
The VCR will obviously be bought second-hand, but being born in the last decade of the 20th century, I'm just about old enough to remember having to choose between PAL/NTSC on my PlayStation, and don't have a lot of experience with VCRs themselves.
Firstly: with regards to PAL vs NTSC, Wikipedia indicates that it does matter, so now I'm wondering if my tapes are marked as PAL SECAM, do I need a PAL VCR? I've seen a few local listings on eBay for NTSC VCRs, and confusingly I even saw one that said "NTSC Playback on PAL TV" (see below), but actual PAL VCRs seem surprisingly hard to come by considering they would have presumably been the default where I live (in the UK).

Secondly: and perhaps most importantly, this forum suggests it's necessary to invest in an S-VHS VCR to get the best quality out of the videos:

Not only would it be a good idea [to invest in an S-VHS VCR], but it's practically an essential
requirement. Want to use a cheap VCR? Your "highest quality"
requirement just bit the dust. Good output begins with a quality
capture. No quality capture, no quality output. Period. For vcr's We
never never never recommend eBay or similar auction sites. You find
good VCR's in our marketplace forum. A recommended source for rebuilt
high-end VCRs and other rebuilt goods is Tom Grant's shop.
Recommended VCRs for NTSC and PAL are listed here: VCR Buying Guide
(S-VHS, D-VHS, Professional) for restoring video
Which of those VCR line you should consider depends on your analog
tape library. Are most of them retail tapes and tapes recorded at high
2-hour speed? All of the listed brands will do them justice. Are they
slow-speed recordings, 4 to 6 or 8 hours??? I'm afraid Panasonic is
your only choice. Slow-sped tapes look like crap on a JVC.

Is this true? Will I need to shell out for a more expensive S-VHS VCR to avoid sacrificing quality?
Finally: are there any other VCR features I need to look for/avoid, that will improve/hinder the quality of the conversion? I see some are listed as 4-head, 6-head, Super Drive, etc.? Do any of these matter for my purposes?

so now I'm wondering if my tapes are marked as PAL SECAM, do I need a PAL VCR?

Yes, VCRs partially deconstruct the signal to encode it on the tape, and so are specific to a particular analogue video format.
In practical terms, if you try to play a PAL tape in an NTSC VCR connected to a PAL TV, you'll probably get a distorted black-and-white image, or perhaps no usable signal at all.

I've seen a few local listings on eBay for NTSC VCRs, and confusingly I even saw one that said "NTSC Playback on PAL TV"

It was very common to import North American tapes back in the day.  These VCRs can convert an NTSC format tape to PAL output for European TV sets.  The reverse also existed (though quite a bit rarer) in North America.

I see some are listed as 4-head, 6-head, Super Drive, etc.? Do any of these matter for my purposes?

4 head machines have a slight advantage in quality, particularly with playing ELP/LP tapes.  The extra 2 heads in 6 head machines are only for recording.  And "Super Drive" just appears to be a Panasonic marketing term, as far as I can tell.

Is this true?

Sort of.  VCRs are temperamental machines, and it's all analogue.  During their heyday, the quality of video you'd get from units varied enormously.  A quality S-VHS machine recording to quality tape on a well-calibrated machine was almost as nice as 480p digital is, really.  But I think we're just about old enough to remember what VHS usually looked like.

Will I need to shell out for a more expensive S-VHS VCR to avoid sacrificing quality?

This would only really be necessary if the original footage was recorded as S-VHS.  If so, then yes.  Some later VHS machines can play S-VHS tapes with reduced quality.  Still, play S-VHS tapes on S-VHS machines.
S-VHS equipment was high-end, and so generally better quality than the cheap VCRs that proliferated in the 90s and 00s.  So you will often find a preference for S-VHS machines.  But a good quality S-VHS and VHS deck should play a VHS tape back equivalently well.
Practically speaking, for high quality, you'd want to play back on a good deck that has been calibrated and had its heads cleaned and belts replaced, etc.  That would mean a machine that's been maintained or refurbished, not something that's been sitting on a damp shelf for 20 years.
With all that said, a few years ago I transferred a relative's home movies with a cheap 20 year old VCR and it's about what one would expect for 1980s camcorder footage.  I fed it The Great Mouse Detective first though, in case it might have been a tape-eater.


Is there any difference between changing video containers with ffmpeg vs just renaming with windows? For example say I use the command:

ffmpeg -i input.mkv -c copy output.avi

(In my case I need to add -bsf:v h264_mp4toannexb)

Well I can also just copy and rename the file from input.mkv to output.avi manually in windows. When I callup their info in ffmpeg...it's almost same. With the exception that ffmpeg also does slightly different video durations...which is kinda worrisome but from the listed information online it doesn't affect anything other than if you potentially gutted the video into 2 sections and were trying to recombine it using the old times.

But I mean between the two, windows is providing a more accurate and possibly more easy method...no?

Are there just exceptions and for some formats windows won't let you change the containers with filename changes by default?

Or is this just a generic function ffmpeg does in order to facilitate its more advanced commands?

Just curious if I'm missing something.

No, a Windows (or Mac or Linux) file rename will not change the container. They are inherently different file formats. They store data differently. They reference the audio and video tracks differently. Re-wrapping from one container to another can actually be a fairly complex operation depending on how the two formats store essence tracks. It may seem like ffmpeg isn't doing any "real work" compared to a transcode, but that is because the video doesn't have to be decoded in a re-wrap. The compressed bits only need to be re-written in a new order with some new metadata.

Think about it this way: just renaming a Word document from .docx to .xlsx doesn't make it an Excel workbook. Your story doesn't get turned into a spreadsheet just because you changed the extension. You need to a use a program to convert every tab into a cell.

The only exception where a simple rename works is where the extensions are synonyms of each other. For example, if you have a program that is expecting all QuickTime wrapped files to be .qt, but you have a .mov, you can rename the file to get it to work. But that is only because they are two different extensions that identify the same container format.


HLS to RTP multicast FFmpeg I want to transmit HLS stream to RTP multicast via FFmpeg and use the following command:

  ffmpeg -re -i HLSstream -c copy -f rtp_mpegts rtp://ip:port

But the output source сrumbles sometimes (I can't understand periodicity of it). I playing it via VLC and it shows the following errors:

  [00007fe17800b508] ts demux error: libdvbpsi error (PSI decoder): TS
  discontinuity (received 7, expected 2) for PID 0

  [00007fe17800b508] ts demux error: libdvbpsi error (PSI decoder): TS
  discontinuity (received 7, expected 2) for PID 4096

  [00007fe17800b508] ts demux error: libdvbpsi error (PSI decoder): TS
  discontinuity (received 8, expected 7) for PID 17

  [00007fe17800b508] ts demux error: libdvbpsi error (PSI decoder): TS
  discontinuity (received 2, expected 14) for PID 0

  [00007fe17800b508] ts demux error: libdvbpsi error (PSI decoder): TS
  discontinuity (received 2, expected 14) for PID 4096

It works well when I copy the HLS stream to local file and play it.
Is the way to fix it? Or please advice other tool to transmit HLS to UDP.

It's not the best variant, but in my case it helped. I getting data with ffmpeg then routing output to vlc2 via pipe and transmitting it to rtp with the following command:

  ffmpeg -re -i HLSstream -c copy -f mpegts - 2>/dev/null | vlc -
  --ttl=255 -I dummy --sout '#rtp{access=rtp,mux=ts,dst=IP,port=PORT}' :sout-all :sout-keep


RED streaming interface I need to get a live video stream from a RED camera into a proprietary app running under OSX (though I can switch to Windows if necessary). I'm unable to find any information about getting a live preview from a RED camera.

We have a video shoot tomorrow. The video is going to be shown in a 3D environment, and we need to make sure that the actors' eyeline, etc. is correct for their position within the simulation. Note that we're recording 2D video, not 3D - the flat video will be placed on a plane within a 3D environment.

Preview resolution is unimportant - 320x200 would work fine for this stage of production.

The best solution I have at the moment is to tape a webcam to the side of the RED and use that as the input to my application. That will work, but I don't think the camera owner will be thrilled with my use of duct tape.

My app works fine with a webcam interface, but somehow I doubt that RED has something like that available.

HELP.

(In case it matters, the application is a Unity3D app running under OSX. Video is being displayed within a 3D room on an Oculus Rift.)

You can tap the SDI output port of any RED camera and feed that to a hardware device that reads 1080p video.  Blackmagic make some things that translate SDI -> internal video stream via PCIe card (Decklink), USB (Ultrastudio), and Thunderbolt (Ultrastudio for Thunderbolt).  This would be the easy way to do it.

If you have a RED DRAGON (EPIC or SCARLET) with the latest firmware, there's a RED Tether option.  It requires a special LEMO->RJ45 cable, and it feeds live video out the ethernet port.  See this article for more info.


Video editing objects from black and white to colour For school we came up with a cool concept, the video starts in black and white and when a person in the video touches an object it turns to colour.

Could you guys help us out here? Do you have any tutorials for us? Which programs do we have to use (the price of the software is not a problem).

Thanks!

PS.

I now understand that rotoscoping can be used for this. But how bout a gradual change from black and white to colour if a building has been touched for example? For it to change in one frame will look kinda terrible...

This will probably require a technique called rotoscoping, which involves painting a mask on each frame.  You would need to have two layers of video, one which is desaturated (to make the image black and white) and one which is full color.  You would then need to make a mask (a layer which effectively makes a hole in the black and white layer so that the color layer can be seen).  Since the mask may change based on camera movement and actors moving around the scene, you have to update the mask periodically (possibly every frame).

You can simplify the process quite a bit if the objects are stationary in the scene and the camera is stationary on a tripod.  You could also try using object tracking to maintain the placement of the mask roughly, but to get a satisfactory result, you will probably still need some rotoscoping.

After Effects can accomplish what you are looking for.  Any tutorials on rotoscoping and masking in AE would work to demonstrate the finer points of what tools to use to accomplish it.


Specify a custom "Movie rec. size" on Canon Rebel Can you specify a custom "Movie rec. size" on Canon Rebel?

I have an SL1, and I'm trying to record at 1280x720 with 30fps.  When I go the "Menu" screen I see that you can set "Movie rec. size." It gives me four preset options. At 1080p, it records at 30fps and at 720p it records at 60fps, without an apparent ability to set them independently.

I do see however that changing the Video system to PAL takes it down to 50fps, but I'd like to stick with the NTSC standard of 30fps.

Is this possible? --to set a custom "movie rec size" on my Canon SL1 to 1280x720 with a fps of 30?

Thanks!

Short answer: no. The presets you get are what you are stuck with.

If you can do 1920x1080 at 30fps, it's easy enough to use a video editor or converter to go down to 1280x720 with minimal loss.

I frequently would record at 1080p on a Canon DSLR, and then finish and render at 720p (with the same framerate).


How do high-speed film cameras work? In Wikipedia's high speed camera page, there was this thing 'High-speed film cameras can film up to a quarter of a million frames per second by running the film over a rotating prism or mirror instead of using a shutter...'
There was no other info about this. So, can someone explain me this prism or mirror thing... with a diagram?

A normal film camera has a mechanism for stopping the film in the gate every frame while the shutter is open, then when the shutter closes pulling down the next frame, stopping it, exposing it, and so on. If the film isn't perfectly still while the shutter is open the image will be blurred.

To do this with high speed film is impractical, the forces involved in pulling down the next frame in 1/500,000th of a second and bringing it to a dead stop would simply destroy any film you could put in it. So in a high speed camera the film doesn't stop, instead there is a rotating prism, as stated in the article. The prism bends the incoming light as it rotates, and it does so in a way that the image follows the frame of film as it passes through the camera.

A good article explaining it here, this illustration in particular:

In this illustration the frame of film would be on the right side, moving downwards, following the spot of light.

The reverse of this can be seen in a Steenbeck editing machine that also uses a rotating prism to hold the image on the screen steady while the film moves continuously through the viewer.


FFmpeg - how to omit individual frames by the list of their numbers? I have an input video and I want to omit (or delete) individual frames from the next processing (because of the added disturbing big text irregularly occurred on top of some individual frames).

I have the list of ordinal numbers of these frames but maybe it would be better to recognize them during processing by some filter (if it is possible; the text is the same and at the same position).

Is there some way how to exclude them from the next processing?

(The list has about 20 items.)

The direct selection method is simple.

ffmpeg -i in.mp4 -vf select='not(eq(n,45)+eq(n,47)+eq(n,75))',setpts=N/FRAME_RATE/TB out.mp4

Frame count starts from zero.  Audio is ignored.

(I'll check for a detection method)


Split video screen into 3 equal parts I'm working on a project that will be presented on 3 screens. The idea is that each screen in showing a part of the screening video, which means the upper display shows the upper 1/3 of the video screen, the middle display shows the middle part of the video, and the lower display the lower part of the video.

So my question is how can I cut the video screen in 3 equal parts, and with which program?

Thanks for each reply!

Edit your footage in one timeline, with the sequence setting set to the combined dimensions of all the screens (so the width of one screen across × three times the height). So if they're 1080p screens you'll be looking at 1920 × 3240.

Now make three sequences, each with the resolution of one playback screen, e.g 1920 × 1080. Take your original sequence and lay it into these timelines (as a nested sequence).

Adjust the motion properties of the clip in the first sequence so that the top of the clip lines up with the top of the frame, then in the next sequence align the middle of the clip with the middle of the frame and in the last sequence align the bottom of the clip with the bottom of the frame.

Now you have three sequences that align as you wish. The beauty of nesting the combined sequence is that you can make changes without having to synchronise three separate sequences.


One Word vs. Multi Word YouTube Channel Name I'm getting ready to create a channel name with three short words. I'm trying to decide if it would be better to mash them together into one word or keep separate words. Searches for the subject only find people talking about how to create a one word channel, not why. I noticed that the trending and recommended videos on the front page are a mix of mashed together words and multi word names. Any advice on which would be better and why is appreciated. Thanks!

I don't think it really matters. People do both all the time. It really all just comes down to the content you provide, using appropriate tags on each video, and being consistent with your postings.


What is the difference between ffmpeg and ffmbc now? Two years ago I've used ffmbc to encode videos to prores, but nowadays ffmpeg also supports prores and avchd. What is the difference between ffmpeg and ffmbc now?

Usage differences

Note: ffmbc/ffmpeg will refer to the tools, while FFmbc/FFmpeg will refer to the projects themselves and/or each whole collection of tools and libraries.

There are syntax differences including:

ffmbc uses the old, confusing -newaudio option while ffmpeg can just use -map.
ffmbc does not support -codec or -c, so instead all stream types must be explicitly defined if you do not want to rely on the defaults. For example -vcodec copy -acodec copy -scodec copy vs just -c copy.
Probably lots more that I didn't think of. Feel free to edit answer and add more.

ffmbc will automatically relocate some data after encoding to MOV, MP4, etc while ffmpeg requires the -movflags +faststart option.
ffmbc does not support -filter_complex so filtering is different. For example, using the overlay video filter:

ffmbc: -i video.mp4 -vf "movie='overlay.png' [movie]; [in][movie] overlay [out]"
ffmpeg: -i video.mp4 -i image.png -filter_complex "[0:v][1:v]overlay"

FFmbc seems to support more broadcast formats.
FFmpeg has more features and filters.
FFmbc dropped ffplay and ffserver.

Development differences

FFmbc is GPL, and FFmpeg is mostly LGPL which makes porting features from FFmbc to FFmpeg more difficult.
FFmbc is basically the project of a former FFmpeg developer with a few contributions from others. FFmpeg has many developers and contributors.
FFmpeg often merges things form Libav, while FFmbc ignores Libav. Libav cherry-picks occasionally from FFmpeg, but ignores most stuff from FFmpeg (Libav is often joked to have "NIH syndrome").


How to get blinking play button on top of the video in Adobe Premier Pro? I have added date and "Play ►" text but how do I get Play button "►" to flash like in the GIF below?

Open a text editor and find the ▶ unicode symbol.
It will be called something like:
BLACK RIGHT-POINTING TRIANGLE
Unicode: U+25B6 U+FE0E, UTF-8: E2 96 B6 EF B8 8E

Open a sequence in premiere and create a text object.
Keyframe the opacity to 100%
Move forward 15 frames
Keyframe the opaticty to 0%
Select the two keyframes
Right click them and set them to "hold"
Copy both keyframes and paste them many times across your timeline.


What should my aspect ratio settings be for an Instagram ad? I am trying to design a video for my ad in Instagram, but when I upload the video, it says:

Story media aspect ratio has to be smaller than or equal to 9:16
Aspect ratios of videos need to be 1:1.

What should be the settings?

It means that the ratio between the width and the height of the content (in pixels) should be the specified one.

Specifically, for a video you need to have an aspect ratio (technically, a DAR - display aspect ratio) of exactly 1:1, so the width of the video should be the same as the height of the video. In other words, the video should be square. As an example, 1000 pixels x 1000 pixels is fine, because (1000 / 1000) == 1.0, while 1280 x 720 is not, because the division is not 1.

For what they call "story media", the aspect ratio should not exceed 9:16 (which is 16:9 in vertical). In numbers, that's 0,5625. So in this case the "media" you're uploading shouldn't be exceeding that 0,5625 value, when calculating the ratio between the width and the height of the content.


Video Streaming connection speed What is the required upload speed I need to stream HD video on web?
Curently I am in process of talking to various ISPs so I can find the best solution, but seems like they can't help me since a lot of them are offering low upload speed connections.

It depends on a lot of details you haven't covered here. You need about 3 Mbps to have sufficient overhead to maintain a well compressed 720p stream (the quality that Hulu Plus uses), but you would need specialized hardware to keep a good quality 720p stream encoding on the fly.  Most likely, you are going to be looking at significantly more than that if you are trying to software or CUDA encode on the fly since it won't be able to get as high of quality with as little data.

Note that this is only talking about sending the feed to a single system as well.  The most common case for distributing to multiple viewers is to encode and upload to either a CDN (content distribution network) or your own live streaming server that is in a data center somewhere.  With that kind of a setup, your one connection can be replicated out over a 100Mbps or 1000Mbps connection to many more viewers.

You can use overly compressed settings to reduce the bandwidth needs further, but it will start showing as a really noticeable reduction in meaningful resolution.  There might still be an HD number of pixels, but they won't have the kind of detail you'd normally expect from HD since it would be over-compressed.

There can be a lot of variation on that too though.  If you are live-streaming something that isn't real life, compression tricks can be used to make it much more highly compressed for example, so this still isn't a one size fits all answer, but it covers the general live video streaming case for professional level quality.


How do you play a clip backwards in Sony Vegas? While editing some vocals the other day, I accidentally hit a key in Vegas and the scrub head started going backwards, playing my audio in reverse. I wasn't trying to do this at the time and got it playing normal again. Today I was thinking that this could be useful when trying to find a point where the vocalist takes a breath. Rather than guess, split the clip and play from a few seconds earlier to hear if it is gone, then repeat the process, you could just set the play head past the breath, play it backwards and find the exact point that they start their breath.

Does anyone know the key you hit to play the scrub head backwards in Sony Vegas?

(This is not flipping the clip to play in reverse using "Right-click/Reverse", I don't need that, I just need the play head to play in reverse temporarily, like scrubbing it backwards)

Found it!

You can press the "J" key to play in reverse. Each time you hit the "J" it will jump a full speed up to x4. If you want to jump by speeds of .25x, hold the "K" button and hit "J". While it is play backwards, hitting the spacebar will jump you back to where you started playing, and hitting "K" will stop you where you are.

To adjust playback speeds going forward, you can use the "L" key in the same manor.

To find the exact point where a breath is taken, you place the play head about where the breath starts, then hit "J", it will play backwards for a bit. Hit the spacebar and adjust the playback spot by hitting the left or right arrow, then hit "J" again. Once you are exactly where you want to cut the clip, hit "S" and you will split the clip right there.

(The arrows will jump one "frame" according to the frame rate of your project, even if it is an audio project. If it is set to 24 fps, it will jump 1/24th of a second forward or backward)


How should I go about making 80's style graphics? I want to make a title screen thing that looks like this:

See how it's all anti-aliased and bloomy, and the font is sort of computery?

Also, I want to make it slightly waver here and there.

I can use After Effects, Premiere, and Sony Vegas

Thanks!

There are a few things you can do to get this look, first, use an artificially low resolution.  A lot of early graphics generators were done on things like the Amiga Video Toaster at 320 by 240 resolution.

Additionally, you can get the background look by making a normal gradient in Photoshop and then reducing the color depth substantially.  You can either reduce to 8 bit color or simply use a GIF with dithering turned on and lower the number of colors until you get the desired result.

Use classic pixel fonts for the lettering.  There are literally hundreds of possibilities out there to choose from, so you best bet is to look through something like Google fonts until you see something you like.

Finally, use interlaced video and run a couple interlaced to non-interlaced and back conversions to add the scan line related issues typical of old footage.  If you have an old VCR, try recording the video through a couple generations of VCR recording too and it will give it some nice analog degradation to really maximize the feel.


seamless DNXHR player I am looking for a player for DNxHR that will playback files seamlessly, as there is no brief pause between files playing. two files played back to back should play as though they are effectively one file. can someone recommend a good solution for this? thanks!

Player like djv and vlc should be able to play dnxhr without issue. The pauses likely occur because of the reading-speed of the drive. If djv and vlc are still buffering while playing, try moving your footage to a faster ssd and try again.


I have a TS file. How do I render it? (I decided to post this here because it doesn't fit very well into the Gaming category, but it is a gaming question.)

I had the idea to try streaming video to Twitch one on computer and to record it with VLC on another, using Livestreamer. The result is a TS file.

If I wanted to upload it to YouTube, how would I convert it to mp4 (Or is there a better format?) without loosing quality?

Also, I hear people talk about rendering their video. I understand that when a video is first recorded it is in 'raw' format. What does rendering entail?

"Raw" ususally refers to uncompressed video (though this is technically wrong), meaning you probably have a very large file. Rendering is the process of re-encoding the video using another codec, usually to reduce file-size while maintaining a decent enough video quality. The reason that .mp4-files with the H264-codec are widely used is that they offer a very good filesize-quality-ratio.

In your case, a very compressed file is not what you might want, since Youtube reencodes your video when you upload it. Every reencoding reduces the video quality, so the double reencoding will result in poor quality.

If you cant upload the .ts-file directly (I don't think Youtube allows this), you could reencode it to an mp4 or avi (imho, the latter is better in this case, though getting the encoding settings right is a bit tougher for beginners). The key is to chose a very high bitrate and the same framerate and resolution as the original video. Using a high bitrate, the quality-loss resulting from the reencoding can be minimized. However, this will result in very large files (espacially if you choose avi), which depending on your internet connection might take very long to upload.

There is a range of free encoding programs out there. I'd recommend XMedia-Recode, but you could also try Xilisoft Video Converter or Format Factory.

Edit: If you want to cut your video (i.e. add an intro and an outro, put different videos together, remove unwanted parts, ...), you'll need a video editing program. There are some freeware programs for this (none of which are as good as professional, paid programs), you can find a list of video editing software at wikipedia.


Too many arguments in ffmpeg, concat, filter_complex command, what I am doing wrong? I am using the following ffmpeg command with filter_complex:

ffmpeg -i GOPR0013.MP4 -i GOPR0013.MP4 -filter_complex "[0:v:0]fps=32,scale=1920:1080[v1],[v1]vflip[vF1],[vF1]hflip[clip1], [clip1] [1:v:0]fps=32,scale=1920:1080[v2] [v2] concat=n=2:v=1 [v]"  -vcodec libx264  -map "[v]"  video_out_01.avi

However, it says:

 "Too many inputs specified for the "fps" filter.
Error initializing complex filters.
Invalid argument"

What I am doing wrong?

I finally found out how to do it!

ffmpeg -f concat -safe 0 -i VIDEOFILES.txt -filter_complex  \
 "[0:v] fps=32, scale=1920:1080, vflip, hflip, setpts=0.25*PTS, fifo [v0]; \
  [0:v] fps=32, scale=1920:1080, vflip, hflip, setpts=0.25*PTS, fifo [v1];
  [v0][v1]concat=n=2:v=1[out]" -map "[out]" -crf 14  -vcodec libx264  -vb 20M  -loglevel error  video_out_01.avi

concat: concetrate files
VIDEOFILES.txt: video files with path
included, eg. file '/path/a.mp4' (including file)
fps=32, scale=1920:1080: drop to 32 frames, and reducing video resolution
vflip, hflip: 180 degrees rotation of the video
setpts=0.25*PTS: Four times speeder
fifo: a ffmpeg filter that it says to wait frame
to be fully processed before it is given to the next process --- due
to some filter process frame quicker than others e.g. due to frame
drop (?)
crf 14: High quality ensured (0 = uncompressed)
vcodec libx264: codec to compress the video file
vb 20M: video bitrate (a high one)
loglevel error: ffmpeg output information only errors will be displayed

BIG Questions:

A) I tried to reverse the order of filters eg.
[0:v] setpts=0.25*PTS, fps=32, scale=1920:1080, vflip, hflip,  fifo [v0]
However, it was extremely low.
The commands are executed seriasly? Then, why I must recode every frame, when only 1/4 of them will be kept? How can I do that in order to gain recoding speed?

B) Why I need FIFO eventually. This must be not the default behavior? All frames that are kept must be processed from all filters! Right? Why then ffmpeg drop frames without being processed? this is the meaning of FIFO? Right?


After effect preflighting please i need help. I am trying to render a big project filr which has lots pre composse files in it. And it was taking  almost 2 days to hold on pre- flighting before rendering.  And then rendering for maybe 24 hours. I am using ailenware i7 with 32 ram. But now when added few more files  with the same project, now it cant render anymore....it always shows pre flighting.....please help if possible

I assume that after effects is creating its cache-files on the c-drive (which is the standard location if I recall correctly) and because there is near to no space left, it struggles to cache frames. The first thing you can do is go to edit -> purge everything and see if that helps. In any case, I highly advise you free up your c-drive - I'd feel comfortable with about 100-200gb of free space (at least)


Video hosting with local control I am writing a web application with video lessons in sequence. I want to use a streaming service for high availability and compressing content for different viewports. I would like the user to watch a video to unlock the next one. And I would like to monitor the number of views to know when to release the next one. And I would also like to keep the option of releasing the video publicly with those views counting toward the total number of views.
I read about OAuth on Vimeo and think that something like tokens could work, although I'd also need to make an API call to check if a user with a token did finish watching the video.
Does any video streaming service do such a thing?
(Migrated from WebApps where the question got no answers in one week.)

I see 2 things you are trying to achieve here:

video is private, but becomes public. at api.video, we have the concept of private videos - where users must have a one time token to watch.  Anyone else using that token will be unable to watch the video.  Once you reach your view threshold, you can make the video public - removing this token behavior.

Monitoring the views of each user.  We have a concept of dynamic metadata - where you can attach session information to each view.  You could track each user's viewing in this way. For example, if you wanted to tag a view as watched by Bob:
https://embed.api.video/vod/vi2ZEgTAhfOEeYN7ZnEGsm3i?metadata[user]=bob

When you load the page of videos - you can query the video analytics for sessions for user=bob.  Each session will list the videoId, and the start/end time of the session.  Your app logic can decide if enough of the video was watched to unlock the next video.


How to remove an object (Tooth) in After Effects I have a 5 second Video clip of our main Character smiling and when he opens his mouth we see that his tooth is gone. We have painted the whole tooth black but there is a shine on it and it doesn't look right. You can see that the hole up to his gum is black and probably should probably be more red.The shot itself is static.

I was wondering how to remove this tooth in after effects. Its the final shot of the film so is important to get right. I have after Effects CS5.5 and Motion.

If necessary we would shoot it again if anyone has any tips. Thanks!

Thanks everyone that replied. Sorry for the delay in getting back. We had a bereavement in the family and everything was left. I think Rotoscoping is the way to go. Will update when i fix the problem.

Unfortunately, the only answer is rotoscoping.  You have to remove the tooth from each frame manually.  Rotoscoping tools will help give a closer starting point, but that kind of object removal where both the object and the background behind it are changing and moving is nearly impossible to do without manual effort.

Note, if everything in the mouth behind the teeth is black or basically the same color, then you have a lot more options as Brett outlined in his answer.  I was assuming that there was more detail in the mouth based on your description that would require background painting, but if you can avoid background painting for the mouth, then rotoscoping isn't needed.


ffmpeg stretch edge pixels to cover black bars I have a video file that is a screen recording of some slides. The slides had a 4:3 aspect ratio (1440x1080), but the video file is 16:9 (1920x1080), meaning there are black bars to the left and right. I would like to take a narrow column of pixels from the leftmost edge of the slide (say, the 241st column of pixels) and stretch them to cover the left black bar (and do the same on the right side to cover the right black bar). Is this something that can be done entirely on the command line by ffmpeg?
Schematically, what I'd like to do is turn this video frame:

Into this one:

FFmpeg has a fillborders filter that can be used here.
Assuming a 1440x1080 content area inside a 1920x1080 frame, use
ffmpeg -i in -vf fillborders=left=241:right=241:mode=smear -c:a copy out


Sony Vegas 10 Video made from smaller quicktime mov videos look crap on youtube this has been a painful drama for days, trying to get a nice video on youtube for my girlfriend. It looks great on the mpg file sony vegas generates, but after uploading to youtube it look more than crap.

The original videos were shot with the Panasonic Lumix DMC-FS7 which uses quicktime mov format. The settings of these files are shown below, as seen in the detail tab of the properties of the video:

  General
    Name: P1050576.MOV   Folder:
  C:\Users\Public\Videos\maquiagem\3_abril   Type: QuickTime   Size:
  322.52 MB (330,261,322 bytes)   Created: terça-feira, 3 de abril de 2012, 20:55:02   Modified: terça-feira, 3 de abril de 2012, 15:21:00
  Accessed: terça-feira, 3 de abril de 2012, 20:55:02   Attributes:
  Archive

  Streams   Video: 00:03:56.000, 30.000 fps, 848x480x24, Photo - JPEG
  Audio: 00:03:56.000, 16,000 Hz, 16 Bit, Mono, 16-bit Big Endian

  ACID information   ACID chunk: no   Stretch chunk: no   Stretch list:
  no   Stretch info2: no   Beat markers: no   Detected beats: no

  Other metadata   Regions/markers: no   Command markers: no

  Media manager   Media tags: no

  Plug-In   Name: qt7plug.dll   Folder: C:\Program Files
  (x86)\Sony\Vegas Pro 10.0\FileIO Plug-Ins\qt7plug   Format: QuickTime
  7   Version: Version 1.0 (Build 8261)   Company: Sony Creative
  Software Inc.

I tried several settings, and in my last attempt I used the video tutorial below to borrow the settings:

www.youtube.com/watch?v=qXa849N9J9s

The resulting video looks great when playing locally (like all the ones before), but after uploading to youtube it has the same problems as the ones I had uploaded before:

I tried to convert the rendered video using the SUPER app, to see if it improves something. THe link in this (just checked and it really look bad, and at a much worse screen resolution.):
watch?v=OUBpdAjuNO8

I also tried to upload directly one of the many quicktime MOV files, to see if the problem is with the original format.

The resulting youtube video is below, there are many problems with the original MOV film after it got uploaded to youtube:

www.youtube.com/watch?v=54neVq4dAa0

I had installed the latest quicktime version. I read somewhere that sony vegas 10 requires an older version of quicktime, the 7.1.6 to work without problems.

I had doubted of this, but I just can't understand how a video run perfectly locally, and after uploaing it looks really bad :/

If nothing else works, I will try to downgrade my quicktime, but looking at the original file on youtube, now it looks the problem is some incompatibility with the mov. I would just had tought that after the video was rendered by sony vegas, this "supposed" incompatibility would be gone...

any help is welcome :) I uploaded the rendered video, if this helps in anyway to find the problem. You can confirm that it looks great locally?

thanks
Emerson

I would try uploading the video to vimeo as well. Or, if you have your own website, uplaod it to there and create a simple page with an embedded player.

My experience is that YouTube sometimes adds a LOT of artifacts when it recompresses things. I've often experienced the problem you're having when I work with YouTube, but rarely with vimeo.

If Vimeo looks closer to your source material and self-hosting looks very close to it, I'd bet that it's YouTube's codec more than anything.

Good luck!


How to make the rest of the mask transparent in Premier Pro CS6? I'm trying to highlight a part of my video. Since I'm totally new to video editing on Premier Pro - I'm not sure if this is the best way of doing that, but I'm using masks.

I have a title sitting in video 2 row, in it a have a rectangular mask (100% opacity)

I then apply a Track Matte Key effect on the video I'm trying to highlight, and get the following result:

This seems like a step in the right direction, but I can't find the place to change the settings of the mask to enable transparency. The intended result is to have dimmed out frame, with only the masked area fully shown.

This is the Effect Controls screen for my video:

Ok, now that I was able to reproduce your technique thus far, I can fill in the missing pieces.  Your use of the Track Matte Key produces a layer that is transparent everywhere other than where the mask is present.  You need to layer it overtop of the video that you want behind it and you need to apply the dimming effect to the background layer.

In your example, Move video 2 to Video 3 and copy Video 1 to Video 2.  Leave the track matte key on Video 2 and remove it from Video 1.  This will layer the highlighted area (Video 2) over the full video (Video 1).  You can then either reduce the opacity or apply a brightness reduction to Video 1 to make it appear more subdued and get the look you are going for.


Modify a sample in a mix using the original sample The song 'No Homo' by The Lonely Island samples 'Girls Can't Do What the Guys Do' by Betty Wright.

http://www.whosampled.com/sample/view/96863/The%20Lonely%20Island-No%20Homo%20Outro_Betty%20Wright-Girls%20Can%27t%20Do%20What%20the%20Guys%20Do/

In 'No Homo', the sample is lowered in pitch. I was able to raise the pitch to make it kind of sound like the original song. However, this obviously raises the pitch of the entire song. So my logic is to remove the sample from 'No Homo' and raise the pitch, then put it back in. Naively I thought I could cancel it out, but that obviously doesn't work because they're not the same waveforms.

Using Audacity, is there an easy way of changing the sample in 'No Homo' using the original song?

In theory, if you knew exactly what they did to the sample, you could produce an inverse wave and recombine it with the mixed version in No Homo.  However in practice, since it is unlikely that you will be able to match the frequency shift exactly plus whatever other effects they may have applied (like compression), you are unlikely to be able to make an inverse wave that satisfactorily cancels out the original.


What is the little blue line above the timeline called? i'm trying to find out what this thing is called,

it's the little blue line above the timeline, is there a name for it? what does it do? thank you.

They call that a "zone" which is something like a selection of the timeline. The video you've linked already shows how it can be used.
I don't know why it's already there at the beginning of the video, it seems intentional and a very short Zone-bar is always there by default. That's maybe to remind the user of this feature but in any case is a strange decision in regard of user experience.
The manual indicates such a zone can also be set via the program monitor. More in the manual.


Essential Graphics - Media Replacement issue I was trying to improve some of my work templates using Essential Graphics, which I absolutely love, for the first time I'm adding the media replacement function to it but it doesn't seem to work.
I've tried images, videos and an actual AE placeholder but it just doesn't seem to accept any of my assets.
Check this tutorial at 05:30 where she successfully achieves what I'm trying to do.
I'm wondering if anyone else has encountered the same issue, I'm probably doing something wrong but I don't seem to see where.

Even though Essential Graphics have been available for a few years now, Replace Media is available around After Effects v18.0, be sure to update your app.


High-end graphics cards: is it needed or useless for video editing at i5 machine with quicksync? I am in search of a graphics card that makes video editing fast.

I think to buy an i5 cpu with a motherboard with quicksync (z68?) and an SSD.

Quicksync on cpu is only for transcoding (h.264 and mpeg2 as I understood).

I suppose that I need a discrete graphics cards with cuda to make faster the rest of video editing.
I don't care about 3D games.

Ofcourse, I will use software that supports the technologies needed.

The differences among the various graphic cards currently are the number of cuda cores (eg 96), the memory size (eg 1GB), the memory-channel size (eg 128bit), the type of RAM (DDR3/DDR5) etc.

Up to what point, adding cuda cores, and more memory to the graphics helps would help my video editing process?

Is it enough to buy a cheap cuda card (under $100)?
Would buying an expensive card with more cuda cores, extra memory, bigger memory
channel size, offer significant advantag over cheap cards?
Could an expensive cuda card even offer no advantage at all, if there are
other bottlennecks at the system?
Does a system with i5, z68    motherboard and SSD disk, 8 GB ram, and windows 7 64 bit have any bottleneck for high-end cuda cards?

First question to ask is:

Does your video editing software actually use your GPU at all in the editing process? If it isn't written to use CUDA then you will not benefit from getting a better video card, other than being able to view it in higher quality on the screen.

For software that can, all of those factors are important:

Memory size is likely to be the most important as working with all relevant data in memory is faster than having to import from disk.
Memory channel size is also important, as is the speed, for ensuring you minimise latency when reading video data.
CUDA cores are probably the least relevant when editing, as this is not a hugely intensive task. They would be much more important when rendering, or carrying out complex image manipulation.

update based on comments

Adobe Premiere Pro does use CUDA, through the Mercury Playback Engine. From this post on the Adobe forums, whether a frame can be processed by CUDA depends on the size of the frame and the amount of RAM on the graphics card (VRAM), which supports my point that the most important is RAM size.


Find/replace duplicate comps? I'm working on a giant project file that was obviously created by importing lots of other projects into one big one.

Many of the comps use many of the same precomps ... from projects that were copies of each other ... so there are many precomps that are probably identical, but each is used in a different master comp.

Is there any way to (a) check if 2 comps are truly identical?

And (b) automatically replace all references to identical comps with references to just one copy, so that the project can then be properly reduced?

I do not know of and couldn't find a script that does this already but it would be certainly possible to write one. After Effects doesn't have a functionality built-in for that.

With the help of ExtendScript you can write very powerful extensions for After Effects and its very easy to get going with it. Just open up the "Adobe ExtenScript Toolkit" that gets installed with every CS suite and load up an example for After Effects and have a look at the JavaScript documentation. While you can also script with AppleScript and Batch Script the documentation for the JavaScript version is a lot better.
You can access it under the "Help" menu. Most importantly look at the After Effects Scripting guide. It can be found for different CS/CC versions here.

What I would do is start to iterate through all your compositions, grab the current composition in your iteration, get an array of all the layer names in that composition and then iterate with that array through all compositions and compare the array with the array of all the other compositions. Best to not sort the arrays in case you used generic names for layers and unique layer ordering is important.

Unless you have micro changes in your duplicate comps like changed property values and keyframes this approach would be effective.
If you do have micro changes you would, after having fetched all comps with duplicate layers, also have to access every layer in your array and compare every property with the corresponding layer in the other comp.

You then delete all true duplicates of a comp and while doing that replace them with a link of your now unique comp in all occurrences in other comps.

Shouldn't be much code but it could take some time to write if you have never used Adobe ExtendScript.

On another note, a very helpful plugin to keep the composition import madness at a minimum is BAO Dynamic Comp.


Final Cut: Youtube 4K Upload directly or by file For 4K video, Is better upload direct to YouTube or Is better to export in ProRes (or another) in hard disk and then upload the file to Youtube?

I record usually amateur football matches and upload to youtube. But when you select "upload youtube" option the file size is stimated at 8Gb for 1hour in 4K. It is usual? It is drastically decreasing the quality?
The same project exported in ProRes generate a 40Gb file.

We cannot tell by the information you're giving. The "upload to youtube" function uses some sort of container and some sort of codec with some sort of bitrate that we don't know, however, 8Gb for an hour in 4K is a very small file. I remember exporting a shortfilm at about 24 Minutes in 1080p and having a 15Gb file.

Youtube converts your file after you upload it, so rendering in a semi-okay codec will force youtube to make an even worse file out of your rendering. If you want to be absolutely sure, just render your file as a ProRes 4444 XQ and derive all conversions from there.


Is there a way to smooth random audio dropouts with ffmpeg or Premiere? I have large amounts of footage with audio tracks that have random dropouts throughout which last for ~0.5 seconds each (all audio dropouts are consistent in duration).
I need to smooth out the drops, such as quick fade out/fade ins to the audio track.
There are a lot of these drops scattered randomly, so an automated method to detect and fix would be ideal.
If this isn't achievable with ffmpeg, is it possible with Premiere?
Example dropout in an audio track:

Neither Premiere nor ffmpeg support such an operation as far as I know.
But you could edit the audio with another program. Most DAWs (digital audio workstation) have more features to edit audio than video editors.
One such DAW is "Reaper". It comes with a free trial period, so you can test it for yourself if it's a good fit for your workflow. I'm sure other DAWs offer similar features but I don't use them and hence can't tell you more. I also don't know whether Adobe's Audition can do that.
The steps to solve the problem in Reaper are:

create a new track, insert the media file that contains the audio track
use the action "Item: Auto trim/split items (remove silence)" where you select the mode "split and keep silent areas". Play around with the other parameters if the splits are done at the wrong place. When splits are created, Reaper automatically adds a crossfade by default (can be changed in Preferences->Project->Media Items Defaults->"Create automatic fade-in/fade-out for new items").
Render the audio and re-import it into the video editor, if needed.


Premiere .prproj file ticks drift by 1/1000 compared to timecodes I am a programmer and am processing Adobe Premiere .prproj files. I read the contained XML data to figure out where a <Media> element's video file starts.

I have a video that's been recorded with a timecode starting at 10:00:00:00, i.e. exactly 10 hours, or 36000 seconds. That timecode is what Premiere shows for the start of the file.

The corresponding data in the project file is:

<Media ...>
    ...
    <Start>9153720576000000</Start>
</Media>

That value uses ticks as unit.

Now, I make the assumption that one second equals 254016000000 ticks. That's because, when I have, for example, a sequence with 25 FPS, its FrameRate element in the XML specifies 10160640000 ticks, and that's exactly a 25th of a second.

But when I divide the <Start> value 9153720576000000 by 254016000000, I get 36036 seconds, and not, as expected, 36000 seconds.

So, by reading the XML values, I learn that the video starts at 10:00:36:00.

Curiously, that difference is exactly the 1001/1000 ratio of NTSC drop-frame timing, right?

Now, how do I make sense of the data in the Premiere project file? On one hand, its ticks base of 254016000000 is precisely identifying the used frame rates in the same file, so it must be the correct value for ticks per second. OTOH, it is off for time codes by 1ms per second.

How shall I interpret ticks values in the file? Shall I adjust them all by a factor of 1.001 to get the actual time code, or where's my error in all this?

Or is it a known fact that timecodes are not based on actual seconds but on 1.001 seconds?

In other words, does 10:00:00:00 mean that it's actually starting at 36036 seconds?

Update

It appears that there is indeed a drift with timecodes vs. real time, but only if the recording uses fractional FPS such as 29.97 or 23.976 (= 23.98), according to this article.

And, indeed, the media file in question was recorded at 23.98 FPS.

So, am I right in the assumption that whenever I interpret a time code, I need to also look at the involved FPS, and if it's fractional, I have to add 1ms per second to the calculated time to be more accurate in the long run? (I do not care about single frame accuracy, so it does not matter when I apply the drift correction, it's only a question when to apply it at all.)

First, let me say that I have no idea what Premiere is doing with its values or what a 'tick' means in their terms. I can only speak generally.

The video frame rate should match the timecode rate, but for 'drop frame' timecodes the relationship isn't perfectly linear. There are certain timecode numbers that never show up in the sequence -- the ones that are 'dropped'. So for such codes you can't just perform a simple computation, you have to consider the drops.

Over the course of 1 hour there are 108000 frames at 30fps, but drop frame code will produce only 107892 unique numbers. Both clocks will agree that "the time" is 1:00:00:00.

If you're just using timecodes to label each frame with a unique number then any scheme will do. If you need to match time of day, then you have to take the dropped numbers into account. What do you need to do with your values?


What does it mean "This filter supports the following commands"? In the FFmpeg Filters Documentation some filters have a subsection "Commands" which begins with the sentence

  This filter supports the following commands:

e. g. in the section 6.68 volume.

Filters have parameters; it is understandable. But what is the meaning of filter commands and how and when are they used?

Commands allow you to change the parameters during execution of the command. This is primarily useful when working with streaming media e.g. if the volume gets too loud during a broadcast, send a command to the volume filter to lower it.

To issue commands to filters which support it from outside, ffmpeg has to be compiled with libzmq support. See the docs for the zmq filter for details.

To issue commands from the terminal, press c

The 'command prompt' will be shown :

Enter command: <target>|all <time>|-1 <command>[ <argument>]

Enter a command as per the given format and press Enter.

e.g. overlay@logo -1 x 100


Is VAAPI the same as hardware encoding? I don't know if this is the place to ask, it's a bit of a hybrid video/IT/developer question, so my apologies if it is not.  I scoured the entire internet and can't find an answer to this question!

I'm re-encoding a bunch of videos, and I don't want to lose too much quality, but I don't want it to take three years.  I'm avoiding traditional GPU “hardware encoding”, as that always has quality trade-offs for the purpose of being real-time for live streaming and such.

Then I got to thinking: “Couldn't you just offload some of the software encoding tasks to CUDA or OpenCL to speed them up?  But still not really be 'hardware encoding' per se?”, so I did some digging and ended up with a VAAPI encoder which is going 8x as fast as straight CPU encoding, which is great — my question though, is, is it doing the same traditional “hardware encoding” which is going to bring quality issues?  Or is it in fact doing what I describe above and just using the GPU as a co-processor of sorts?

Couldn't you just offload some of the software encoding tasks to CUDA or OpenCL to speed them up?

No. Video encoding is very difficult to parallelize. And even in software adding threads has a quality impact. GPUs run small, simple programs. Their speed comes from being able to run thousands of copies of these small programs at the same time. All forms of compression work by reducing entropy from a stream. Meaning it needs to have knowledge of what data it has encountered in the past. If the past is running on another core, it must wait for it to finish (eliminating the benefits of multi core) or proceed without that information (hurting compression ratios)

VAAPI uses intel QuickSync.


360 Degree Video Encoding for Playstation Media Player and PSVR PlayStation 4's Media Player is very picky in terms of supported video formats, codecs, and resolutions. This becomes specifically difficult when converting high-quality virtual reality content for PS4's Media player to play it with the PSVR.

I wonder: What is the best format and quality to bring 360 degree videos to PlayStation 4?

I found this help page from Sony that shows the supported formats (version October 27th, 2016 for Media Player v2.5).

To my knowledge the best format in the list for my purpose is

MP4 file format with:

Video: H.264/MPEG-4 AVC High Profile Level4.2
Audio: AAC LC

I have also tested different resolutions, but for the current version 2.5 of Media Player, it accepts 1080p Full HD max.

The current version of Media Player allows 360 degree videos in VR mode, however, I found no way to play stereoscopic videos (side-by-side, or top/bottom).

Yet, the best ffmpeg command to convert videos for the PlayStation 4 I found is:

ffmpeg -i file.mp4 -an -vcodec libx264 -profile:v high -level:v 4.2 -s 1920x1080 -preset slow -crf 18 -c:a libfdk_aac -vbr 5 file_ps4.mp4

Any suggestions or hints are welcome!

A new Playstation Media Player has been released. As of version 5.0, more possibilities exist for media. At least photos worked very good so far, I watch equirectangular 360° images that I took with my Xiaomi Mi Sphere camera, stitched with the camera's software. But it didn't play any videos I tried.

However, I managed to watch videos that I took in 3.5k (3456x1728) with the Xiaomi Mi Sphere, stitched with the camera's software and then converted with "Littlstar PSVR Encoder" by Stormware: http://stormwave.uk/#downloads. It even kept the original resolution of 3456px width, but the result still doesn't look awesome. For macOS and Linux, you can try littlestar's official ffmpeg wrapper tool: https://github.com/littlstar/ls-psvr-encoder, I haven't tried it so far.

Littlstar will play stereoscopic videos, too. You can read more on "sideloading" in Littlstar (means: Not streamed from the Littlstar cloud) here: https://medium.com/@littlstarmedia/side-loading-now-available-on-the-ps-vr-app-fe362f6c3e94

I used a PS4 Slim, so a PS4 Pro is not required. I dunno whether the results might be any better on a PS4 Pro.


Software recommendation for creating videos for demoing research results I wish to create a video that demonstrates my research results, which comprise of images (graphs, tables, visualisations, etc), image sequences and videos. An example video which achieves what I am trying to do conceptually can be found here (MP4 file, ~15.9 MB).

Therefore, the requirements for my research videos include the ability to create:

Title pages
Images to be displayed over variable time (e.g. graphs / tables, single frames side-by-side, etc)
Text annotations (with options for adding bullet points / numbered lists, arrows, boxes, etc)
Video sequences that can be displayed side by side and it is critical that they are in sync
Image sequences to be played as video with a user-defined frame rate
Background audio (voice-overs)

Such resulting video should be of similar quality to the example given and allow good compression ratios.

OS: Mac OS X 10.9

System: 2.7GHz i7; 16GB RAM

Budget: $300 (when justifiable)

Complexity: Up to a full day of learning

Given this use case and constraints, what would be the best software tool for such a task?

Just about any NLE could handle your needs.  Nothing in that listing seems particular difficult, though with a budget of $300 it might be easiest and fastest to pay an editor to put it together for you really quick.  Alternately, Final Cut Pro X could do it pretty easily since you are on the Mac platform and the most recent copy is just within your budget.

It is a professional NLE (non-linear editor) but there are a ton of tutorials available online to get you going quickly with all the basics and your particular needs are very simple to do.


GH2 HDMI out on MX02 & Black Magic (Need for studio recording) I have the following gear:

2 x Lumex GH2s
Matrox MX02
Black Magic Intensity
XLR Shotgun Mic

My problem....

I have a studio where the cameras do not move, I use the HDMI out on the cameras in to the MX02 or Intensity. I am running 23.9 frames per second output from the cameras. When I use the video in Premiere Pro, the video is all jittery. I get the issue on both capture cards.

I use a studio with a white, green background however maybe I only need cheap camcorders. The audio is coming via XLR input on the MX02.

I have asked Matrox http://forum.matrox.com/mxo/viewtopic.php?p=41114#41114
I have asked GH2 forum http://www.personal-view.com/talks/discussion/6495/recording-out-of-gh2-hdmi-out-without-pressing-record-on-mx02-black-magic-intensity#Item_7

So I am stuck and I am not sure what to do to address the stutter. I have spent over 1800 for 2 gh2s.

I have also tried filters and plugins in Premiere Pro to make it smooth. but no joy...

Can anyone provide any insight into this...

It isn't really clear what you are asking here.  The 23.9 frame rate is most likely 23.976 which is the more accurate standard frame rate for 24fps.  This shouldn't result in a stutter.  It is possible that your computer is simply not powerful enough to play the video smoothly.

Are you trying to capture from both the Intensity and the MX02 at the same time from different cameras?  This is going to put a pretty extreme load on your system's ability to store the file and will almost certainly not work without an SSD and even that might be pushing it.

Is there a particular reason you need to be capturing the input live?  If you simply want to do uncompressed capture, I would recommend recording to Black Magic HyperDecks and then syncing in post.  Alternately, if you need to be doing live editing, you could get the Black Magic Studio ATEM Production Switcher which would handle what you need.


Create CGI spider animation Where would I start if I would like to have a spider animation that I can put over a video of a person sleeping and have the spider crawl out of their mouth.

I tried looking into Blender but that seems more for 3D models and less about animations.

No, Blender does animation as well. Here's an example of a spider animated with it:

However rigging and animating a realistic octopod is not exactly the kind of project you'd start with as a newbie. There's a lot to learn.

But if you want to have a go, you could start with this tutorial on rigging a spider's leg in Blender:
https://www.blendernation.com/2011/03/16/how-to-rig-a-spider-leg-in-blender-2-5-tutorial/


Quick way to view previous clip in Premiere's Source window? Sometimes I'm viewing a clip in the Source window, in Premiere.  Then I open a different clip in the Source window.  Is there a way to quickly get back to the previous clip, without having to burrow through the Project folders again?

I just found it by accident. Hit shift2 to go to the source viewer window, and hit it again to cycle through the previously opened clips. There's no display to tell you which clips are in the queue, other than right-clicking on the viewer tab, and the order seems to be alphabetical rather than chronological, so you might have to hit the shortcut a number of times.


Is it possible to encode video using the same codec and container but different parameters for different scenes? I know that it's very hard to find out best encoding parameters for a whole video file. Wouldn't it be easier to just go through the video and find out the best parameters for different parts (or scenes).

Does it make sense or probably there is software that already allows that?

What you are describing is effectively what 2-pass VBR does for you.  It makes a first path that calculates the level of change for each particular time in the video and then uses this information to make the best possible use of the available storage space.

It is, however, entirely possible to do the process manually by doing multiple encodings with different parameters.  In fact, many formats even support having multiple encodings with different parameters within the same file.  This is how you are able to change the resolution on the fly when streaming videos on YouTube and how Netflix automatically adjusts the quality on the fly as you watch to try to avoid buffering issues.

Any professional level encoder should allow you to specify multiple formats for the file in queue and many will even let you specify multiple outputs for one instance of the file.  (For example, the render queue in After Effects allows for this.)

In general, I would recommend running a 2-pass VBR and then adjusting the keyframe and total bandwidth accordingly.  If you are using a format that works based on the motion in the scene, then generally keyframes need to be more often if the video gets lots of motion artifacts (where it diverges from where it actually should be too much in high motion).  If the video is simply too low quality and "pixelly", then the bandwidth generally needs to be raised or the keyframes lowered.


Batch add intro and outro to videos I have 500+ videos. I need to add intro and outro to them.

Found this .bat script on a different website, and tried it. But it didn't work for me. As the script only ads outro - still didn't work.

SET RESOLUTION="1280:720"
SET INPUT_FOLDER="input"
SET INTRO="intro.mp4"
SET OUTPUT_FOLDER="output"

for %%a in ("%INPUT_FOLDER%\*.*") do ffmpeg -i %INTRO% -i "%%a" -filter_complex "[0:v]scale=%RESOLUTION%:force_original_aspect_ratio=1,pad=%RESOLUTION%:(ow-iw)/2:(oh-ih)/2[v0]; [1:v]scale=%RESOLUTION%:force_original_aspect_ratio=1,pad=%RESOLUTION%:(ow-iw)/2:(oh-ih)/2[v1]; [v0][0:a][v1][1:a]concat=n=2:v=1:a=1[v][a]" -map [v] -map [a] "%OUTPUT_FOLDER%\%%~na.mp4"

I'm on Windows OS, but I also have Linux Mint installed on my workstation.

My question is: how to add 1 intro and 1 outro to 500+ videos?

PS: Intro and Outro files are the same file.

Thank you.

Did you install ffmpeg? This script uses it so it'd be good to have it...

The Idea is that you create a txt-document with all the file-names inside, which will then get stitched together. You can read up on how it works here:

  https://trac.ffmpeg.org/wiki/Concatenate


How to trim a video with frame precision using ffmpeg? I need to trim videos with a precise end frame, however, ffmpeg seems to cut the video at the nearest first key-frame. So I don't have enough control over the ending frame.
I try to insert key-frame before trimming, but it doesn't work.
These are my command lines:

ffmpeg -i <sVideoFilename> -force_key_frames 00:00:1:520 -vcodec wmv1 -acodec wmav2 -q:a 0 -q:v 0 <sVideoFilenamekf>

ffmpeg -i <sVideoFilenamekf> -ss 00:00:1:520 -to 00:00:3:640 -vcodec wmv1 -acodec wmav2 -q:v 0 -q:a 10 -r 30 <sVideoFilenameTrimmed>*

What's wrong with my command line ?
Thanks for your answer

You seem to have a fundamental misunderstanding of how video works.  Video is composed of frames.  You can't have millisecond precision because video doesn't have millisecond precision.  If there are 30 frames per second in the video, you can only stop after one of those frames.  That means your options are only every 1/30th of a second roughly.
If the format is group of pictures based it may be limited when it can end as well depending on the formats ability to end a group of pictures early. (A group of pictures is used in formats where some frames are stored as changes from other related frames rather than full images.)

What are you trying to accomplish that you need this precision for?  Perhaps there may be an alternate way to accomplish your goal.


SD class 2 and video HD I hope that I'm writing in a right section. I have a videocamera full HD (low price) and a SD class 2. Can this type of class film HD videos or it will save bad quality videos?

Thanks, Alessandro.

According to the SD association, Class 2 SD cards have a minimum writing speed of 2 MB/S. That is not sufficient for HD recording, let alone Full HD. Even though that is only the minimum speed, I don't think the SD card will be nearly good enough. If you already have the camera and the SD card though, why not try it out for yourself? Worst thing that can happen is the camera won't record anything or stop after a few seconds.

Here's an overview of the different speed classes. Depending on your camera model, I would recommend you get a class 6 or 10 SD card. The manual of your camera should also state which SD writing speed is required to record Full HD video. Most cameras (at least in the medium to high pricing range) will also allow you to change the (average) bitrate video is recorded at, you should also look into that. Use that information to decide on an optimal SD card for your needs.


FFMPEG - MAC OS Cannot Capture from Black Magic UltraStudio (Thunderbolt) I have Black magic UltraStudio Express that captures SDI or HDMI and Connected to MacBook via Thunderbolt when I list devices I get the Audio but not the video :

$ ffmpeg -f avfoundation -list_devices true -i ""

ffmpeg version 3.4.2 Copyright (c) 2000-2018 the FFmpeg developers
  built with Apple LLVM version 9.0.0 (clang-900.0.39.2)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/3.4.2 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --disable-jack --enable-gpl --enable-ffplay --enable-frei0r --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopus --enable-librtmp --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma --enable-libopenjpeg --disable-decoder=jpeg2000 --extra-cflags=-I/usr/local/Cellar/openjpeg/2.3.0/include/openjpeg-2.3 --enable-nonfree
  libavutil      55. 78.100 / 55. 78.100
  libavcodec     57.107.100 / 57.107.100
  libavformat    57. 83.100 / 57. 83.100
  libavdevice    57. 10.100 / 57. 10.100
  libavfilter     6.107.100 /  6.107.100
  libavresample   3.  7.  0 /  3.  7.  0
  libswscale      4.  8.100 /  4.  8.100
  libswresample   2.  9.100 /  2.  9.100
  libpostproc    54.  7.100 / 54.  7.100

[AVFoundation input device @ 0x7fa261600d80] AVFoundation video devices:

[AVFoundation input device @ 0x7fa261600d80] [0] FaceTime HD Camera

[AVFoundation input device @ 0x7fa261600d80] [1] Capture screen 0

[AVFoundation input device @ 0x7fa261600d80] [2] Capture screen 1

[AVFoundation input device @ 0x7fa261600d80] AVFoundation audio devices:

[AVFoundation input device @ 0x7fa261600d80] [0] Blackmagic Audio

[AVFoundation input device @ 0x7fa261600d80] [1] Built-in Microphone

: Input/output error

Any Idea why my FFMPEG does not see the device, Btw, other application sees the video just fine.

Thanks

Manaf-2:~ manaf$ ffmpeg -f -format_code Hi50 -f decklink -i 'UltraStudio Express' -c:a copy -c:v copy output.avi

ffmpeg version 2.8.3 Copyright (c) 2000-2015 the FFmpeg developers
  built with Apple LLVM version 9.0.0 (clang-900.0.39.2)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/2.8.3 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-opencl --enable-libx264 --enable-libmp3lame --enable-libvo-aacenc --enable-libxvid --enable-decklink --enable-vda
  libavutil      54. 31.100 / 54. 31.100
  libavcodec     56. 60.100 / 56. 60.100
  libavformat    56. 40.101 / 56. 40.101
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 40.101 /  5. 40.101
  libavresample   2.  1.  0 /  2.  1.  0
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  2.101 /  1.  2.101
  libpostproc    53.  3.100 / 53.  3.100
[decklink @ 0x7f893a801200] Cannot enable video input

Segmentation fault: 11


Vector image from AI to AE I've ben watching tons of videos and read a lot of forums about this problem, but still cant find the solution...

The thing is that everybody says to put every object on different layers and then import the file like Footage... merged layers... then convert to layerd comp or create shapes from layers and so on... but my images are still blurry, even though i klick the button to continuosly rasterize.

this makes me crazy

please for any help.

It looks like you're zoomed in 2400%. If you view at 100% it should look smooth. I think the "blur" is just anti-aliasing.


Newlines in AviSynth+ subtitles This page uses newline characters (\n) to introduce newlines in a subtitle in AviSynth:

subtitle("First line\nNext line\nLast line", ...)

I tried this code on AviSynth+ and it fails.

Newlines would be useful for credits that take multiple lines without having to repeat the settings and tune the alignment.

What is the simplest way to include newlines in subtitles?

To use newlines in the built-in Subtitle filter, you must specify the lsp (linespacing) argument:
subtitle("First line\nNext line\nLast line", lsp=12)

See the Subtitle wiki page for more info on the argument.