Are there any Final Cut Pro, Motion or Premiere plug-ins that allow insertion of PowerPoint or Keynote slides? I haven't found an easy way to splice a slide into a video. I can save the presentation to a QuickTime movie in Keynote, but I need to do this twice a week for a number of slides.

I'm recording a live evening lecture series that is shown at a number of sites the following day. Since the sites only have one projector, I need to give them a video feed that has both video of the speaker(s) and the slides.

I've been doing this manually, but it's an hour-long lecture that ends at 9 PM. I'm often up into the wee hours of the morning trying to get everything sorted and rendered and posted to Vimeo for a 6 AM first showing.

If you're doing something like this, please share your workflow.

If your show requires some level of postproduction, then:

1 Record the live video feed of the presenter's slideshow.  Don't just export the slides as a movie from Keynote.  Syncing slides manually will definitely keep you up into the wee hours of the morning, so don't do it.

2 Import the camera feed(s) of the speaker, any extra audio sources, and the slides, group them in a multicam clip, and sync them all together.  Again, for fastest postproduction turnaround, the more automated you can make the sync process, the earlier you get to go home.  Timecode based sync is the fastest, but most expensive.  A hand clap is free, but won't help you sync the slides to the speaker.  You've obviously already figured out how to do that manually, but finding one sync point per hour of footage is way better than doing it for x number of slides.

3 Once you've been through a couple of episodes of your show, and ironed out the kinks in look dev and process, save an extra copy of your project file and strip it of reference to any of the media you imported in step 2.  Leave everything else about this file alone; titles, intros/outros, etc. Use this file as a template for your show.  If your process involves complex file hierarchies, do the same with your file hierarchies: have a "template" project folder which includes your project files, working directories, output directories, stock graphics, etc.

4 Now, each time you do a new show, duplicate the template structure, rename it accordingly, populate it with your fresh content, fill in the blanks, and start over at #1.  As you work through more iterations, tweak the template files to incorporate as much repetition as you can automate.  You might want to pick up a scripting language or two, maybe look into some machine vision algorithms, keep an eye on github. Automate anything that gives you carpel tunnel.  Reschedule every progress bar you see to a time when you won't see it.

But if you don't need to make any kind of postproduction edit, then the answer's simple: Don't.

You've now left the world of digital film production and entered the land of broadcast.  To pursue this avenue, you'll need to be able to mix and switch all of your live a/v, and record or OTT the program.  Your requirements are minimally a $100-ish converter box and a laptop, but again, the more money you can throw at it, the better.  Blackmagic ultra studio mini recorder or whatever Aja's equivalent product is called would get you started.


Using ffmpeg to get the actual video resolution Well, this is my first question in this community. I have asked it in SO but it was considered out of scope there.
Anyway, I am trying to decode an avi video but when I pass it through ffmpeg to check the encoding parameters I got this outcome which confused me:
$ffmpeg -i video.avi
...
Stream #0:0(und): Video: mpeg4 (Simple Profile) (mp4v / 0x7634706D), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 2501 kb/s, 30 fps, 30 tbr, 15360 tbn, 30 tbc (default)

I guess yuv420p means something like 746x420 pixel (I made the multiplication myself, so I am not sure it's exactly this one using the ratio of 1920x1080 and 1280x720) but anyway much less than 1280x720 which is 720p. So, what does exactly means those two together?
yuv420p vs 1280x720?
Can someone explain which is the actual resolution of the video (and why I get those different resolutions)?

In yuv420p, 1280x720 [SAR 1:1 DAR 16:9],

yuv420p indicates the pixel format and chroma subsampling scheme.

the video's raster resolution is simply 1280x720.

the video's Sample Aspect Ratio (width of pixel : height of pixel ratio) is 1:1 (square pixels)

the video's Display Aspect Ratio is 16:9


Can a 1D LUT be used in ffmpeg using lutrgb? I am using ffmpeg and trying to change the color of certain pixels in a video stream using the lutrgb filter. The aim is to change any pixel with a green value greater than 145 to a white pixel.
So far I have tried the following commands:

-vf lutrgb=r='if((g > 145),255,val)':g='if(val > 145, 255, val)':b='if(g > 145, 255, val)'

-vf lutrgb=g='if(val>145,255,val)':r=255:b=255

-vf lutrgb=r='if(gt(val,145),255,val)':g='if(val>145,255,val)':b='if(gt(val,145),255,val)'

However, these are not delivering the desired result.
Is it possible to have ffmpeg use a 1D LUT where the input values for r, g and b can be set based on a condition, for example, if r=ANY, g>145 and b=ANY, then r=255, g=255 and b=255?
Any insight to whether this is possible is much appreciated.

The LUT filters don't have cross-referencing of channels. Use geq instead

geq=r='if(gt(g(X,Y),145),255,p(X,Y))':g='if(gt(g(X,Y),145),255,p(X,Y))':b='if(gt(g(X,Y),145),255,p(X,Y))'


Is there a way to split a mp4 into 2 mp4, one is metadata.mp4 and another is mediadata.mp4 When media data is stored in the end of the mp4 file(it always be there),it is very difficult to extend or delete metadata infos,because metadata will use absolutely offset of this mp4 file to locate media data,so is there a tool can help me to split metadata and mediadata into 2 file?Or,is there a tool can move 'mdat' box so I can let metadata stored behind the mediadata?
All I want to get is I can freely modify the metadata related boxes and don't worry about the offset.
Thanks.

If I understand you correctly, you want the MOOV atom to be stored at the end of the MP4 (after the media payload). If so, this is the typical scheme used by ffmpeg unless flagged otherwise. So, copy your current MP4 into a new container via ffmpeg:

ffmpeg -i input.mp4 -c copy output.mp4


Video from still images - Zooming I am completing a school project on distributed computing. I have been granted access to a Blue Gene super computer to run an algorithm to create static Mandelbrot set images. I have the algorithm created and running. The image sizes are 800x600.

My project is to combine these images to create a video with a zooming effect. I am new to creating videos from still images and I am looking for some clarification on a few things.

At what frame/rate should I be aiming for? I want it to be as smooth as possible.
I want the zooming to be quite seamless, how quickly should I be zooming in with the images? My algorithm can be quite precise.

If someone could let me know or post some resources on the matter. I feel this should be similar to creating cartoon like zooming.

Mathew A

An example image created with the algorithm

Interesting question. First, here's a question for you: can your supercomputer actually calculate and render, in real time, an animated zoom on images so complex?

My guess (only a guess) is that it will need more than 1/30 sec. to complete each frame (let's assume 30 frames per second as a minimal frame rate in which to achieve a smooth zoom). If that's the case then you just need to spit out x number of images (bitmaps) that can be played back later, at 30 f.p.s., by any non-super computer.

A zoom is just a scale change. Assuming that you don't have in mind a particular rate of change in scale -- in other words, that you don't need to get to a particular scale in a particular time -- try 1% of scale-increase per frame (I'll check this and post an update if you can do much better).

Satisfactory zooming will also involve easing at the head and tail of the zoom. If you need an easing algorithm, just ask. It probably won't be in the language you're using but you'll be able to figure it out.

UPDATE -- I just read something about Blue Gene. Maybe it can do 800x600 Mandlebrodt images @ 30 f.p.s.!  But the same rate-of-change applies -- smoothness is a human perception thing.


How to deal with this heavily underexposed footage I recently was at friends birthday with a few musical performances and this friend asked me to film the event. Unfortunately, it was really badly lit (I did notice it, but I couldn't do anything about it). So I had a bad feeling, but I shot as much footage as I could anyway. So, this is how it turned out:

With a luma curve adjustment, raised saturation and an orange-ish color-grading, it looks like this:

If I lighten it up even more, it becomes even more grainy. Also, the missing color informations become more obvious:

So, my question; should I rather sacrifice some visibility so that it looks not totally grainy (2nd picture) or lighten it up even more at the cost of strange-looking colors and very grainy scenes (3rd picture)? And, using either variant as a starting point, how could I further increase the quality of the result? Especially bring more color into it while maintaining a natural look and reduce the noise. I'm working with Premiere Pro CC. I've tried the remove grain effect in After Effects, but that didn't yield great results (I'm not sure if I got the settings right though, I'll try it again later). I also found the Neat Video Plugin for PP and AE, but I'm not making any money from this, so I'm not so keen on spending money on it ...

Edit: As requested, here are some uncompressed stills (directly exported frames from Premiere). I've decided to go with the 'middle ground' option (uncompressed_graded.bmp).

If this is no raw material, there is no additional pixel information to balance your colors and achieve a natural look. Only chance you have is to denoise your video and desaturate the colors. Try to find a good relationship between brightness and noise to get an acceptable result.

Unfortunately there is no good, free, build-in or open source solution at the moment. Denoising a video requires very complex algorithms, not only because every camera produces different noise types. Currently best approach are wavelet algorithms, but there are only 2 tools which use it:

Neat Video
Nuke's Denoiser

Note: In my experience Neat Video does a very good job and in some cases you are able to denoise the video twice without getting an over blurred image.


What kind of footage is this and where can I get it? Can someone help me identify what kind of stock footage is this, I wish to swap out the text and the image on the stage for someone else. Is it green screen footage or an opener?

Where can I get similar footage? I have had a google and to be honest I dont know what to google green screen stage footage?

Any help would be greatly appreciated :)

It's a (to be honest, quite old looking) 3D-Animation. I believe that looking into something like 3dsmax, Maya, Modo or Cinema4D might be the best bet for you. Otherwise you can search for "talent show display opener" as a Cinema4D template.


How to get higher resolution and smooth exposure control when shooting movies with a Nikon D5000? I have a Nikon D5000 and would like to use it to take video clips.

By default, when shooting video clips in the "Live View" mode, you can only use 1 MP of the camera's 12 MP, thus you get video clips in a crappy resolution. In addition, you can't use apertures smaller than f/8. Also Live View doesn't respect shutter speeds. Instead, it uses ISO adjustment to move exposure, and it does so in third-stop increments that can look "jumpy" on the LCD (and in movies).

How can I avoid all of these things? Is there a way to take video clips on the D5000 without being in Live View mode?

My information comes from this website: http://www.bythom.com/nikond90review.htm

Thanks in advance!

At least for the resolution, the problem is one of data rate.  While it is easy enough for a camera to rapidly capture a few 12 megapixel images per second, video uses 24 or more frames per second.  The sensor and image processing hardware is simply not fast enough to deal with capturing 24 or more full resolution images per second.

Further, even if it was able to capture the higher resolution, there is nothing that can display that high of resolution.  4k screens are only about 8 megapixels in resolution and they are still fairly new (didn't exist at all at the time the D5000 was made).  1080p video would be nice, but that's still only using 2 megapixels of the sensor.

Also, it is not possible to shoot video when not in LiveView.  When you are looking through the viewfinder, there is a mirror blocking the path of light reaching the sensor and instead directing it to the optical viewfinder.  Since the light isn't reaching the sensor, it isn't possible to record or capture anything.  This is why the viewfinder goes blank for an instant when you take a photo, because the mirror has to swing up out of the way.

With LiveView, the sensor is left exposed and the image from the sensor is instead displayed on the screen so that you can see what you are doing.

As for the aperture, shutter and ISO issues, those are limitations of the camera software.  It may be possible to overcome them with a third party hack for the camera, but I don't know if one is available for your particular camera model.


Create video with filmstrip effect with Adobe Premiere I'm a wedding photographer and I'm trying to create a slideshow for my customer. She want a moving filmstrip effect where her image will fill in a 35mm film, and it keeps scrolling. It looks similar to this.

https://i.ytimg.com/vi/IeRD6mP5YxA/maxresdefault.jpg

I don't have any clues about how to create this. I have Adobe Premiere but kind of newbie to it. Any clues will be appreciated.

P/s: sorry, my English is bad.

Essentially what you are trying to do is create a mask with the film strip.

If you are seeing (lets say) 3 frames, then you would duplicate your original image 3 times, and offset each one by one frame. Feel free to cheat more than a frame to get the right look.

Then scale and rotate the images to fit under the film strip.

That is how I would do it.

Other things you might consider doing.

Reducing the frame rate to around 12 frames a second, to make it look more like the old silent movies.
Add dust and scratches effect
Add light leaks effects as well
And add a jitter effect (many ways to do that)

Good Luck


How get a better quality of streaming? i want to know how to improvee the performance of video streaming (in the client side), like raise the cache of the browser or use a vpn (to hide the video traffic so the isp don't do traffic shapping).

Well, feel free to edit this question to add more examples.

Thx :)

I think browsers usually don't have configurable buffer sizes for streaming.  If you can get the video URL out of the browser, you could stream with mpv or something.

mpv --cache-secs=15 http://example.org/video.mp4

mpv has several other cache-tuning options.

As far as using a VPN: your ISP still sees the traffic.  It just doesn't see that it's an HTTP request, and even deep packet inspection won't be able to tell that it's streaming video.  I think most ISPs, if they do any QoS-based traffic shaping, would prioritize streaming audio/video to prevent annoyances when realtime matters, unlike torrent downloads.  So putting your traffic inside a VPN would if anything make it worse, in most cases, I'd expect.


Credit Rolls.. How do I get the credit rolls to look good? FCPX and Motion5 I use Motion 5 to create credit roll export.
It just looks awesome. THEN, I import it into FCPX and after export, it looks jumpy.

Does anyone have the golden tip? I've heard about Motion Blur.. tried it.. didn't do the job. I'm beginning to think that I have to export the file without credits and import into Motion 5 to attach the credits and export again..
(Haven't tried that, but a .mov from motion works)

Appreciate the input.

it looks jumpy

Most probably you have mismatch of framerates between Motion 5 project and FCPX. Check if they match. Also check all other video settings, to match your FCPX composition.


How should I interpret the results from Netflix VMAF I've been encoding some clips and then analyzing them with the VMAF tool from Netflix, but I don't know how to understand the results.

This is the overall mean section of one of my tests.

VMAF_feature_adm2_score:0.982934
VMAF_feature_motion2_score:2.262897
VMAF_feature_vif_scale0_score:0.727423
VMAF_feature_vif_scale1_score:0.946992
VMAF_feature_vif_scale2_score:0.975502
VMAF_feature_vif_scale3_score:0.986295
VMAF_score:94.240835

The numbers don’t mean anything. They only have value when compared to other values. You can compare the results between two encodes of the same file and determine which encode produced better results.


NDI vs RTSP/RTMP in PTZOptics cameras I am working on building a live streaming system for my church and have settled on using PTZOptics cameras for the project. Our AV dealer wanted to set them up with SDI connections and then go through a capture device.  For cost reasons I am looking at using the IP video capabilities of these cameras instead. We are currently using OBS to combine the sound from our mixer with the feed from a webcam before sending it to Facebook.  As I've looked over the options from PTZOptics I have a question about the advantages/disadvantages of using NDI over RTSP/RTMP?  The closest I've come to an actual comparison is a PDF of talking point slides that simply said "NDI evil" - not very helpful.

We used RTSP and it works fine.  There are a few benefits of NDI (like doing PTZ controls over that protocol) but not worth the price jump for the cameras, in my opinion ($600 to upgrade each camera to NDI).
We do notice a ~200 ms delay in the video reaching the mixing PC behind the audio so we just use Vmix to delay the sound and match them up.


What should I look for in a video capture device from a Satelite Reciever to PC? i wish Audio-Video Production is correct Q&A site for that question.
I have a Satelite Reciever and i want to watch the broadcast on my Laptop, i will not use my TV anymore.
I have two options to capture the video stream,

Easycap Capture Adapter
Analog USB TV Tuner

but i want to learn that which one is better solution related to performance, easiness, quality ? Or, is there any better solution that you can advice?
Thanks.

The Easycap Capture adapter is simply a video capture device with no TV tuner, so you would not be able to receive any TV signal.

I would recommend the USB TV tuner.  I'm not sure whether you will need an Analog or Digital tuner as this will vary according to where you live (here in the U.S. all stations are now Digital).  If you are putting this into a desktop computer you can get an internal TV Tuner card.  Hauppage makes a few good ones that will work with Windows, both internal and USB.  Their products also come with software to allow you to watch and record TV.  They should also work with other programs.

Edit:

As for performance the TV Tuner and the Video capture card should be about the same.  The TV tuner is in hardware and the video capture for both is also in hardware.  If you are concerned about performance, your best bet is to get a device that has a hardware MPEG-2 encoder (usually an internal card).  With my Hauppage card with built in encoding, I was able to watch TV and record without any serious performance hit to anything else I was doing at the time.


Is there a way to parent an objects position to another objects position in Nuke, so they move parallel to each other? I want to move an object parallel to another object in Nuke. I managed to get the object to move to the same position as the other one. (Copy link paste absolute.) But I wasn't able to figure out how to move it relative to the other object. Copy link and paste relative did not work.

You can simply edit the expression values:

create a new Transform Node by hitting T
drag and drop the translation values by holding CTRL from original transform node to the new one (this should create a green line between that nodes)
right click the translation curve icon of the new transform node to open up the Edit Expressions Window
in this window you can do some math with the existing y or x values to move the the child node


I used ffmpeg to concatenate to videos and it got stuck and produced a huge file. Where is the mistake? I have this short videoclips that i recorded either with my webcam or with my phone. The ones that come from my webcam are in Matroska container, and the ones from the phone in mp4. Each piece is between 50 and 150 MB in data size, some 3 or 5 minutes long. I read that the proper way to concatenate in ffmpeg was something of this sort:
ffmpeg -i input1.mp4 -i input2.webm -i input3.mov \
-filter_complex "[0:v:0][0:a:0][1:v:0][1:a:0][2:v:0][2:a:0]concat=n=3:v=1:a=1[outv][outa]"
 \-map "[outv]" -map "[outa]" output.mkv

So I took the first two clips, the first one mkv and the second one mp4 and I did:
ffmpeg -i intro.mkv -i part2.mp4 \
-filter_complex "[0:v:0][0:a:0][1:v:0][1:a:0]concat=n=2:v=1:a=1[outv][outa]" \
-map "[outv]" -map "[outa]" output.mp4

and it began to take time... and more time... and more time. After one hour I got worried and I checked the output.mp4 file and it was half a GB in size. Then after another hour it was 1.5 GB.
And the process continued to run, in the terminal indicating huge numbers of framedrops.
I terminated the process and tried to diagnose the output file but couldn't.
What went wrong? What is the proper way to do this?

The concat filter uses the frame rate of the first input as the framerate for the output stream. Some MKV/WebM files don't write valid framerates. That can lead ffmpeg to assign a framerate of 1000 (the inverse of default timebase in Matroska), which can lead to huge frame duplication.
Set a sane output framerate for such scenarios.
ffmpeg -i intro.mkv -i part2.mp4 \ -filter_complex "[0:v:0][0:a:0][1:v:0][1:a:0]concat=n=2:v=1:a=1[outv][outa]" \ -map "[outv]" -map "[outa]" -r 30 output.mp4


How to make a whiteboard/flanelboard style promotional video for a mobile app? I want to make an animated video which shows what my mobile app can be used for. What are the most economically-conservative resources I can use?

I don't know exactly what kind of animations you're looking for, but Adobe After Effects is very popular for animation. You can even get a free 30-day trial of the software. That being said, if you're not familiar with After Effects, there is quite a bit of a learning curve, but the good news is that there are a ton of online resources (videos/tutorials/etc.) to show you what you need to do to get great results.


How to extract frames and saving frame type to filenames with ffmpeg? I have a research project where I need to apply very, very computationally heavy image filters on a h264 video. Due some restrictions outside my control I have to use proprietary filter that works only on images and not video. Filter has two modes, A mode is very computationally heavy but produces production ready quality and B mode is fast but produces less than stellar quality.

My theory is that given how h264 uses I-frames to get the reference and rest of the frames are "non-essential", if I can find apply the high quality A mode on I-frames and B mode on other frames, I should be able to leverage h264's own compression to get the result without having to use filter on A mode to every frame. Another avenue would be to try with h265 because it's more robust frame prediction capabilities.

What I've figured out so far is that I need to find a way to extract all frames from a video while knowing which ones are I-frames, then do a filter on all the frames, and then re-encode the video back together with minimum quality loss.

So first question is that how can I extract frames with ffmpeg so that it somehow identifies each frame type on the filename?

ffmpeg -i C:\test.mp4 -vf select='eq(pict_type\,I)',setpts='N/(25*TB)' C:\testTemp\%09d.jpg

Above gives you i-frames but I haven't figured out how I can get this to export all the frames and to put the type on the filename?

Second question is that how can I re-encode the video so that it keeps the I-frame positions?

ffmpeg -framerate 24 -i frame-%03d.png output.mp4

Above would make the video out of frames but the I-frame positioning eludes me.

I know this is a complex problem so all help is truly appreciated!

Can't comment on the soundness of your theory, but here's a way to do it. Not directly, but in a roundabout way.

FFmpeg's segment muxer can break up a file at GOP boundaries, so running the command below generates a set of videos which each start with a keyframe but contain no other keyframes.

ffmpeg -i test.mp4 -c copy -f segment -segment_time 0.001 -segment_list list.ffcat -reset_timestamps 1 segs%d.mp4

This will create

segs0.mp4
segs1.mp4
...
segs101.mp4
..etc

Extract each segment to images

ffmpeg -i segN.mp4 outN-%d.png

Apply A on first frame of each image series and B on the rest.

Then for each processed series, run

ffmpeg -framerate X -i procN-%d.png -c:v libx264 -keyint_min 1000 -x264opts stitchable "result\segsN.mp4"

-keyint_min value should be greater than no. of frames in each series.

Hopefully the names of the resulting MP4s are the same as the original split segments, which makes the next step more convenient.

Copy the list.ffcat created in the initial segmenting command to the results folder and run

ffmpeg -f concat -safe 0 -i list.ffcat -c copy processed.mp4


Embedding another video to "blend" with the environment Suppose I have a mirror, or a picture on the wall, and I want to run a second video into this.

How could that be achieved? And even in such a way as to correct for perspective?

For example, like in this video.

If you can use a tool like Apple's Motion or FCPX, or Adobe's After Effects, they all have the ability to put the 4 corners of a layer anywhere you want. With Motion or After Effects, you can even track the 4 corners and keep the "TV" image pinned in the right place.

In Motion, you can select a clip and open the Inspector. In the Inspector, press the "Properties" tab. There's a section in the properties called "Four Corner". If you twirl that open, it allows you to set where the 4 corners of the video go. You can put them wherever you like.

FCPX is similar - select the clip, and open the inspector. There should be a section in the inspector named "Distort". This will also let you set the 4 corners of the clip.

In After Effects you can select a layer and apply the built-in "Corner Pin" effect.


Positioning subtitles in Premiere Pro CC In the process of producing a video, we are creating subtitles.
We have decided to align the text object's vertical center at 10% of the height of the frame as seen on this mockup:

In Photoshop and After Effects, it is easy to add Guides to your workspace area with the shortcut ⌘ + R.

For example, for a video 3840 x 2160 in size, one would drag a Guide to 1944px down on the frame (height in pixels minus 10%), and align text objects to the middle with Snap to Guide feature:

However, we are stuck with a Premiere Pro CC workflow for the moment, which doesn't have the Guides feature. Moreover, it seems that Premiere Pro has two different ways of handling origin points of layers whether it's a Video layer or a Text layer (which both has a "Motion" and a "Transform" panel with positions):

How do I position text objects in Premiere Pro so that the vertical center of the text element is at 10% of the height of the video as showed on image 1?

(At the moment, we are using a "Guide" layer where a line was drawn in photoshop at the right position, but we cannot keep this imprecise process going.)

Do the math

If you want to align your text using percentage offsets or any other 'round' number in pixels, you just need to perform some simple calculations. For example, 10% from the bottom of a 3840 x 2160 canvas:

2160 - (2160/10) = 1944

Since you want your text to be vertically centered on the line at 10%, you will have to modify this by half your font-size, for example for a font-size of 24px:

2160 - (2160/10) - (24/2) = 1932

So if you haven't changed the default anchor point (0, 0) which is in the upper left corner of the canvas, set the text position to (1920, 1932). This only works with center-aligned text, since in this case Premiere uses the horizontal center of the text instead of the lower left boundary as the point of origin.

If you are using Legacy Titles or an older version of Premiere Pro CC which doesn't have the new Essential Graphics panel, each of your titles will be a singular clip in the timeline; in this case, use the Position Parameter of the Motion effect to position the text. If you're using the current version of Premiere Pro and have access to the Essential Graphics toolkit, you can use text as a part of any graphic layer, in which case you can use the Position Parameter of the Transform setting of the Text (see Screenshot for clarification).

By now you're probably thinking that you shouldn't have to do that much math to position your captions, and you would be right. Which leads to my main point ...

Don't do the math

It's tempting to use percentages of the screen or 'round' numbers to position things such as titles, but it's really not a good habit. No reader is gonna care that you aligned the titles pixel-perfectly, all they care about is that it's easily readable. The right alignment, size and safe margins for your text depend on your target audience (old people with bad eyesight need larger text), what kind of devices your video will be watched on (CRT-TVs for some reason? you better stay within the title-safe area) and factors like this, so those factors should be considered when positioning your text, not some arbitrary geometric value that doesn't have any significance.

Workflow

  However, we are stuck with a Premiere Pro CC workflow for the moment, which doesn't have the Guides feature.

Now this is just a question of streamlining your workflow. In Photoshop you might use manually positioned guides and have Snap to Guides toggled on so you can just drag and drop the text to the bottom and have it snap in place. With Premiere, you have several other options to make sure all your text is positioned alike (which is important indeed!), for example:

Copy the text layers and change the text, this way you retain all settings including position.
Copy just the effects and paste them over your text clips (this will work well with the old Legacy Title system).
Use Master Styles (Tutorials here and here; I haven't actually used the new Essential Graphics workflow much so far, so you'll have to play around with it a bit, but I'm sure you will find plenty of options to set different styles and defaults).

The optimal workflow for your title creation depends on the rest of your editing workflow, your version of Premiere Pro and your personal preference. Make sure to invest the time to find the optimal route based on those factors, even if the amount of time you save per added title is small - it will pay off over time.


Join / Concatenate .wmv files I have 2 .wmv files which are equal in codec information (windows media video 9 in 640x360 with 25 fps; windows media audio 2 in stereo with 44,1kHz and 16 bits per sample). I'd like to concatenate / join them, so that I get one file which plays the content of file 1 and then the contents of file 2.

I can only use free, preferably open, software, preferably available for Linux.

Asfbin appears like it might be able to do what you are looking for.


How to change the display ratio of a Theora track inside Ogg? I have an Ogg Theora file, but unfortunately the display ratio is incorrect on it. I know that it's possible to edit the metadata without reencoding.

What tool can do the job? Preferably something that can be run on *nix.

ogginfo from vorbistools gives the metatada that i would like to edit, but that package doesn't provide anything to change the values, liboggz doesn't seem to do the trick either.

I have attempted to play around with the hexeditor, here's what i've found. Here is my theora packet:

 00000000:  4f 67 67 53 00 02 00 00  00 00 00 00 00 00 00 00  OggS............
 00000010:  00 00 00 00 00 00 70 e4  97 9a 01 2a 80 74 68 65  ......p....*.the
 00000020:  6f 72 61 03 02 01 00 2d  00 24 00 02 d0 00 02 40  ora....-.$.....@
 00000030:  00 00 00 00 00 19 00 00  00 01 00 00 c9 00 00 6a  ...............j
 00000040:  00 03 0d 40 00 80 4f 67  67 53 00 02 00 00 00 00  ...@..OggS......

The 00 00 c9 00 00 6a block is where pixel aspect ratio is being stored, as i understand it the first 3 words are the numerator, and the second 3 denominator.

If i change the values only in the first packet, then avprobe does return the changed values, but then all video players i've tried panic. Any hints on how to change the other packets so that they conform?

The player panic you are experiencing might be due to the checksum in the ogg header. If you recalculate the checksum for the whole header with your new value you might get a valid file again.
http://en.wikipedia.org/wiki/Ogg#Page_structure

Though I dont know all too much about the ogg and vorbis specs. For this kind of low level work its always a good idea to read the specs.
http://xiph.org/vorbis/doc/Vorbis_I_spec.html


Who owns the rights to video footage? I recently filmed some hunting footage of a hunter on a preserve hunt. I did not own the camera it was owned by the hunter. I did not get paid nor was there a contract drawn up between myself the hunter or myself and the preserve owner. This footage is now to air on a hunting show without any consent from myself. Do I have any right to this footage?

Ask a lawyer. It will depend on the jurisdiction. But my distinctly non-lawyerly opinion? You have no rights in the footage.


Can I use Apple Compressor software to convert mkv files to mp4 I use Final Cut Pro X. I am planning to buy Compressor software too which gives me options in exporting my video. Can this same software be used for converting mkv files to mp4 because Final Cut Pro X doesn't support mkv files.

No Compressor does not take .mkv files. At least not my 4.5.1 version.


What's the best working format for video making? Good day.
I'm trying learning Premiere, but at the moment i'm using Corel Video Studio to make video footage.

I noticed cpu-spiking and freezing editing my video (with both programs): in particular i'm using source video x264 econded with Handbrake.

My cpu is a Ryzen 5 1600 six cores with 8gb ram.

I'm working on a mechanical HDD.

So my question is: what's the best and low impact video format for working/editing ?

The best format is using a temporal file of lower resolution.

Make a copy of your source material at half size, which will become 1/4 of the weight, then use some format that is compatible with your program and use it for the editing process, when it is ready, relink the videos to the original ones for the final render and done. Make some tests and see if the keyframes are working fine for small clips.

If you only want to change the source material to another format you are degrading your video.


Fix timecode in merged vobs I use mpeg streamclip to fix the timecodes in merged vobs. I would like a command line utility that does this without having to recode if possible.

Libav has the tool avconv, which allows you to do that with the video filter setpts=PTS-STARTPTS.

I haven't tried this, but the following should do the trick for you:

avconv -i in.vob -vf 'setpts=PTS-STARTPTS' -c:a copy -c:v copy out.vob

For more information you can check out http://manpages.ubuntu.com/manpages/precise/man1/avconv.1.html


Is there a buffer caching application that preloads streaming video? I'm trying to find out if there's already a application in existence or a way to preload (cache/ buffer) couple minutes ahead of live streaming media
e.g. live stream onine TV, rtmp protocol etc..
in order to play it smooth on vlc media player and even at low bandwidths.
I don't mind getting the live feed 30 minutes later.

another hint:
VLC media player only allows 9999 ms buffer time for streams and am looking for some way to expand this ..by 10 min or so :)

Launch VLC. Go to Open Network Stream. After specifying the URL, select Convert in place of Play.  Choose Dump raw input. In destination file, specify somefilename.ts. Wait 10 minutes. Launch another VLC instance. Play somefilename.ts


After effects imports different pictures to same output I've imported 3 different pics that all are different when I look at them in Windows Explorer.

However, when I put them in an After Effects composition, they all appear as the same picture.

I've tried importing them 1 by 1 and multiple file import. All three of these images came from an Illustrator file that I exported at the same time.

What did I do wrong?

I believe the issue arises because of the naming of your files. When images have a number attached at the end of their names, after-effects assumes that you're importing an image sequence. Thus, it imports each "image" as a sequence, consisting of all 3 images. When you import your files, try unchecking the box that says "import as image-sequence".


Unknown coaxial cable female end. smaller than RCA or BNC. White rim We have a 10+ year old ASL MR safe long range optics eye tracking system that sends a video of the eye to a control unit. The eye camera output port is standard BNC, but the female (?) input on the control side is not. A cord extends from the unit with an end that is much smaller, resembling a 5V power supply connection more than BNC or RCA. The tip of the connector has a white rim.

The cord is annotated 75 ohm coax 1030 AWM 1378 200

The documented ("camera in", pg14) port on the control unit (at the other end of our mystery cord) looks proprietary.

Any idea what this connection is or what to use to adapt to BNC?

That's a barrel connector, as you say most often used for DC power connections. I doubt that it has an ideal impedance profile for 75 ohm video connections, but that probably doesn't matter in your case.

Get the inner and outer dimensions using a micrometer, match it to one of the standard sizes like type N etc, and you can easily build your own adaptor. I don't think you're going to find anything off the shelf since the use is proprietary / non-standard.


How do I make a video play on an image? I am trying to make an intro for a video where the video only plays within an image. In this video, during the first 5 seconds, an image appears as white over the video and then switches to the video playing within the image over black. How do I reproduce that effect?

If you have the logo or title in Black and white then you will simply mix between them as they mix differently on the video background. But the trick is making sure that your editor can do "layer math".
Perhaps you've noticed in Photoshop or other paint programs that you can do more than simply Mix 2 images together (like a dissolve)?

You want to look for a Blend type for the logo/title clip, some apps call this Composite type.

For the image to appear white over video, you would use the white
logo on a black background then mix by an "Add" function. Where the
image is black there is nothing to add. Where it is white then it
all gets added on top of the video.
For the image to appear black with video in the logo shape, you would use the white logo on a black background then mix by a "Multiply" function. Where the image is black the video gets multiplied down to 100 (or black). Where it is white then it all gets multiplied by zero (transparent).

Then apply a dissolve to then end of one logo blend clip into another logo blend clip.


How did the effect in this video? Is this all in editing or did they use some sort of infrared camera?

It was apparently made with a thermal imaging camera.


Best way to edit multi screen footage into one clip. I'm planning on making some "let's play" videos. These videos are usually edited together from screen recordings of multiple different players but have one shared audio track.

Here's an example:

What's the best way to go about doing this? What software would be good for this? Ideally I'd like to import all of the screen recordings into the software and then have a way of easily switching between "cameras".

Links to tutorials doing this or something similar would also be a huge help.

Adobe Premiere Pro actually has a multicamera mode you can use where it will display all the videos playing together and you can switch between them.  You just line up the time and then can swap.  If they aren't time synced, then you can simply cut clips out and place them at will.  That's why it is called non-linear editing (NLE), because you can take clips and put them together without having to work linearly (deck to deck) like you used to.

While links are generally discouraged, I think this link to Adobe's help pages is probably the most ideal explanation of how to do multicamera editing.


How do I export vertical video in Adobe Premiere CC? I've got a simple Premiere project containing a mix of different "vertical videos" (aka videos shot upright with an iPhone). When I'm editing it, it looks fine, but when I go to Export Media, the only option I'm given is 720x480, which ends up adding black bars to the video. I just want to export the video in the original size without the black bars. How can I do this?

In Premiere Pro, if you change your sequence size to match your source, you can export the vertical video that way. In the project panel, right click your sequence and change the frame size to the frame size of your video.

You can then export with the preset of Match Source (the bitrate depends on your project needs).

Additionally, you can also export the video with the preset of your choosing. Uncheck the "Width and Height" and type in the appropriate resolution (example is below).


Extracting segment from .mpg file using ffmpeg; why does result have video but no audio? I'm trying to extract a segment from an .mpg file using ffmpeg, using this command.

ffmpeg -ss 0:00:06 -t 0:01:39 -i capture(0).mpg -vcodec copy -acodec copy test.mpg

The input file has both video and audio, but the resulting file has only video--no audio. I verified this in VLC Player and ffplay.exe.  What am I missing?

This is the output of the above ffmpeg command:

Guessed Channel Layout for Input Stream #0.1 : stereo
Input #0, mpeg, from 'capture(0).mpg':
  Duration: 01:06:14.08, start: 0.224400, bitrate: 9680 kb/s
    Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, top first), 720x480 [SAR 8:9 DAR 4:3], 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
    Stream #0:1[0xa0]: Audio: pcm_dvd, 48000 Hz, stereo, s16, 1536 kb/s
File 'test.mpg' already exists. Overwrite ? [y/N] y
[mpeg @ 0000028434ef5c40] VBV buffer size not set, using default size of 130KB
If you want the mpeg file to be compliant to some specification
Like DVD, VCD or others, make sure you set the correct buffer size
Output #0, mpeg, to 'test.mpg':
  Metadata:
    encoder         : Lavf57.71.100
    Stream #0:0: Video: mpeg2video (Main), yuv420p(tv, top first), 720x480 [SAR 8:9 DAR 4:3], q=2-31, 29.97 fps, 29.97 tbr, 90k tbn, 29.97 tbc
    Stream #0:1: Audio: pcm_dvd, 48000 Hz, stereo, s16, 1536 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
frame= 2977 fps=915 q=-1.0 Lsize=  119500kB time=00:01:39.22 bitrate=9866.2kbits/s speed=30.5x
video:100235kB audio:18659kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.510136%

ffplay console output (on the resulting output file):

[mp2 @ 00000181ee26fee0] Header missingvq=    0KB sq=    0B f=0/0
    Last message repeated 8 times
...many similar results omitted here
[mp2 @ 00000181ee26fee0] Header missingvq=    0KB sq=    0B f=0/0
    Last message repeated 9 times
[mpeg @ 00000181ee25b400] decoding for stream 1 failed
[mpeg @ 00000181ee25b400] Could not find codec parameters for stream 1 (Audio: mp2, 0 channels, s16p): unspecified frame size
Consider increasing the value for the 'analyzeduration' and 'probesize' options
Input #0, mpeg, from 'test.mpg':
  Duration: 00:01:39.47, start: 0.500000, bitrate: 9841 kb/s
    Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, top first), 720x480 [SAR 8:9 DAR 4:3], 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
    Stream #0:1[0x1c0]: Audio: mp2, 0 channels, s16p
   3.98 M-V: -0.032 fd=   4 aq=    0KB vq=  988KB sq=    0B f=0/0

I am able to get both video and audio if I change the audio codec and container format, using the following options, e.g.:

 video codec: copy     audio codec: aac         output file .mkv
 video codec: copy     audio codec: aac         output file .mp4
 video codec: copy     audio codec: libopus     output file .mkv

However, I prefer to just copy the streams for performance reasons.

Until very recently (2018-02-17), ffmpeg wasn't able to correctly remux pcm_dvd streams in MPEG-PS. You'll have to upgrade to a recent version. Get a git snapshot binary from FFmpeg (under More Downloading Options)

You can also just re-encode using -acodec pcm_s16be


Pausing two keyframes at same position then moving to next one? After Effects I have a rectangle whose position at first keyframe-1 is (400,300) then at next keyframe-2 its (400,157) then i create another keyframe-3 with same position (400,157) after 1 sec and the final keyframe-4 at position (400,300) , the problem is position between keyframe-2 and keyframe-3 is changing despite being at same position, how can i solve that?

There are two types of interpolation for keyframes - temporal, and spatial. In plain English, temporal interpolation is how the speed of the motion is interpolated between keyframes - it's what you change when you ctrl or ⌘-click a keyframe, and spatial interpolation is how the motion path is interpolated between keys. Your problem is that AE is applying the wrong spatial interpolation.

Usually After Effects uses Bézier spatial interpolation between keyframes, meaning that they create smooth curves in space, which is usually what you want. However when you create a static pair of keyframes this causes problems - the layer overshoots the first keyframe and bounces back to the second.

To eliminate the problem bring up the keyframe interpolation dialog. You can either right-click the keyframe or use the keyboard shortcut alt⌘k (mac) or altctrlk (pc). Set the spatial interpolation to linear. This has the unfortunate side effect that any bezier handles you may have carefully created on the keyframe disappear. To make only one side of the keyframe have a handle you can select the keyframe in the timeline window, then alt-click it in the composition window (the cursor should turn into the V shaped arrow). In more recent versions of AE this will give you a bezier handle on the incoming and outgoing curves, not on the curve between the two identical keyframes. But because they're on top of each other you need to select them individually in the timeline first.

There's another way that I should mention, and this is by changing the temporal interpolation. If you right-click the first of the identical keyframes and choose toggle hold keyframe the motion will freeze until the next keyframe. If the keyframes weren't identical it would instantly jump to the second keyframe at that point.


Make a solid push another solid Here's the situation: I'm not new to After Effects. I've been using it for a while and I could say I'm an intermediate user. My knowledge is limited to everything but expressions.

So, I have a white solid and a red solid. As the white solid increases width (scale), I want it to push the red solid. I'm not a newbie into programming, however, I'm either an advanced user. My guess on how to do it is the following one: get white's solid left and width properties from anchor point and add them to the X position of the red solid (red.xPosition = whiteWidth + whiteAnchorLeft). Here's the actual code of my evil creation:

var white = thisComp.layer("white");
var whiteAnchorLeft = white.sourceRectAtTime(time-white.inPoint,true).left
var whiteWidth = white.sourceRectAtTime(time-white.inPoint,true).width
//[whiteAnchorLeft,whiteWidth]
transform.xPosition = whiteWidth + whiteAnchorLeft

This expression is inside of  red > transform > x dimension.

When I try to make this work, I get 1920 as X and it doesn't move. What am I doing wrong?
Thanks in advance!

Note: [whiteAnchorLeft,whiteWidth] is commented because After Effects is such an amazing software and it throws an error saying this "method is undefined" (???) althoug I've seen tutorials writing this down in the code.

The sourceRectAtTime(n) method does what it says on the tin: returns the dimensions of the source of a layer, at comp time n. So because the source of your layer is 1920px wide, it returns 1920.

You want to be using another method, the toComp layer space transform. It returns the comp co-ordinates of a point in layer co-ordinates. To find where the top right (in layer co-ordinates it will be [0,0]) of a layer is you'd do

thisComp.layer("theLayerName").toComp([0,0]);

To find where the anchor point of a layer is in comp co-ordinates:

let theLayer = thisComp.layer("theLayerName");
theLayer.toComp(theLayer.anchorPoint);

The really useful thing about toComp is that it works regardless of the parent chains that the layer may be connected to, and any transformations that have been applied.

To apply it to your case apply this to the red's position property:

let white = thisComp.layer("white");
let red = thisComp.layer("red");
let sRect = white.sourceRectAtTime(time, true);
let offset = white.toComp(sRect.width, sRect.top); //top right of the white layer
value + offset;

value in the last line is a property that returns the currently set value of the layer property, after keyframes. So this will add the offset to whatever the position currently is.

There is no need to use time-white.inPoint when calculating sourceRectAtTime because that method expects comp time as the first parameter, not layer time.


Inexpensive do-it-yourself Steadicam rig Anyone have experience with a cheap DIY Steadicam style rig for a video camera? It doesn't have to take perfect picture, but be steadier than a handheld camera. Thanks.

Maybe this is enough for you?

Basically just use a tripod as a balance and let gravity do the job for you.


Clip quality severely degrades when imported into Premiere Pro CS5? (appears interlaced) I have a clip which is 720p30 and plays back perfectly smoothly when opened outside of premiere. When I import the clip into premiere and play it back it looks awful: http://imgur.com/JHVbl

If I export the sequence it looks the same as in the preview (interlaced and awful).

Premiere indicates that the clip is 1280x720 (1.0) which is correct and the sequence preset I am using is AVCHD 720p30. I have tried fiddling with interlacing settings (though none should be necessary) to no avail.

I have a project full of different 720p clips from different sources and this is the only one that is exhibiting this behavior. The problem clip was generated by another program.

Any idea what I'm doing wrong?

The problematic file could have been encoded using a different codec, which Premiere is unable to convert effectively.

If the file looks ok in QuickTime player, I would export it to the same format as your Premiere sequence, and see if it looks any better when you reimport it into Premiere.


Add path operation to multiple shape layers I have multiple shape layers, and I want to add Wiggle Paths to all of them.
One way of course is to manually add to each of them.
Is there a way to add it to all of them at once? Specially is there a way to control them all in one place? so if I wanted to change the Wiggle parameters (like size, speed, correlation ...) I can change them all at once?

Use Expression Slider Controls to drive multiple Shape Layer Wiggle Path Values.

Here is an example of driving Size and Detail values of the Wiggle Path Property on 6 Shape Layers with 2 created Slider Controls on a seperate Null Layer:

Note: To save time, it's a good idea to create one shape layer first, set it up as described below and duplicate it afterwards to maintain the expression links.

Create a Shape Layer and a Null Object
Add Wiggle Path Property to the Shape Layer
Add a Slider Control to the Null for every value you need for animation (size, speed, correlation ...) and name it like these for a better organization
Select the Null and go to Effect > Expression Control > Slider Control
Open up the properties of the both layers by clicking on the small arrow  >  right beside the layer's name to see the values of the Wiggle Path and the newly created slider control at the same time
Holding down Alt while clicking on the stop watch of a Wiggle Path Value like the Size or Detail, this automatically will insert an expression
Use the expression pick whip and drag it onto the predefined Slider Control of the Null before to link/parent it, for e.g. the Size of Wiggle Paths, this should create something like: thisComp.layer("Name of the Null").effect("Size")("Name of Slider Control")
Repeat the process of parenting the Wiggle Path Values to the Sliders as long as all needed values are parented to slider controls correctly
If you duplicate the Shape Layer with CTRL+D now, all expressions will retained for the duplicated layers


best way to publish low latency video on ffmpeg I am trying to publish a stream of live video that need to get to the client side in under 3 sec in latency.

I am using vMix to capture a 720p/50 stream from a camera, that by virtual camera letting FFmpeg to encode the stream into h.264 720/25 stream using this code:

ffmpeg.exe -report -rtbufsize 256M -f dshow -i "video=vMix Video:audio=vMix Audio" -codec:v libx264 -s:v 1280x720 -pix_fmt:v yuv420p -threads 4 -bufsize:v 2000k -g:v 24 -preset:v veryfast -profile:v main -level:v 3.1 -b:v 2000k -minrate:v 2000k -maxrate:v 2000k -codec:a libfaac -b:a 64k -strict -2 -rtmp_flashver "FMLE/3.0 (compatible; vMix/15.0.0.74)" -f flv rtmp://Url/StreamName.

The stream goes through a Wowza transrating to three qualities, and than to a CDN, than to the client. Right now, with a buffer on the client player on 0.8 sec, i get just about under 3 sec but with a choppy frame rate.

I am using a HP Z440 QC E5-1620v3 workstation and I see that there is a lot of CPU power that I am not currently using. I have also a K620 Graphic card, but as i understand there is no use for it currently with FFmpeg.

Question

How can I utilize my CPU more than I do in order to get a faster encoding using FFmpeg? I know I can set a preset "Ultrafast", but I am concerned it will effect the quality too much.
My idea is to get the latency faster in order to be able to enlarge the client player's buffer so it will be able to handle the stream.

Any ideas on that matter? Thanks in advance :)

Probably "-threads" option may help. Try this:

ffmpeg -threads 6 -report ...

Add more thread as your CPU can handle.


How to force to automatically continue VIDEO-Recording after being stopped (after 12 mins or so) Most photo-cameras (canon or whatever) has the limit, as most of them stop the video-recording after 12 minutes. AFAIK, it is related to SD-CARD limits (as FAT format can hold max 4gb file). However, how to force it to auto-continue recording in the same moment, when overgoes 12 minutes?

So, we no longer need to MANUALLY push the record button again? very annoying...

Alternatives:

Depending on the camera model used, one could expand the recording time a 4GB file can take up by reducing the recording quality (compression, bit rate, resolution...) of your video.

With SOME cameras, you might be able to use an SDHC card forcibly formatted to a file system that does not have a 4G file size limit, eg exFAT or NTFS. If you can make it work, test THOROUGHLY.

Be aware that certain cameras also have a hard coded 30 minute video limit, which is there for reasons all unrelated to file size: In some markets, video cameras are taxed higher than still cameras, and the definition of a video camera in the relevant tax codes is continuous video recording capability beyond 30 minutes. In some cases, the camera might also not be THERMALLY designed to handle more than 30 minutes uninterrupted recording load.


Is there a way to basically start a counter from a given frame in ffmpeg? I want to perform a simple calculation to move an image along the video with given frames as the length of the animation:

overlay=x='( 1 * INDEX)':y='(1 * INDEX)':enable='between(t,438/25,450/25)'

Obviously INDEX doesn't exist, but for the start frame of 438, I want index to equal 0, for the frame 439 I want INDEX to equal 1, and so on and so forth.

The goal is to have the image move one pixel for every frame after 438 and hide it at frame 450

Just subtract the first frame index from the expression:

overlay=x='n-438':y='n-438':enable='between(t,438/25,450/25)'


How are idents like these made? Here is a YouTube link to a Channel 9 ident from Australia featuring characters from "The Big Bang Theory":

I was watching it and it made me think about a few things:

Do the Nine Network have to get permission from CBS/Warner Bros. for the use of "The Big Bang Theory" in their ident?
Described simply, how do video editors go about featuring the characters so smoothly in a pre-made ident? Obviously it can't have been done on a greenscreen since the characters are all the way over in the US, so how could this be done using standard footage from the show?

Yes, they need permission. However, the permission to use the characters in image and other promotional material is likely included in the international distribution or syndication agreement.
It almost definitely was done using a chroma key or other intentional compositing technique, as opposed to trying to mask the movements out of footage from the show. Networks, syndicators, and international distributors usually supply their affiliates with promotional materials. Often, these promotional materials include elements that can be built up into a complete promo that fits the affiliate's branding. The distributor will provide suggestions or instructions on just how a particular element should be used, but it is up to the affiliate to put in their own look.


ffmpeg - Make a white line look thicker I've been actively playing around with ffmpeg for the past few days, and now I want to make an audio visualiser, just with the showwaves filter (I made it white using p2p mode, and I don't want to use a mode that would just fill the wave with white).

The problem with the showwaves filter is that it creates a very thin 1px line which makes it pretty hard to see when it varies really fast. At a low video bitrate it becomes almost invisible.

So I tried several ways to make this thin white line look thicker, including geq to increase alpha values, gblur+increasing contrast. For now I got the most "satisfying" results by making the size of the showwaves 10x smaller and then using scale to make it the size I want. But the result is very pixelated so that's not really suitable. I've also thought of duplicating the wave a lot and displacing the copies around but I don't think it would be very performance-friendly.

So I was wondering whether there is anyway of adding some outline/glow/shadow/anything that would make this line look a bit thicker (like 5px would be enough), or anything else than showwaves that would somehow achieve what I'm looking for.

Thanks

Use one or more dilation filters after showwaves filter.


AE: Hide object after random time So, I've a bunch of objects inside a composition and my ideia is the following:

I want to create an expression in one of them that will change the opacity of that object to 0 after a random time. Then I'm planning to apply this to all objects creating the effect of the objects disappearing at random.

I was looking on the web, and trying to play with this:

maxOffset = 20
seedRandom(index,true);
offset = framesToTime(random(maxOffset));
valueAtTime(time-offset)

But I can't make it work the way I described. What should happen is:

Generate a random frame number between 0 and value of maxOffset;
When the random frame number matches current time change object
opacity to zero;

Thank you.

I'm not sure what the valueAtTime function is trying to achieve. That takes the value of the property at the given time. In the script you wrote it would sample the value of the opacity at a point a random number of seconds in the past, some time between the current time and maxOffset seconds ago. Unless the opacity changes during that time it won't do anything at all.

Expressions are Javascript, so you can use all the Javascript language elements, including if and else. Thus:

maxOffset = 20;
minOffset = 1;
seedRandom(index,timeless=true);
if (time>random(minOffset, maxOffset)){0}else{value}

This will turn off the layer at some time between 1 and 20 seconds for each layer. If the opacity channel is already animated it will use the animated value up until the time it turns off. To change this so that it is 100% on until it turns off, substitute {100} for {value} in the last line


Best rendering options for Sony Vegas 8 Pro? I have a 20 minute video that needs to finish rendering at a maximum of 7 hours. The video format needs to compatible with Windows without Quicktime.

What the the best options to render the video?

I would go with a .mp4 format, if it is in HD, the AVCHD mp4 would be better compressed and better quality, but regular mp4 would be faster and compatible with more things, although I do believe that it is compatible with windows even without quicktime. I am not sure though if you can render AVCHD in sony vegas pro 8, I work out of both 9 and 10, but the AVCHD support may have come starting at 9, but I'm not sure. regardless, you should still have support for regular mp4 which would probably be the best option.


How do I film a friend's wedding? My friend asked me to video tape his wedding. I have minimal experience behind a video camera but I'm comfortable with technology. I'm mostly looking for composition and logistical advice on filming a wedding.

I think my friend's expectations are low but if I'm going to do this I want it to be at least worthwhile. Thus I have read that besides keeping the couple in the viewfinder the next most important aspect to shooting a wedding is to have a mic on the groom for the ceremony. I don't have a wireless mic but I figured I would put an iPhone in his pocket with the headphone mic pinned under his lapel and sync the audio in post. Is there anything else I'm missing?

I have never filmed a wedding, but here are some tips on shooting video in general.
1. Get a good tripod. This is critical if you are doing panning shots. I use a 3-way fluid pan head.
2. Don't zoom or pan too fast. If you feel like you are panning too slow, that is about the right speed. Even though it feels really slow, it won't be when you are watching it later. When zooming, make sure your zoom are even and steady (no bursts of zooming). I usually set the camera's zoom speed so that it is not variable. Don't zoom in, then immediately zoom out to correct the zooming in, unless you have two camera angles.
3. Get two (three if you can) HD cameras if you can. HD makes post much more flexible as you can make minor in/out changes. Two cameras makes also makes post "easier". If you are only using one camera and you accidentally bump it, it's hard to correct. Two-three angles make filming much more reliable.
4. Use 16-bit audio on the camera(s) that you are recording from. The default setting is usually 12-bit, which can slowly drift out of sync towards the end of the video.
5. Film in 16:9.

I hope this helps you out.


What is the best tool for creating simple iOS demo videos I need to create some simple video tutorials for an iOS app. The tutorials will consist largely of screen footage showing the app being used with voice over and some titles. I know how to capture the video from the iPhone (Apple has made that easy). I'm looking for the best simple tool for editing the video, putting in some titles, and adding the voice over.

The original iMove would have been great for this. Unfortunately that product no longer exists; it was replaced with something designed to package vacation & birthday party video with theme overlays and all sorts of automatic stuff I don't want and can't use.

I will be working on a MacBook Air with 8GB of RAM. I could buy Final Cut Pro and would probably be comfortable with the model it presents, but I recognize it is way way overkill for what I need to do.

If you haven't used iMovie in a few years, I recommend you give it a try. It does exactly what you're looking for. If you create a new movie rather than a trailer, it will just create a timeline that you can drop footage into. On the left, under your events and library is a section called "Titles" that has dozens of titles ranging from tasteful to playful. You use the "V" key to record a voiceover.

FCPX is also a great easy tool to learn. In fact, iMovie is now made so that you can transition easily from using iMovie into using Final Cut Pro X. I think they might even share some of their internal bits. In any event, if you use one, you can probably do some stuff easily in the other.


How to apply track mattes to multiple layers? I want to create a track matte/mask that is applied to multiple layers.
The layers should not be precomposed!

How could I achieve this, that I can just change the matte shape and this is reflected to any of the layers. Because currently only the layer right below the matte is masked accordingly, other layers not.

You can use the silhouette alpha or stencil alpha modes on a matte layer, which will matte any layers below it.

Or if that doesn't work for the composition you can use expressions. Here's how:  make your first matte layer, with its mask, and then duplicate it and put it over another of the layers you want to matte. Now with both matte layers selected press m to show the mask path property for both. Select only the new layer, and while holding alt/option click on the stopwatch next to the mask path property to add an expression to it. You'll see a pick-whip (the spiral thing) next to the expression. Click and drag the pick-whip to the mask path property of the original layer. It should say something like thisComp.layer("the name of the original matte layer").mask("mask1").maskPath

To make those layers follow the original matte layer they shoul be parented to it as well.

Of course the simpler, faster to render way is to precompose the matte layer on its own and use copies of that comp as your matte layers. Why was it you don't want to precomp?


How to reverse these keyframes in Adobe After Effects? I'm actually new to learning the use of After effects but there's a mistake that I did about the keyframes, I should have placed the last keyframe to the first one which I would like to reverse these keyframes simultaneously so that it can possibly do it quickly, is that possible?

Sorry for the unclear words that I have spoken, here's a screenshot showing what I want to do:

Like to place all of those keyframes horizontally reversed to the left so that the first layer will the first one to move.
Thank you!

If I understand correctly, you don't want to change "keyframes," you want to reverse the order of the images, so that the ones on the top of the stack appear first, followed by the ones below.

Easiest option:

Delete the images & comp
Reimport by selecting only the 1st image, and make sure to check the box for "image sequence" this should grab all of them in the correct order & make a comp of the group.

Alternative to avoid reimporting:

Select all the layers, from top to bottom.
Hit "Home" to move the Current Time Indicator to 0:00:00
Hit "[" to reset the start of all layers to 0:00:00
With all layers still selected, Right-Click the timeline
Choose "Keyframe Assistant"
Choose "Sequence Layers". Leave "overlap"unchecked.
Hit Enter

The layers should now be sequenced from top to bottom, the next one starting exactly where the previous one ends.


How to trim out black frames with ffmpeg on windows? I have a short video and I'm trying to cut-out all the blank or near blank frames.
This isn't a case where I care about the breaks in a video that could be dark.  I literally want all near black-frames out.

What I didn't realize with ffmpeg at first was that the 'blackframe' or 'blackdetect' filters, is that they didn't actually filter.  They just seem to show you what you can possibly filter, with other command(s).

What is the best way in 'Windows' to actually filter out the resulting found frames?

So with ffmpeg I'm actually concat-(ting) the forward and reverse of the same file than I'm running some filters on those files.  See my current command:

ffmpeg.exe -y -i "2013-10-14_14-30-55.mov" -filter_complex "[0:v]transpose=3,split[tp][tp2];[tp]reverse[vr];[tp2][vr]concat=n=2:v=1:a=0[vbf];[vbf]blackframe=98:32[v]" -map "[v]" -vcodec wmv2 -q 10 -trellis 2 -r 16 "g:\gd5.wmv"

Then I get this output: (Just the tail end of it anyway...)

[Parsed_blackframe_4 @ 00000000003bf320] frame:650 pblack:99 pts:21821999 t:21.821999 type:B last_keyframe:639
[Parsed_blackframe_4 @ 00000000003bf320] frame:651 pblack:99 pts:21855366 t:21.855366 type:P last_keyframe:639
[Parsed_blackframe_4 @ 00000000003bf320] frame:652 pblack:99 pts:21888733 t:21.888733 type:B last_keyframe:639
[Parsed_blackframe_4 @ 00000000003bf320] frame:653 pblack:99 pts:21922099 t:21.922099 type:B last_keyframe:639
[Parsed_blackframe_4 @ 00000000003bf320] frame:654 pblack:99 pts:21955466 t:21.955466 type:I last_keyframe:654
[Parsed_blackframe_4 @ 00000000003bf320] frame:655 pblack:99 pts:21988833 t:21.988833 type:B last_keyframe:654
[Parsed_blackframe_4 @ 00000000003bf320] frame:656 pblack:99 pts:22022199 t:22.022199 type:B last_keyframe:654
[Parsed_blackframe_4 @ 00000000003bf320] frame:657 pblack:99 pts:22055566 t:22.055566 type:P last_keyframe:654
[Parsed_blackframe_4 @ 00000000003bf320] frame:658 pblack:99 pts:22088933 t:22.088933 type:B last_keyframe:654
[Parsed_blackframe_4 @ 00000000003bf320] frame:659 pblack:99 pts:22122299 t:22.122299 type:B last_keyframe:654
[Parsed_blackframe_4 @ 00000000003bf320] frame:660 pblack:99 pts:22155666 t:22.155666 type:P last_keyframe:654
[Parsed_blackframe_4 @ 00000000003bf320] frame:661 pblack:99 pts:22189033 t:22.189033 type:B last_keyframe:654
[Parsed_blackframe_4 @ 00000000003bf320] frame:662 pblack:99 pts:22222399 t:22.222399 type:B last_keyframe:654
[Parsed_blackframe_4 @ 00000000003bf320] frame:663 pblack:99 pts:22255766 t:22.255766 type:P last_keyframe:654
[Parsed_blackframe_4 @ 00000000003bf320] frame:664 pblack:99 pts:22289133 t:22.289133 type:B last_keyframe:654
[Parsed_blackframe_4 @ 00000000003bf320] frame:665 pblack:99 pts:22322499 t:22.322499 type:B last_keyframe:654
[Parsed_blackframe_4 @ 00000000003bf320] frame:666 pblack:99 pts:22355866 t:22.355866 type:P last_keyframe:654
[Parsed_blackframe_4 @ 00000000003bf320] frame:667 pblack:99 pts:22389233 t:22.389233 type:B last_keyframe:654
[Parsed_blackframe_4 @ 00000000003bf320] frame:668 pblack:99 pts:22422599 t:22.422599 type:B last_keyframe:654
[Parsed_blackframe_4 @ 00000000003bf320] frame:669 pblack:99 pts:22455966 t:22.455966 type:I last_keyframe:669
frame=  362 fps= 14 q=10.0 Lsize=    9004kB time=00:00:22.62   bitrate=3260.2kbits/s dup=1 drop=309
video:8922kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.918756%

So what do I do with this blackframe information in Windows?  Or is there a better method with the 'blackdetect' filter?

Here's a way to do it with the blackdetect and trim filters.

First, a better way to get the blackdetect output is via ffprobe because it is capable of writing structured data such as XML, JSON or one key=value per line.

You do this using metadata injection:

ffprobe -f lavfi -i "movie=/path/to/input.mp4,blackdetect[out0]" -show_entries tags=lavfi.black_start,lavfi.black_end -of default=nw=1 -v quiet
TAG:lavfi.black_start=0
TAG:lavfi.black_end=5.42208
TAG:lavfi.black_start=73.4067

As you can see it returns the start and end time of each black section. You use the returned info to trim the segments between each end and the next start:

ffmpeg -i /path/to/input.mp4 -filter_complex "[0:v]trim=start=5.42208:end=73.4067,setpts=PTS-STARTPTS[v1];[0:a]atrim=start=5.42208:end=73.4067,asetpts=PTS-STARTPTS[a1]" -map [v1] -map [a1] output.mp4

You can chain multiple trim filters in the same command. See this answer for a detailed example.

To automate this in Windows you can install and use PowerShell or another scripting language of your choice (PHP, Python etc).


How to double video frames without any duplicate frames My video details : DV-PAL 720x576i , 25FPS , duration=20s , frames=500

I need to increase (double) the video frames without any duplicate frame.

I used the following commands to increase (double) frame rate of the video.

ffmpeg -i in.avi -r 50 out.avi
ffmpeg -i in.avi -r 50 -filter:v setpts=2*PTS out.avi

But not works properly.

Please tell me How to double video frames without any duplicate frames?

Note : tool (ffmpeg or mencoder or etc.) and the duration and speed are not matter for me, Because I want to extract frames.
(Sorry for my English)

Use

ffmpeg -i in.avi -r 50 -filter:v "setpts=0.5*PTS" out.avi

or

ffmpeg -i in.avi -r 50 -filter:v "setpts=N/50/TB" out.avi

If you want to interpolate new frames, use

ffmpeg -i in.avi -r 50 -filter:v "yadif,framerate=50" out.avi

yadif is a deinterlacing filter, which is needed since the framerate filter does not operate on interlaced media.


Can FCPX work with vector graphics? I've tried to import .eps and .ai files unsuccessfully. Are there any vector formats supported by FCPX?

Here is a workaround I've discovered that seems to work ok. It's not elegant, but it gives you vector support within FCPX, which can be handy in a number of situations. It does require Apple Motion, however.

Convert your vector file into a PDF using Preview.
Create a Final Cut Generator in Apple Motion
Import PDF
Click the PDF in the "Media" pane (next to the Viewer), then in the inspector, un-click "Fixed Resolution" in the "Media" tab.
Drag the file into your composition.
Save As...

This will create a generator in FCPX, which is a little more permanent than making a simple file. But if you're doing work for a client and want a persistent vector version of their logo or something, this can be very helpful.


Make video from .png files in Hitfilm Express I'm trying to make a video in Hitfilm Express.

I've imported a folder full of .png files which were rendered in Blender.

I then dragged them into the editor > Video 1 section.

Instead of playing 29.97fps, Hitfilm is playing one single .png image per ~5 seconds.

What am I doing wrong?

You can import the folder as an image sequence. To do so, click on the small arrow next to import and choose import as image sequence. Then choose the folder that contains your frames and click ok. You might have to adjust the framerate to match your project in the media settings.


ffmpeg - two videos having same video length but different file size I'm new to this compression thing. I use following command with the latest ffmpeg version to compress and downscale my 1080p videos.

ffmpeg -i input.mkv -af "aresample=async=1:first_pts=0" -c:v libx264 -crf 18 -preset medium -b:v 3000k -maxrate 3000k -bufsize 10000k -acodec aac -c:s copy -map 0 -vf scale=1280:-2 output.mkv

what i don't understand, two videos having same duration, only one audio stream. after compression one has filesize 2GB while other 5GB. Why so much difference?

The -b:v doesn't have effect here since crf was set. Drop crf for similar sizes. CRF varies the bitrate to do justice to the complexity of the video. It aims for keeping quality constant.

Whether it's bitrate or CRF mode, the maxrate and bufsize do take effect.


Simulating a camera flash Can anyone give me some tips on simulating a camera flash in After Effects. I am trying to make it keyframing the scale and opacity of a white shape layer but I can't get it to look right.

As a photographer, a flash is simply a very short burst of white light (as you're no doubt aware). The maximum time at full power is usually around 1/250th of a second, which is equal to 1/10th of a frame. In that case, if you were to accurately represent a flash being fired, you would simply boost the exposure of a single frame by several stops (to make it almost completely white, whilst retaining a little bit of detail).

Something as simple as this would suffice.

For one frame.

If you really wanted to be technically accurate, you could simulate the CMOS flicker of a flash by only boosting the exposure on a horizontal portion of the frame, say the top 2/3rds or something.


How to change the resolution/size of iMovie so I can export square videos for Instagram? Looking to change the resolution dimensions to a square. Does anyone know how to do this?

You might crop each slide.  I haven't looked but if you have a lot of slide thee might be a way to set the crop as a 'default'


Letterbox when converting 4k to 1080p Got handed a pile of stock footage downloaded from various sites. And found one clip is 4k ( 4096x2160)

I put it into AME to reexport it as DNx115 but when I set it to 1920x1080 23.976 I see letterboxing top and bottom. It says the source clip pixel ratio is 1 and mine is 1.. tried the others for kicks but none get rid of it.

Why am I getting letterbox for this conversion?

Because 4096 / 1920 = 2.13333 and 2160/1080 = 2.  They are different aspect ratios, so yes, they end up letter boxing when you convert between them.  That is the expected result.

The 4K format you are using is a multiple of 2K and is not the same widescreen aspect ratio as 1080p.  You can't translate between them without letterboxing, though there are several different competing "4k" resolutions, so it won't hold true for all "4k" formats, but it does for the one you are working with.


What is a good utility for trimming .dv files without losing metadata? I'm using a mac and I'd prefer a free utility, but don't mind using a commercial tool if I have to.

The following ffmpeg command will remove the first and last minute of a ten-minute input file:

ffmpeg -i input.avi -ss 00:01:00 -t 00:08:00 -c copy output.avi

-ss means start seek; that is, where the output will begin. -t means time; that is, the length of the output: so the above command will start at the first minute, and end eight minutes later.

With some video codecs, using these options with -c copy can cause issues due to I-frames (i.e. ffmpeg will cut to the nearest I-frame). This shouldn't be a problem with DV, though, sine AFAIK it's I-frame only.


How to to break down nested sequences into its components I have a subsequence (or nested sequence), and I'm using only part of it a in a larger sequence. Is there any good way to break it down into its components so it will be cut exactly right? (I'm not using the entire nested sequence, just a part of it)

Figured it out minutes after posting. Like this:

Enable the Nest Source Sequence option.
Put marker on the beginning frame of nested sequence. double click to go inside it (it will put the marker on the right spot), and then do Ctrl+C.
Go back to the main sequence, and drag the subsequence\nested sequence from the source monitor. You'll get the individual parts from the nested sequence that match the trimmed version you already have.

Hope this helps anyone.

P.S

Adobe, can you please streamline this? I mean, it's ridiculous


Unable to render file larger than 4 Gigs in Sony Vegas 10 I have wasted over 8 hours trying to figure out what is wrong my program. I am trying to render a 30 minute file in high quality HD using the Main Concept codec, but as soon as it reaches 100% I get this error saying there was unknown error while creating the media file. Is this some sort of limitation to the codex or program? Is there a workaround?

Thanks.

Not sure what went wrong but I was able to render it in .wmv format. Must have been something wrong with the file itself.


What are the options for manipulating video in live situation? Kinda like a VJ I would like to experiment with live videos when I'm playing as a DJ. I'm a windows user but I can migrate to GNU/Linux and I have money to spend on software.

I remember trying Virtual DJ's video capabilities, but I wanted to know if there are alternatives.

Also, I also remember watching a presentation on QUARTZ which is a Macintosh exclusive software for manipulating video live with complete midi control - he even explained how to hook a WiiMote to the software

So my question is: What are the options for manipulating video live?

The Max/MSP modular environment has a package called Jitter which is used for modifying videos in realtime. I've not had the chance to play with it myself, but I've seen it used in video art installations. Max supports several kinds of control such as MIDI and OSC, so I imagine all of these could be used to control video.

You'll have to make your own patches though - it's not an 'out of the box' solution so much as a realtime programming environment.


Tools to combine a video with an animated logo I'm wondering, what tools would you suggest that I use to create an animated logo like the following.

Say I have a logo that represents a roaring tiger head. I would like to have an intro video that would show the tiger walking and suddenly open his mouth to roar.

It is at this precise moment that I would like to paste the logo on top of the tiger head with a fading effect. So in the end only the logo is displayed with its slogan. The point is to show where this logo design came from.

It would be a nice effect and I can only imagine it's a very simple task for experienced video editors, but for me I have no clue where to start.

If I were you, here is my solution. I separate your video with animated with 3 parts: intro video with walking and roaring tiger, fading logo and logo with slogan. As per your mentioned that you may be a green hand for video editing software, therefore Premiere or After Effects may be too complicate for you. You can try some simple video editing software like I answered here.

Step one, find a walking and roaring tiger YouTube video like this
One:

            , then download it
via YouTube downloader, Google it, you will find some free
Downloader (because it's not friendly to YouTube, you may need to
take caution)
Step two,  cut/edit this video with the simple video editing tools
You picked above, only keep the useful scene, i.e. walking and
Roaring part, save it to your pc first.
Step three, Google tiger head cartoon, you will find multiple
suitable tiger head logo, but you may need to touch up before use it
as your logo. If you already have one, perfect, you can just import
to that video editor, drag and drop to the timeline, applying fading
transaction, save it to your pc again.
Step four, at this point you need PIP function (make sure the
software you picked up has this function). Import the two video clip
and drag and drop the first one(made on step two) to video track and
drop the second one to PIP track, adjust the size and position of
your second video, which can be positioned above the tiger head,
fading at the same time, that's the PIP value.
Step five, import logo to that video editor and them drag to
image/media track (this logo should be put at the end of the
previous video), add text with the slogan you need.
Last step, export and save them to your pc, your video with animated
logo completed. All those steps can be achieved by my software (you
can check my profile), which is very simple to use and will be
suitable for green hands like you. Good luck for you!


How do I get royalty free music, images ,video clips, cartoon characters with different actions and emotions for short filmmaking How do I get
royalty free music,
images ,
video clips,
cartoon characters with different actions and emotions
for short filmmaking?

By buying it or looking for freely licensed media (such as creative commons).  I'm not sure what more you are looking for.  Royalty free content still has to be purchased, there are online stores that specialize in it.  The only trick with it is that you don't have to pay for each copy you make of the final media that you use it in.  There may also be other limitations (such as how much of the media it can make up).  Be sure to read the license for the media closely prior to purchasing to make sure it meets your needs.


After effects Trapcode Tao put image inside the sphere I'm using Trapcode Tao plugin for an audio reactor sphere . Now the only view of my sphere is depended on the Material & Lighting > Image Based Lighting > Built-in Environment  and it is Dark Industrial mode
This Screenshot :

I just want to know is there a way to use an image (custom image) instead of this Environment inside the sphere ?

After some research I found a solution from the official Red Giant documentation

If Built-in Environment is set to None, you can choose a layer to use as a custom reflection map using the Reflection Environment Map pop-up menu. Any image can be selected, but to make a correct environment map it should be a spherical map (also called a “lat/long map” or an “equirectangular map.” Note that a “sphere map” is something else). Note that using a very large environment map uses a lot of space on the GPU.

Just import your image and select it from Reflection Environment menu
Material & Lighting > Image Based Lighting > Reflection Environment


Copy chapter metadata of input to output for Apple compatibility I have a set of media where I'm trying to strip an audio track and copy everything else over. My command is like so:
ffmpeg -i input.m4v -dn -map 0 -map -0:a:2 -c copy output.m4v

The source file has the following metadata:
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'input.m4v':
  Metadata:
    major_brand     : M4V
    minor_version   : 512
    compatible_brands: M4V isomiso2avc1
    encoder         : Lavf58.45.100
  Duration: 01:56:22.98, start: 0.000000, bitrate: 3320 kb/s
    Chapter #0:0: start 0.000000, end 589.923000
    Metadata:
      title           : Chapter 1
    Chapter #0:1: start 589.923000, end 1052.802000
    Metadata:
      title           : Chapter 2
    Chapter #0:2: start 1052.802000, end 1408.282000
    Metadata:
      title           : Chapter 3
    Chapter #0:3: start 1408.282000, end 2034.157000
    Metadata:
      title           : Chapter 4
    Chapter #0:4: start 2034.157000, end 2461.709000
    Metadata:
      title           : Chapter 5
    Chapter #0:5: start 2461.709000, end 3146.101000
    Metadata:
      title           : Chapter 6
    Chapter #0:6: start 3146.101000, end 3454.534000
    Metadata:
      title           : Chapter 7
    Chapter #0:7: start 3454.534000, end 3786.449000
    Metadata:
      title           : Chapter 8
    Chapter #0:8: start 3786.449000, end 4169.207000
    Metadata:
      title           : Chapter 9
    Chapter #0:9: start 4169.207000, end 4569.398000
    Metadata:
      title           : Chapter 10
    Chapter #0:10: start 4569.398000, end 5121.825000
    Metadata:
      title           : Chapter 11
    Chapter #0:11: start 5121.825000, end 5737.065000
    Metadata:
      title           : Chapter 12
    Chapter #0:12: start 5737.065000, end 6326.320000
    Metadata:
      title           : Chapter 13
    Chapter #0:13: start 6326.320000, end 6982.517000
    Metadata:
      title           : Chapter 14
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1910x804 [SAR 1:1 DAR 955:402], 2417 kb/s, 23.98 fps, 23.98 tbr, 90k tbn, 180k tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 254 kb/s (default)
    Metadata:
      handler_name    : Stereo
    Stream #0:2(eng): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, 5.1(side), fltp, 640 kb/s
    Metadata:
      handler_name    : Surround
    Side data:
      audio service type: main
    Stream #0:3(eng): Data: bin_data (text / 0x74786574)
    Metadata:
      handler_name    : SubtitleHandler

Without the -dn flag I get an error when running the command:
[ipod @ 0x7f9d4100be00] Tag text incompatible with output codec id '100359' ([0][0][0][0])
Could not write header for output file #0 (incorrect codec parameters ?): Invalid data found when processing input

When I use the -dn flag I can't select a chapter on my Apple TV which leads me to believe the metadata is incorrect.
When I try and run ffprobe on the produced file I get:
[m4v @ 0x7f966880b800] Format m4v detected only with low score of 1, misdetection possible!
[m4v @ 0x7f966880b800] Could not find codec parameters for stream 0 (Video: mpeg4, none): unspecified size
Consider increasing the value for the 'analyzeduration' and 'probesize' options

I also tried adding -map_chapters and -map_metadata but I get an error:
[ipod @ 0x7f93a0026400] Tag text incompatible with output codec id '100359' ([0][0][0][0])
Could not write header for output file #0 (incorrect codec parameters ?): Invalid data found when processing input

The command that resulted in the above is:
ffmpeg -i input.m4v -map 0 -map -0:a:2 -map_metadata 0 -map_chapters 0 -c copy output.m4v

What's the proper command to copy everything over EXCEPT the track I want to exclude?

A command like the following seemed to do the trick.
ffmpeg -i input.m4v -dn -map 0 -map -0:a:2 -map_metadata 0 -map_chapters 0 -c copy output.m4v


How to avoid quality loss on yotube/fb when encoding images into video via FFMPEG I created a video from a bunch of images off my camera using FFMPEG. I set it to 10fps. The output video looks fine. As soon as I upload it to Facebook or Youtube the quality is reduced significantly.

Here is the command I used to create the video:

ffmpeg -framerate 10 -pattern_type glob -i 'resized/*.JPG' -s:v 1280x720 -c:v libx264 -profile:v high -crf 20 -pix_fmt yuv420p  out.mp4

Each image has been resized to 1000x1500 pixels.

Screenshot from video from ffmpeg: https://www.dropbox.com/s/r3v30lj15a5hl6a/local.png?dl=0
Screenshot from video from Youtube: https://www.dropbox.com/s/qrur54r7xsnnrxs/youtube.png?dl=0

If you look carefully you can see the Youtube one is missing a lot of sharpness and detail. It looks much worse when playing through the video.

FYI - I know nothing about video encoding, I just googled for the ffmpeg command so most likely I am doing something silly.

Thank you!

YouTube re-encodes whatever you give it. The process is lossy so there will be a quality reduction. All you can do is give it a very high quality:

ffmpeg -framerate 10 -pattern_type glob -i 'resized/*.JPG' -vf scale=1280:-2 -c:v libx264 -crf 17 out.mp4

Use -crf 17 or -crf 18 for higher quality.
Try without -pix_fmt yuv420p. I'm not sure what YouTube uses for pixel format conversion, but perhaps it will look better than the FFmpeg swscale if they are using something different.
No need for -profile:v high. Let the encoder choose. You usually only need to set a profile when your target device is limited in profile support.


How to show audio keyframes in Adobe Premiere CC? How to show audio keyframes in Adobe Premiere CC?

Show Audio Keyframes option is ON although I can't see any keyframes on the timeline.

I am sure, keyframes are there, since volume controls change in Audio Clip Mixer as I move play head.

You need to expand the track to be large enough to see the waveforms and overlaid keyframes.  Mouse over the horizontal line that divides A2 from A3, drag downward, and your waveforms and keyframes should be revealed.

If you right-click in the waveform area, you have the option as to which keyframes it will display in the window.  By default it's Volume:Level, but it could be Panner:Balance (or others).


How to join 2 youtube videos with different ratios (16:9 and 4:3)? I need some help with the youtube video editor? I need to join 2 youtube videos but one is in 16:9 and the other in 4:3. The final result should be in 16:9. Is it possible with the youtube video editor?
Thanks

You're either going to have to resample your 4:3 video as 16:9 which will add black bars at the top and bottom, or crop the 16:9 video to fit in 4:3. Either way, the video will need to be re-edited, maybe even re-uploaded. I assume you have editor/owner access to both files?

As far as I can tell there is not way to do this on YouTube via the enhancement section on the Video Manager section. It looks like you will have to re-upload.


Mac Hardcode Subtitles from SRT to MP4 & adjust size and screen position I've been spending all day trying to achieve everything in my question.

The only solution I've found being to encode the subs onto a green matte and then key out the green in premiere and change the screen position and size.

The tricky part is scale and screen placement issue, I've tried handbrake, subler and ffmpeg, but without success.

Any free software suggestions are welcome. Thanks.

If you convert the .srt files to .ass, then you can have a lot more control over how the subtitles appear.

To convert use ffmpeg:

ffmpeg -i input.srt output.ass

This will give you an .ass subtitle file. You'll see in the header of that file that there will be details about font, size, placement colour and so on. Here's an example from Wikipedia:

  [V4+ Styles]
   Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding

  Style: Default,
  Arial,28,&H00B4FCFC,&H00B4FCFC,&H00000008,&H80000008,-1,0,0,0,100,100,0.00,0.00,1,1.00,2.00,2,30,30,30,0

The first line lists all the settings, and the second lists the values for each style.

You can edit the header by hand to get the size and placement you want, and then burn it in using ffmpeg again:

ffmpeg -i input.mov -vf ass="output.ass" output.mp4

You may want to add encoding settings etc, but that's basically it.


Blotchy, pale, reddish skin My skin tone is reddish and pale.

It seems even moreso in front of a video camera, where I'm recording some lectures in front of two lights and a black backdrop.

Also whereas looking in a mirror it doesn't look like I have acne, in front of a camera my skin looks very blotchy, see:

What can I do to reduce that?

I'm not being flip, but consider that not every problem has or needs a technical solution. Stage makeup can make you look any way you want to look on camera. No professional video host would go on air in his/her plain skin.


Is it possible to extract frames from corrupted mp4? I have an mp4 file that I'm trying to recover. The file is missing a moov atom. I've tried all the usual utilities like ffmpeg, remoover, untrunc but all of them failed. I'm wondering now if it is at all possible to just extract a few frames from the video. It is timestamped security footage so any frames I could pull could be useful.

Try TMPG Smart Renderer https://tmpgenc.pegasys-inc.com/en/product/tmsr5.html
If anything is recoverable, this tool should work. If it can't pull anything from the file, I don't know of any other tool that would. The trial version should work fine for you to get what you need.


ffmpeg merge 3 videos to a single widescreen video I have three .mp4  files and I want to generate a single widescreen video
For generating the widescreen I've worked out I can use this command assuming I've prepared the individual mp4 files:

ffmpeg -i teacher.mp4 -i student1.mp4 -i student2.mp4 -filter_complex "[0:v:0][1:v:0][2:v:0]hstack=inputs=3" -c:v libx264 -tune film -crf 16 -b:a 256k triple.mp4

Main Question:

1.triple.mp4 only has one audio,But I do need three audio tracks

2.three video playtogether in triple.mp4,can I controll the start time that   I set before?

For 1. use amix filter.
For 2. You could use trim filter to trim some of inputs. To delay one of videos, with black? frame, you could concat it with color source filter. But that needs quite convoluted filtergraph.


Windows software to turn a 3gp video on its side before upload? My camera phone takes video in 3gp format. I've inadvertently taken a video sideways and want to turn it 90 degrees for upload to services such as YouTube and Facebook.

What software package can I use on Windows to do this, or is there another option?  I've looked at the YouTube upload interface and it doesn't have an option to turn the video.

You could use Windows Live Movie Maker, which is free with Windows Live Essentials.  Here is a tutorial on how to do it.

It looks like Windows Movie Maker doesn't have native support for the 3GP format, but you should be able to download a CODEC for it.

For Mac users, iMovie is the equivalent.