Questions on workflow: 12G-SDI to 500Mbps to RTSP stream

I've worked through a similar project over the last 6 months, and performed more tests than I can keep track of now.  So this is a little fresh for me.  With your questions:

4K camera -> capture card -> Linux PC (compression) -> RTSP

This will work well

Are blackmagic ursa mini 4K and decklink card able to do the first 2
stages respectively?

Yes

Is ffmpeg + libx264 able to perform real-time compression at such a high bitrate?

It's possible, but I'm going to say that whichever way you spin it, you're likely going to arrive at getting a hardware card.

If not, any recommendation for hardware encoding card?

nVidia Quadro cards are excellent.  Anything with a Maxwell GM204 chipset or higher.  Even a sub $1000 card will open up the world of possibilities, especially when it comes to hardware accelerated resizing, format conversion, and producing multiple outputs.
A note about libx264
I advise care getting advice from anyone who hasn't used it for the purposes you're trying.  The theoretical and unit tests don't always account for everything.
libx264 is an excellent encoder.  It's well known it produces superior quality encodes than say a hardware accelerated h264 encoder for the same bitrate.  It also has a whole heap of specific options that can maximise efficiency and produce a video with multiple 264 layers that is friendly to all types of clients.
The strength of libx264 isn't realtime encoding though.  Yes it has zerolatency tuning options, and crf modes to reduce cpu demand, but every small change can make a major impact on encoding time.  The difference between doing a 2560x1440 encode and a 3840x2160 encode is drastic.  The difference between a yuv420p and yuv444p is also drastic.
Also, importantly, many of the options that make the significant difference in libx264 are lookahead options, these unashamedly prfioritize the end product as opposed to the performance of getting to the end product.
No implementation of x264 that I know of, does threading very well.  You can have a rack server with 200GB ram, and 24 actual CPU cores, and max them out very quickly.
One of the "gotcha"'s of libx264 is that you can seemingly have it running so well that it looks like a video player - i.e. - you plug something into the SDI port, and it shows up on the network player.  Amazing.  You can have it running for days... Then all of a sudden when the input signal becomes very complex (i.e. low lighting, stage effects like haze, fast detailed motion, fades and transitions, etc.), all of a sudden the roof comes tumbling down reveal 35 issues that look like one.  You remove the issues one by one, and by the time you have it running a treat, you may decide that x264 isn't going to cut it.
Having said that - running at a higher bitrate, requires less compression, and does run noticeably better than at low bitrates.
Given the cost of hardware cards, the doors they open up, and putting that up against the scope of your project, I would highly recommend getting one, whether you use it or not.
At high bitrates - the benefits of libx264 are negated - in fact - h264_nvenc can do realtime 2pass encoding, with spacial and temporal motion filtering and lookahead.  Since you want less than 1s latency, you may not use these, but they are included in some low latency presets.
Blackmagic
The decklink SDK works well with linux.  It's simple to configure card options, change inputs, and using the tools provided you build your own capture tools if required.  Even a $199 Decklink 4K Mini Recorder PCIe card works well.
Example pipeline
Blackmagic -> Encoder -> RTSP
From that RTSP signal you could then run all of these at the same time:

RTSP -> Low bitrate preview / wifi stream
RTSP -> Archive
RTSP -> Create RTMP stream -> Send to live streaming site
RTSP -> Create a 1080p stream -> RTSP
RTSP -> Create an adaptive DASH stream with multiple resolutions


Unable to concatenate videos due to identical MOOV atoms

Without knowing the exact details of your workflow it is hard to answer this question, so more information would be greatly helpful.

One approach would be to use raw video during your "joining" phase of the algo to strip the moov atom. The final step would be to convert your concat'ed raw video back into mp4.


What is the productive way of doing multiple speed changes in a video editing project?

Your screenshot does not have sufficient zoom to see how the checkpoints of Velocity envelope behave. Let me assume they are all having Transition of Hold, e.g. velocity changes abruptly, not gradually: 100% immediately to 150%, then immediately back to 100%.

Along the course of my experience with Vegas, I found velocity envelope inefficient. Instead, I find splitting Video Event into several ones more effective, and here's why.

Say, you have a video event of length 1 minute, as on Track 1. Say, you want the original timeline 0:20 till 0:30 to play at Velocity of 200%, so that it took only 5 seconds instead of 10 original.

Full scale image here

If you add a Velocity envelope as in Track 2 (200% at timecode 0:20), you would need to guess at which point to put another control point for Velocity so that playback continued at original speed.

Also, the end marker of the video indicates that the actual timeline ends at approx. 0:54 (and the rest is a repeat of the same video event from the beginning).

However, if you take another approach and split your video as displayed on Track 3 and then Ctrl+drag the end point of the middle Event, it would work smoothly. You will be sure that the third Event starts at proper timecode (in original scale).

The only thing you would need is dragging the 3rd Event backwards, as shown in Track 4.

Moreover. As soon as you Group all three Events by Ctrl+clicking them and then pressing G, you will be able to process them together. In Track 5, I have stretched all three events so the entire video played a bit slower.

Note 1. Most likely, you will need to overlap these three Events somehow. This will let the stream to be smoother, without abrupt Velocity changes.

Note 2. Of course, all above applies to multi-track Groups as well. You need not keep all Events within the same Track.


How do i put the image behind video by using FFmpeg?

Use the overlay filter

This will overlay the video on top of the image:

ffmpeg -loop 1 -i image.png -i video.mp4 -filter_complex "overlay=(W-w)/2:shortest=1" output.mp4

If you need to resize the video then add the scale filter:

ffmpeg -loop 1 -i image.png -i video.mp4 -filter_complex "[1:v]scale=400:-1[fg];[0:v][fg]overlay=(W-w)/2:(H-h)/2:shortest=1" output.mp4

You can use pad filter instead of an image

If you just want to add black padding you don't need an image and can use the pad filter.

ffmpeg -i video.mp4 -filter_complex "pad=1280:0:(ow-iw)/2" output.mp4

Using the player to do it instead

You could add the padding upon playback so you don't even need to re-encode:

ffplay -vf "pad=1280:0:(ow-iw)/2" input.mp4


On this site there are some interesting scripts for you to use:

AEScripts


Replacement for Windows Live Movie Maker for combining images and audio (Windows 10)?

It can be made directly on the YouTube website. Look at the "Upload" page at the bottom-right corner:


Getting DaVinci 16.2 Resolve to Work with Intel Gen 4 Graphics

Black Magic Design have recently released Resolve version 16.2.1 with "Improved stability on Windows systems with Intel graphics" - which may help, but generally speaking support and performance on Integrated CPU's has always been limited. I can run DR on my Laptop with an Intel HD 520, but only for very basic & slow editing.

You also did not say when it crashes. i.e. At startup / playback / edit, and what media was being processed (if any).

Minimum system requirements for Windows:
Windows 10 Update
16 GB of system memory. 32 GB when using Fusion
Blackmagic Design Desktop Video version 10.4.1 or later
Integrated GPU or discrete GPU with at least 2GB of VRAM
GPU which supports OpenCL 1.2 or CUDA 10
NVIDIA/AMD/Intel GPU Driver version


Multiple Audio Sources for Audio Spectrum

Place your multiple audio sources into a comp, then place that comp into the comp where your audio spectrum effect is going to be.  Point the Audio Spectrum effect at the comp with your multiple layers within it, and they should all affect it together.


Awful Audio in Video post-render (Premiere Pro CC)

Do they playback properly in Premiere before you render? If they playback fine when you export them as uncompressed wav, try exporting them to wav, then import that single wav back into your project, mute the other 3 channels, and then export your single wav and single video.


ffmpeg stream options for mp3, cover art of mp4

If you just want to embed a cover you might consider keeping the result as mp3, for example:

ffmpeg -i original.mp3 -i cover.png -map 0:0 -map 1:0 -metadata:s:v title="Album cover" -metadata:s:v comment="Cover (Front)" -id3v2_version 3 -write_id3v1 1 result.mp3

If you are creating mp4's, e.g. for YouTube, then I suggest to split the process to two steps - first create the video movie with no audio track, duration somewhat longer than that of the audio. Then mux the video and audio together with the -shortest option which will truncate the video to the exact duration of audio. In terms of time these two steps will take a tidbit longer than a single pass but your whole workflow will be much simpler and more manageable.


Monitor FFMPEG Rtmp live stream with FFPLAY pipe

I think i got it!
if anyone wants to clean this up let me know, it does work though as is
this is the partial code from the windows batch file:
ECHO Type in your stating playlist file
ECHO.
set /p list=""
set video=rtmp://stream.ssh101.com/live/XXXXXXXXX

bin\ffmpeg -hide_banner -loglevel quiet -stats -re -f concat -safe 0 -stream_loop -1 -i %list% -flags +global_header -auto_convert 1 -c:v libx264 -bsf:v h264_mp4toannexb -c:a aac -b:a 128k -ac 2 -ar 44100 -bsf:a aac_adtstoasc -preset veryfast -b:v 1984k -maxrate 1984k -bufsize 3968k -tune zerolatency -g 50 -fflags +genpts -map 0:v -map 0:a -f tee "[f=flv]%video%|[f=nut]pipe:" | bin\ffplay -hide_banner -loglevel 0 pipe: -window_title "RTMP Stream Monitor 1.0 - Viewer (powered by FFPlay)" -x 640 -y 480  -sync audio -autoexit -exitonmousedown -autorotate

Hope this helps someone in the future and definitely look forward to anything to add to this to make it even better


How do I use Resolve to permanently extract and save small clips from mov files/

You can do it right in QuickTime.

Open the videos in QuickTime
Edit > Trim
Save or Export those shorter clips
Import them into your preferred editor

If you do want to use Resolve:

Import your clips to your Media Pool
Click on the Edit tab, select all of your clips in the media pool, drag them to your timeline.  The order of them doesn't matter, if you just want individual clips, neither does having gaps in your timeline.
Once you have trimmed your clips as desired, go to the Deliver tab
Make sure to select Individual Clips at the top and adjust your settings as desired
Select your entire timeline and then add the job to your render queue
Render


How to fade in/out a video/audio clip with unknown duration?

#1 To simultaneously fade the audio in/out:

ffmpeg -i clip.mp4 -vf 'fade=in:0:30,fade=out:960:30'
                   -af 'afade=in:st=0:d=1,afade=out:st=32:d=1'
       -c:v libx264 -crf 22 -preset veryfast fadeInOut.mp4

The afade times are in seconds.

#2 Automatically? No. But see workaround below

You can first run ffprobe to get duration.

ffprobe -i clip.mp4 -show_entries stream=codec_type,duration -of compact=p=0:nk=1

You'll get something like this:

video|13.556000
audio|13.816000

You can then use the above to place your fades. These times are in seconds.

Workaround

ffmpeg -i clip.mp4 -sseof -1 -copyts -i clip.mp4 -filter_complex
       "[1]fade=out:0:30[t];[0][t]overlay,fade=in:0:30[v];
        anullsrc,atrim=0:2[at];[0][at]acrossfade=d=1,afade=d=1[a]"
       -map "[v]" -map "[a]" -c:v libx264 -crf 22 -preset veryfast -shortest fadeInOut.mp4

FFmpeg has a sseof option that allows one to seek an input from the end. We can use that to accomplish our goal. So we feed the input twice, with the 2nd time ingesting only the last second. We tell FFmpeg to preserve the timestamps, so that ffmpeg preserves the temporal position of this tail portion.

We apply a fade out to this tail and then overlay the result onto the full input. Since they are the same media file, the foreground completely covers the background, and since copyts was applied, the overlay happens upon the corresponding identical frame in the background input.

For audio, we create a blank dummy audio of duration 2 seconds, and then apply an audio crossfade from the main audio to this dummy audio. Since the 2nd audio is blank, this is, in effect, a fade-out for the main input. The -shortest is added to leave out portions of the dummy audio after the crossfade has occurred.


What keywords to use when searching for a Maya plugin developer?

Your best bet is probably to look for developers of commercial Maya plugins and see if they are willing to do contract work.  Most studios have developers on staff to handle any project specific coding work needed.  It's a pretty specialized skill set and I doubt there is much of a market for doing it as consultants.

That said, my (limited) experience playing with APIs in 3d graphics software would tend to indicate that any developer with experience working with 3d systems should be able to pick it up pretty quickly.  The concepts, when it comes to the programing, aren't that different from DirectX to OpenGL to SoftImage or Maya.  It's still shaders, geometry, physics, etc...


How do I make a professional slide show type video?

This video is very simple to do.

Record voice.
Use a proper camera/phone that takes high resolution images (so that when you zoom in the software, it will retain the quality), then take a photo of each page of the book.
Import images and sound into the software.
Do those effects in video which are basically (tilt, pan, zoom-in, zoom-out) mix between them and adjust speed accordingly.

Note: its always better to record sound first, and animate based on that, so that you know how long is each shot and when to cut.
What software: Personally I only use After Effects and Premier Pro, they are not free but there is a Trial. Check this article for PAID and FREE editing software and try some of them: The best video editing software 2018: paid and free

Basically the effects/transitions mentioned above can be done with any of those softwares, a couple of tutorials should make it possible.


Is importing to Aperture then editing in iMovie a viable workflow?

I usually manually drop my files into the iMovie Drop Box for safe keeping until I want to use/edit them and do all my managing of videos (personal ones, at least) in iMovie.


How can I reuse an effect sequence in FCPX?

Use "Total Adjustment" it works like a photshop-layer. You simply can duplicate it for reuse with other clips.

How to: Install Total Adjustment. Open the effect-library in Final Cut Pro X. Select the titles. Drag the "Total Adjustment"-title to your project. Copy all effects you need to this title-clip. Place it above a new videoclip. Every video-clip that's under this kind of "layer"-clip will be affected of its effects and adjustments.


What can cause Bluray disks burned from Encore to get laggy/skippy?

It seems that this may have just been that the burning software in Encore doesn't work well with my burner.  Since burning a folder itself with Nero worked, this seems to be the only logical conclusion.


MPEGTS & HLS: Only second segment onwards is valid

For non-conventional layouts, the native AAC encoder writes a PCE section in the bitstream header as part of the AudioSpecificConfig. However, it does so only at the beginning, therefore subsequent files have AAC streams with this missing.

Workaround is to change to a different packetization scheme for AAC in MPEG-TS.

Add -hls_ts_options mpegts_flags=latm when generating the HLS package.


I want to insert my photo as background in my video which has white background

To replace a white background with an image, you need to use a Luma Key.  A Luma Key is like a Chroma Key, except that instead of using a color value (such as green or blue, usually qualified also by a certain level of luma), you will use only a luma value (such as anything brighter than 200 IRE).

Most NLE software have both compositing and keying functionality.  But now that you know what the effect is called, you can research how to access that functionality in the software you are using (or will use).


Forward thinking the A7s is capable of 4k (with external recorder, e.g. atomos shogun) which is trendy and can shoot at a higher fps (120 fps) and in S-log which for me is three major selling points over the 5D. Not to mention the picture is a lot sharper. The 5D in my opinion is not something I would want to use given the option of the A7s, the image is soft and muddled in comparison. I have used both.

That being said, if you are not concerned with taking pictures, and strictly want to get into video may I suggest buying a C100 MK I. On ebay they are in roughly the same price range, and the camera, although not out performing the A7 in terms of resolution and frame rates, has a beautiful Canon look out of the box, professional video controls + form factor, and many people prefer C-log over S-log.

That being said, if I were to get a B-cam to my C100 MK II, I would get the A7S. Sure it might take some work to match the Sony green-cast to the generally more neutral Canon image, but the pros far outweigh the cons.


Is there a way to get the bitrate of a specific region of a video?

You can only estimate the bitrate as proportion of your crop. If you have 30,000 Kbps for 1920*1080 pixel, then for 1080*1080 pixel this would mean 16,875 Kbps. If there is more complexity inside the crop region than outside, I would even increase the target bitrate further.

However, if your videos are not that long and not intended for streaming I wouldn't invest too much thought into saving some disk space. The video quality will degrade anyway with the encoding process and a high bitrate will help you avoiding too much loss.


How to read 10-bit RGB values from HDR video?

The ProRes input will have YUV encoding, not RGB. If you need a raw dump, save as rawvideo.

ffmpeg -i in.mov -f rawvideo raw.yuv

Note that bit depths which aren't multiples of 8 are still stored in data layouts which are, with padding. So, if ProRes is yuv422p10le in limited / studio range, the 10-bit luma value for a white pixel will be 940 or 1110101100 but will be stored as 16 bits in the file: 1110110000000011 where the order is little-endian.

You can however save as RGB 10-bit (with padding),

ffmpeg -i in.mov -pix_fmt gbrp10be -f rawvideo raw.rgb

where the green plane is stored first, then blue, then red. The above is for big-endian so the byte order isn't reversed.


When import video in final cut pro it’s uses wrong resolution

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

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

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


How to split,reverse and concatenate video using single command in FFMPEG?

If you want to concat the videos in the same order they were in, but with the individual videos reversed, I think you've already found the best way and there would not be a one liner.
If you concat the videos, and then reverse it, it would look like this:
ffmpeg -f concat -safe 0 -i mylist.txt -c copy pipe: | ffmpeg -i pipe: -vf reverse reversed.mp4
Sources:

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

https://stackoverflow.com/questions/45899585/pipe-input-in-to-ffmpeg#comment99663597_45902691

How to use FFmpeg Command for Reverse Video?


I have seen similar things built with vvvv. I believe the current equivalent for Mac is Processing.


Merge two videos in ffmpeg with audio from one

Probably the most simple solution is to use this command:

ffmpeg -i v1.avi -i v2.avi \
    -lavfi [1:v]trim=0.5:1.5,setpts=PTS-STARTPTS[part1];[0:v][part1]concat[video] \
    -map [video] -map 1:a output.avi

Notes:

This command is sufficient only in an ideal case, when there are not needed another filters for conversions of incompatible video streams (e. g. because of different frame sizes).
It is appropriate to use option -c:1:a copy (somewhere between specifying input files and -map options) to avoid transcoding the audio (of the second input file).
Tested with files v1.avi, v2.avi synthetically created with the command

ffmpeg -f lavfi -i testsrc2=d=1  -f lavfi -i anoisesrc=d=1 -f lavfi -i testsrc=d=2 -f lavfi -i sine=d=2 -map 0:0 -map 1 v1.avi -map 2 -map 3 v2.avi

The detailed explanation:

ffmpeg -i v1.avi -i v2.avi

Input files are introduced with -i options, and are enumerated from 0, so

v1.avi has the number 0,
v2.avi has the number 1.

After the semicolon (:) may be the stream specifier - supposing that you have only one video and one audio streams in your input files, you may simply use v for the video stream, and a for the audio stream. We will use them later — see the picture near the end.

-lavfi

introduces a complex filtergraph. You may use the synonym -filter_complex instead.

[1:v]trim=0.5:1.5,setpts=PTS-STARTPTS[part1];

This is the first linear chain of filters (i.e. the part up to the semicolon) of the filtergraph.
It consists of 2 filters: trim (up to the comma), and setpts (after it).

trim=0.5:1.5 gives only half of the video (particularly, from 0.5 s to 1.5 s).
setpts=PTS-STARTPTS set timestamps of the trimmed part from 0 s (to 1 s).

Note the input pad [1:v] — it is the only video stream (v) from the input file 1 (which is the second input file — v2.avi, because input files are numbered from 0).
Note the output pad, for which I chose the label [part1].

[0:v][part1]concat[video]

This is the second linear chain of filters (after the semicolon) of the filtergraph. It consists of only 1 filter: concat.
concat - the original stream 0:v and the intermediate stream [part1] are concatenated.
I chose the label [video] for this other intermediate result.

-map [video] -map 1:a output.avi

The -map options map selected streams from the input files and / or output pads from the complex filter into the output file output.avi in the specified order:

the output pad [video] from the complex filter maps to the output stream 0,
the audio stream (a) from the input file v2.avi (numbered as 1) maps to the output stream 1.

In more complicated cases with more video or audio streams, e. g. if the second input file contains 2 video and 3 audio streams:

You need specify individual streams with their ordinal numbers - they are again numbered from 0.

For example -map 1:a:2 will select and map the third audio stream (numbered as 2) from your second input file (numbered as 1) into the output file.

As you can see from the picture, you may use -map 1:4 instead.


Compatibility between Adobe Premiere Elements 15 and 11?

In general with Adobe software, newer versions of a program can open/import project files created with older versions. This makes sense, since it would be pretty stupid if you couldn't open your old projects anymore after upgrading your software version. However, in most cases the project files are not backwards compatible, meaning you can't open a project created with the current version of your software with an older release of the same software.

For this reason, if you open an old project file with a newer release of Premiere Pro, it informs you that the project file needs to be converted and prompts you to save the new project file with a new name. This way, you will still have the old project file that can be opened with the older version of Premiere. However, any additional changes you make to the project will only be present in the converted project.

For Elements, I'm not sure how the conversion is handled, but you will definitely be able to open your Premiere Elements 11 project file with Premiere Elements 15. However, once you overwrite the project file from within Premiere Elements 15, you probably won't be able to open it in Premiere Elements 11 anymore.


What are ways to show phone conversations?

I like to think of alternate ways to do things, so here are a few.

One variation of the split screen is a picture-in-picture layout, where Caller B is in a small (often rectangular) box overlaid on the main shot of Caller A.
Another variation of the split screen is a "cloudy" picture-in-picture, where Caller B appears as a cloud-shaped image with fuzzy edges overlaid on the main shot of Caller A, usually floating above Caller A's head. This is sometimes used to make it look as though Person A is thinking of Person B, but I'm pretty sure I've seen it as a phone call too.
If the call occurs in present day, a video call on a computer screen can show Caller A and Caller B in a variety of layouts.  It could even include Callers C, D, E, etc.
Some scenes only show Caller A, and Caller B is heard without being seen.
In the movie The Player, there is a creepy scene in which Tim Robbins calls a woman he's attracted to / stalking.  He's on his cell phone, outside of her house, at night. She can't see him but he is looking in through her windows while they talk. So there are some 2-shots that show both of them on the phone simultaneously. (It's briefly included in the trailer at 1:10.)


How do I convert H.264 Rec709 ("SRGB") to H.265 HEVC 10-Bit Rec2020 ("Wide Gamut")?

Download the relevant build for Windows, eg: https://sourceforge.net/projects/ffmpegwindowsbi/files/july-01-2016/

Use the following command line: ffmpeg -i INPUT.mp4 -c:v libx265 -crf 20 -vf eq=gamma=1.15:saturation=0.925:brightness=0.05:contrast=1.15 -color_primaries bt2020 OUTPUT.mp4

Note that you will have to adjust the various values such as brightness, contrast, saturation, etc. to your taste since this is a "brute force" conversion to wide-gamut Rec2020. This has been tested on iPad Pro with H.264 movie trailers. On wide-gamut displays such as the iPad Pro you should notice richer, deeper colours.

Note that this is not an archival or permanent solution as Rec2020 is a very wide gamut vs Display P3 (latest Apple devices) or Adobe RGB (pro wide-gamut monitors). Newer Ultra HD TV monitors or reference monitors that can get close to Rec2020 may be more suitable.

In any case I think this is an interesting experiment and learning experience for any amateur or pro who has just started exploring wide-gamut and/or HDR video... it is a very, very different world to SRGB that had been with digital media for decades. All that is about to change radically in the next 10 years.


Does the new Panasonic 4k LUMIX LX100 seem like a good entry-level 4k camera?

When I was first looking for a good portable camera, the LX100 was on the top of the list. When looking at research, the LX100 provides great IQ (at 4k) in a good compact device for the price.

If you have not already looked at these sites, I would suggest looking up TheCameraStore review on YouTube, CameraLabs, Dpreview, and EOSHD.

LX100 does also have many limitation.

With a fixed lens system, your focal range is set to certain range. This may not be an issue initially, but can hamper longer term use of the camera.
Having a smaller camera brings up the issue ergonomics and vibrations during handling. In the efforts of compacting the size, there is no flippable screen.
If I remembered correctly, the LX100 has a clicky control ring. This may causes issues when your are trying to focus pull smoothly and cause background audio you will need to clean up.
All the other issues you mentioned about no mic jack and limited picture profiles can be all a concern. (I do believe it has a hotshoe, because it comes with a separate flash unit).
Shallow DOF, while great for a camera this size, will be less than the Rebel with APC sized sensor. With the lack of a tele range for your lens, this will compound the limitations.

My question for you; is 4k needed for your workflow? With the shift of displays going 4k, there is something to be said about future proofing your work. If you are just getting starting in videography, 4k maybe more trouble that its worth. If you want to output 4k content, you will needed a powerful computer for editing, 4k monitor, and good amount of storage.

If you need the 4k (and want the lowest price), LX100 is a great choice. If you have more flexibility in your budget, I would also suggest looking at the Samsung NX1 and the Panasonic GH4.


What to do in order to avoid noises on records from DSLR for greenscreen?

Well, the noise has little to do with the green screen, with the probable exception that you can now compare your image vs a clean background.

The only way to reduce the noise is by having more light.

Try to open the aperture to the max, you can or lowering your shutter speed, (But if you are making rapid moves this could have issues)

Making the ISO Higher will give you more noise, so, if you can not do the previous two options, you need to buy a stronger light. Fluorescent lamps are a decent option, they are not as expensive as led lights.

If the noise is on the background, you need either put more light on it or probably have a smoother background.

Do not use auto mode, learn how to set up manual mode, so the image does not change in brightness as you move.


The problems with seeking are typically in the video player and not in the videos themselves, so you may want to look at different video player. A video player should be able to seek to any frame in the video, regardless of format and the encoder settings used. It is also technically possible to play any video backwards, even though very few players support this.

The problem is, seeking into frames that are not keyframes is difficult and CPU intensive. Frames that are encoded as keyframes can be decoded on their own, while non-keyframes depend on other frames to be decoded. If you are playing the movie left to right all the dependencies  for a given frame have been already decoded, but if you are seeking directly into the frame, then the player needs to search for all those dependencies, decode them and only then it can decode the target frame.

So I think I can summarize my advice as two different suggestions:

Switch to a player that can seek to any frame.
if you can't switch to a better player, then encoding your video with more frequent keyframes will give you better seek accuracy, at the expense of picture quality (if you keep the bitrate the same) or file size (if you increase the bitrate to compensate).

Good luck.


avconv: What are the mpegvideo private options?

Private options are switches/flags only applicable to specific encoders or decoders, and ignored by anything else.

To see the available private options for an encoder, use avconv -h encoder=name e.g. avconv -h encoder=flv

For LibAV, these are the private options available for the MPEG-1 & 2 encoders.

{ "mpv_flags",      "Flags common for all mpegvideo-based encoders.", FF_MPV_OFFSET(mpv_flags), AV_OPT_TYPE_FLAGS, { .i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS, "mpv_flags" },\
{ "skip_rd",        "RD optimal MB level residual skipping", 0, AV_OPT_TYPE_CONST, { .i64 = FF_MPV_FLAG_SKIP_RD },    0, 0, FF_MPV_OPT_FLAGS, "mpv_flags" },\
{ "strict_gop",     "Strictly enforce gop size",             0, AV_OPT_TYPE_CONST, { .i64 = FF_MPV_FLAG_STRICT_GOP }, 0, 0, FF_MPV_OPT_FLAGS, "mpv_flags" },\
{ "qp_rd",          "Use rate distortion optimization for qp selection", 0, AV_OPT_TYPE_CONST, { .i64 = FF_MPV_FLAG_QP_RD },  0, 0, FF_MPV_OPT_FLAGS, "mpv_flags" },\
{ "cbp_rd",         "use rate distortion optimization for CBP",          0, AV_OPT_TYPE_CONST, { .i64 = FF_MPV_FLAG_CBP_RD }, 0, 0, FF_MPV_OPT_FLAGS, "mpv_flags" },\
{ "naq",            "normalize adaptive quantization",                   0, AV_OPT_TYPE_CONST, { .i64 = FF_MPV_FLAG_NAQ },    0, 0, FF_MPV_OPT_FLAGS, "mpv_flags" },\
{ "mv0",            "always try a mb with mv=<0,0>",                     0, AV_OPT_TYPE_CONST, { .i64 = FF_MPV_FLAG_MV0 },    0, 0, FF_MPV_OPT_FLAGS, "mpv_flags" },\
{ "luma_elim_threshold",   "single coefficient elimination threshold for luminance (negative values also consider dc coefficient)",\
                                                                      FF_MPV_OFFSET(luma_elim_threshold), AV_OPT_TYPE_INT, { .i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS },\
{ "chroma_elim_threshold", "single coefficient elimination threshold for chrominance (negative values also consider dc coefficient)",\
                                                                      FF_MPV_OFFSET(chroma_elim_threshold), AV_OPT_TYPE_INT, { .i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS },\
{ "quantizer_noise_shaping", NULL,                                  FF_MPV_OFFSET(quantizer_noise_shaping), AV_OPT_TYPE_INT, { .i64 = 0 },       0, INT_MAX, FF_MPV_OPT_FLAGS },\
{ "error_rate", "Simulate errors in the bitstream to test error concealment.",                                                                                \
                                                                    FF_MPV_OFFSET(error_rate),              AV_OPT_TYPE_INT, { .i64 = 0 },       0, INT_MAX, FF_MPV_OPT_FLAGS },\
{"qsquish", "how to keep quantizer between qmin and qmax (0 = clip, 1 = use differentiable function)",                                                                          \
                                                                    FF_MPV_OFFSET(rc_qsquish), AV_OPT_TYPE_FLOAT, {.dbl = 0 }, 0, 99, FF_MPV_OPT_FLAGS},                        \
{"rc_qmod_amp", "experimental quantizer modulation",                FF_MPV_OFFSET(rc_qmod_amp), AV_OPT_TYPE_FLOAT, {.dbl = 0 }, -FLT_MAX, FLT_MAX, FF_MPV_OPT_FLAGS},           \
{"rc_qmod_freq", "experimental quantizer modulation",               FF_MPV_OFFSET(rc_qmod_freq), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS},             \
{"rc_eq", "Set rate control equation. When computing the expression, besides the standard functions "                                                                           \
          "defined in the section 'Expression Evaluation', the following functions are available: "                                                                             \
          "bits2qp(bits), qp2bits(qp). Also the following constants are available: iTex pTex tex mv "                                                                           \
          "fCode iCount mcVar var isI isP isB avgQP qComp avgIITex avgPITex avgPPTex avgBPTex avgTex.",                                                                         \
                                                                    FF_MPV_OFFSET(rc_eq), AV_OPT_TYPE_STRING,                           .flags = FF_MPV_OPT_FLAGS },            \
{"rc_init_cplx", "initial complexity for 1-pass encoding",          FF_MPV_OFFSET(rc_initial_cplx), AV_OPT_TYPE_FLOAT, {.dbl = 0 }, -FLT_MAX, FLT_MAX, FF_MPV_OPT_FLAGS},       \
{"rc_buf_aggressivity", "currently useless",                        FF_MPV_OFFSET(rc_buffer_aggressivity), AV_OPT_TYPE_FLOAT, {.dbl = 1.0 }, -FLT_MAX, FLT_MAX, FF_MPV_OPT_FLAGS}, \
{"border_mask", "increase the quantizer for macroblocks close to borders", FF_MPV_OFFSET(border_masking), AV_OPT_TYPE_FLOAT, {.dbl = 0 }, -FLT_MAX, FLT_MAX, FF_MPV_OPT_FLAGS},    \
{"lmin", "minimum Lagrange factor (VBR)",                           FF_MPV_OFFSET(lmin), AV_OPT_TYPE_INT, {.i64 =  2*FF_QP2LAMBDA }, 0, INT_MAX, FF_MPV_OPT_FLAGS },            \
{"lmax", "maximum Lagrange factor (VBR)",                           FF_MPV_OFFSET(lmax), AV_OPT_TYPE_INT, {.i64 = 31*FF_QP2LAMBDA }, 0, INT_MAX, FF_MPV_OPT_FLAGS },            \
{"ibias", "intra quant bias",                                       FF_MPV_OFFSET(intra_quant_bias), AV_OPT_TYPE_INT, {.i64 = FF_DEFAULT_QUANT_BIAS }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS },   \
{"pbias", "inter quant bias",                                       FF_MPV_OFFSET(inter_quant_bias), AV_OPT_TYPE_INT, {.i64 = FF_DEFAULT_QUANT_BIAS }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS },   \
{"rc_strategy", "ratecontrol method",                               FF_MPV_OFFSET(rc_strategy), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 1, FF_MPV_OPT_FLAGS },   \
{"motion_est", "motion estimation algorithm",                       FF_MPV_OFFSET(motion_est), AV_OPT_TYPE_INT, {.i64 = FF_ME_EPZS }, FF_ME_ZERO, FF_ME_XONE, FF_MPV_OPT_FLAGS, "motion_est" },   \
{ "zero", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = FF_ME_ZERO }, 0, 0, FF_MPV_OPT_FLAGS, "motion_est" }, \
{ "epzs", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = FF_ME_EPZS }, 0, 0, FF_MPV_OPT_FLAGS, "motion_est" }, \
{ "xone", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = FF_ME_XONE }, 0, 0, FF_MPV_OPT_FLAGS, "motion_est" }, \
{"b_strategy", "Strategy to choose between I/P/B-frames",           FF_MPV_OFFSET(b_frame_strategy), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 2, FF_MPV_OPT_FLAGS }, \
{"b_sensitivity", "Adjust sensitivity of b_frame_strategy 1",       FF_MPV_OFFSET(b_sensitivity), AV_OPT_TYPE_INT, {.i64 = 40 }, 1, INT_MAX, FF_MPV_OPT_FLAGS }, \
{"brd_scale", "Downscale frames for dynamic B-frame decision",      FF_MPV_OFFSET(brd_scale), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 3, FF_MPV_OPT_FLAGS }, \
{"skip_threshold", "Frame skip threshold",                          FF_MPV_OFFSET(frame_skip_threshold), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \
{"skip_factor", "Frame skip factor",                                FF_MPV_OFFSET(frame_skip_factor), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \
{"skip_exp", "Frame skip exponent",                                 FF_MPV_OFFSET(frame_skip_exp), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \
{"skip_cmp", "Frame skip compare function",                         FF_MPV_OFFSET(frame_skip_cmp), AV_OPT_TYPE_INT, {.i64 = FF_CMP_DCTMAX }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS, "cmp_func" }, \
{"sc_threshold", "Scene change threshold",                          FF_MPV_OFFSET(scenechange_threshold), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \
{"noise_reduction", "Noise reduction",                              FF_MPV_OFFSET(noise_reduction), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \
{"mpeg_quant", "Use MPEG quantizers instead of H.263",              FF_MPV_OFFSET(mpeg_quant), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 1, FF_MPV_OPT_FLAGS }, \
{"ps", "RTP payload size in bytes",                             FF_MPV_OFFSET(rtp_payload_size), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \
{"mepc", "Motion estimation bitrate penalty compensation (1.0 = 256)", FF_MPV_OFFSET(me_penalty_compensation), AV_OPT_TYPE_INT, {.i64 = 256 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \
{"mepre", "pre motion estimation", FF_MPV_OFFSET(me_pre), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \


If you know the curve for the mic you're using, then you should at least be able to determine what response you have now, which would tell you if you need to make EQ changes. Doing it band by band might be a bit tedious, but you won't do it often, so...

The gold standard is something like an Ivie sound analyzer, which uses "pink noise" as the sound source, and one or more calibrated microphones as pickups. You can monitor the acoustic properties of the room, from different positions, and see changes in EQ reflected in real time across the entire spectrum.

They're too expensive for casual use, but you may be able to rent one, or hire someone who owns one for a nominal fee.


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


Weird scrolling lines in video while using Akaso EK7000 in low light

that's the frame rate and electricity frequency

Ill bet if you filmed at 1080 25fps you would get the same result. Im going to assume you are based in the US which uses the standard 30fps which is why your 1080 footage does not show it as 60fps is a multiple of 30fps but 25fps is not which is why you are getting the banding.

Hope that helps

FYI there is nothing you can do in camera unless the 4k offers a 30fps (or multiple of) to avoid the banding when filming with standard household lighting


Resize images for timelapse before editing or at export of finished video?

If I could suggest, use Photoshop to import a sequence of images (they have to be numbered chronologically). There you can edit the sequence just as you would edit a normal photo. Export it as video and then edit with editor of your choice.

I would resize only in the video editor as it gives you the option to change which way you might crop and so forth.


How to correct shadows when parts are too bright and other parts too dark?

I can't give an After-Effects specific answer, but maybe this will help..

1 - If you want to color a specific part of the image, deal with "region based filtering."  In DaVinci-speak, that's Power Windows.  Masks, Shapes, Roto.  However you phrase it.  That's how you tell the computer what part of the image you want to effect.  Tie the mask to a tracker so you don't have to hand-animate it.  Also, make the edges of the mask VERY soft.  Don't try to mask the building exactly.  Have a several hundred pixel soft edge on the mask, and even if the tracking isn't quite perfect, you can still get away with murder.

2 - A Local Contrast Filter.  AKA "Fake HDR Look."  Used sparingly, this sort of thing can be used without turning the whole image into a horrible fairy dreamland nonsense picture.  It will help "pop" some of the low contrast regions without doing global color shifts.

3 - You may be able to gamma up the mids while leaving the lows dark.  This would reduce the contrast between the lit and shadowed snow, but leave the dark rocks.  If you have a really specific goal for what it is supposed to look like, it just won't be a 1-button process.


How can I edit out the flicker from a projector from existing video footage?

tomh's advice to double stack the video layer, reduce opacity by 50% and advance a frame is a great starting point and certainly works well on fluorescent light flicker.

I've just had the same problem with a single chip DLP projector image in shot with the banding looping over about 5 frames. Working in Premiere Pro, I layered the video 3 times, cropped each layer to the projection screen area, reduced each layer to 25% opacity and advanced each layer 1 frame on from the last. I also reduced the brightness on the base layer by 100% (referring to Lumetri Scopes and using my eye to avoid blowing out the slide image). It's a very satisfactory result.

Caveat: If anything crosses the projected image is will look like it has a strobe effect and any animations, video or transitions will have this also, however for a set of static slides you should be fine.

I got a bit carried away and made an example video...

Hope this helps you or anyone else using a search engine to love their quirky issues like i did to find the original post.


What is the most compatible compression/Codec to in Handbrake use for video that will be played in Chrome and Safari browsers?

If compatibility is your top priority, then you should include two alternative versions of your video on your website, like in this HTML example.

As for the exact formats I would suggest:

H.264 and AAC in MP4: Chrome, Firefox 22+ on Windows, IE9, Safari 3.1
VP8 and Vorbis in WebM: Firefox fallback for Mac and older versions on Windows.
(If you need support for even older browsers (IE6-8), and mobile (Android, WP7), you could add mediaelement.js to your website.)

Make sure to put them in that order to make the fallback work. H.264 or MPEG-4 are recommended because they are the only formats to have hardware acceleration on newer devices.

Compression settings: start by using constant quality with default settings for video and 128 Kbps VBR audio. For H.264 make sure to not exceed Main Profile and Level 4.0. And since Handbrake doesn't do the WebM format, you could try Miro Video Converter.


How to composite live 4K video with prerendered alpha matted footage

I have a Blackmagic Design DeckLink card which, with bundled software, provides live keying.  I bought that card before they sold a DeckLink 4K cards.  But because they come withe the same bundled software and make the same live-keying claims, I would check that this version first: https://www.blackmagicdesign.com/products/decklink/techspecs/W-DLK-04

You should be able to ingest two channels of 4K video, key it, and output the keyed result in real-time, for $995.  It does require you to have free PCIe card slots in your computer.

An entry level 4K switcher (that gives not only pre-rendered alpha matted footage, but also transitions and chroma key) runs $1,695, and runs stand-alone (i.e., not a card in your computer): https://www.blackmagicdesign.com/products/atem/techspecs/W-APS-04


The way I've seen this done in other systems intended for CCTV is to encode every couple of frames compressed with something like MJPEG and then stream that to the client, the server component of ffmpeg, ffserver may be able to help you with that.
Of course, depending on your needs a different video codec may be more appropriate, particularly if you intend to send every frame in which case something like H.264 may be more efficient.


I don't use Windows, but in Linux you can download the FFmpeg source, then:

cd ffmpeg
./configure
make
make tools/graph2dot

Then you can use it:

echo "nullsrc,scale=640:360,nullsink" | tools/graph2dot -o graph.tmp
dot -Tpng graph.tmp -o graph.png

Resulting in:

Not Windows specific, but maybe helpful for any Linux user who also wants to use this tool.


Which would be the best VFX software for an absolute beginner?

In general you can't create visual effects within a single application, because there are too many different departments like:

Match moving
Keying / Rotoscoping
Modeling
Texturing
Animation
Simulation
Lighting / Rendering
Compositing

Some of them are more artistic and other very technical tasks. For every task there are 2+ specific applications to solve the issue, because in order to achieve best results in the predetermined time it's key to use a confortable application with no or less limitation to complete a task. To connect the work of all departments the industry hires technical directors. In most cases these are computer scientist, trying to built so called pipelines for a solid studio environment.

The idea of Blender is to do everything in it, but Blender also has known limitations like:

Scene Assembly - Issues to display large amounts of geometry
Compositing - Compositor is quite slow, missing nodes like denoise or deep compositing
Rendering - Cycles is not very good at rendering caustics at the moment
Simulation - Bullet Engine is not fully integrated at the moment

These are very special and more professional cases - therefore, I think it is a very good idea to dive into visual effects with blender and learn about your interests.

Related:

Sean Kennedy - Using Blender for VFX in Hollywood
Tears Of Steel - Official VFX Breakdown


AVCHD Lite uses 25p/30p shooting rate and records it to 50p/60p container using frame doubling. Panasonic did that because, I presume, they were unable to shoot true 50p/60p at that time, on the other hand AVCHD and Blu-Ray specifications do not support 720p25 and 720p30 videos. Panasonic did this to stay compatible with the AVCHD format.

I guess the reason was that this way you can author the original clips as-is onto AVCHD Disc or Blu-Ray Disc, and they will be fully compliant and playable by standard Blu-Ray Player.

Nowadays a camera simply stores whatever it records in one of the standard containers like MP4, then you edit/author in whatever format you prefer. But ten years ago the compatibility between AVCHD and Blu-Ray was a selling point for both formats.


After Effects: Audio Not Playing - in AE CS4

Maybe a dumb question, but is the loudspeaker icon enabled next to the music composition layer, when you place it in your main comp?

Also, sometimes if I have weird things happening with mp3 files, I convert them to 44.1khz 16bit WAV files instead, just to rule out any mp3 oddness...

Have you definitely connected the Audio Spectrum effect to your audio layer, by choosing it in the Audio Spectrum's "Audio Layer" effect setting?


Limit the scale of a pick whipped object

You need to do a linear map as an Expression.
So the example below would take any value between 0-100 and map it between -100 to 100.
input = effect("Slider Control")("Slider");
inputLow = 0;
inputHigh = 100;
outputLow = -100;
outputHigh = 100;

linear(input,inputLow,inputHigh,outputLow,outputHigh)


Try VLC or AvTech PlayLite (appears to be abandonware). However, from my cursory research, it seems that DV4 videos are supposed to be bundled with proprietary software (check this Bosch PDF, page 13), so if you're missing that, you might be out of luck.


Does sound from boom operator mic end up being used in final mix in high end production or only used as reference for voiceover?

I'm not sure what sets you've been on, but usually if the sound is being recorded you can literally hear a pin drop. The whole point of a boom operator is to get the mic in a position where it can record good sound. Dubbing is used for some scenes, but for dramatic dialog you get better results recording the performance audio.
The theory behind the boom mic is that sound falls off in an exponential fashion, so the closer the mic is to the sound source, the louder that source will be relative to the background noise. Since you're also recording pictures you can't plonk a mic right in front of the actor as you would in a sound booth, you have to position it outside the field of view of the camera. Since the sound source is usually an actor's mouth, and the actor's mouth is usually near the top of frame, the best way to get a mic close to the sound source is to hang it over the actor, just out of frame. The boom operator will check with the camera operator to find the edges of frame before each shot.
Generally boom mics are directional so that they are more sensitive to sound sources in front of them, which also helps to reduce background sound. Another advantage of having a directional mic over the actor's head is that this means that it is then pointing at the ground, where there are less likely to be sound sources. A mic say, where the camera is will be pointing horizontally, and will pick up whatever is behind the actor.
For studio shoots where dialogue is recorded a sound stage is used. This is a studio that is sound-proofed to reduce both outside noise getting in, and reverberation from inside. Scenes that don't need recorded audio can be done on a silent stage, which is a studio that is not sound-proofed. For location shooting the sound recordist will often use sound treatment to reduce background noise and reverberation.


What is the best version of After Effects to use on my workstation?

First use the trial to test if it runs well on your system. It's the same version as the full version. If you start After Effects it will ask if you want to start the trial now (unless they changed the procedure since the last time I looked).
Adobe has this cloud apps overview tool that let's you install and update apps. Here you could also choose to install an older version and I think you can even install multiple versions side by side. However my recommendation is to work always with the latest version.


How to change the grey color of a clip block in the grey timeline in FCPX

Modify > Edit Roles

Choose a colour, then right-click an item in the Browser or in the Timeline to Assign that new Role.


Applying identical keyframes to identical objects w/variation

I would use a particle engine of some kind to do this.

You set up the Emitter to start from the same position as your torch (in a layer behind it).

You set your particles to look like the ball.

You emit them at an appropriate rate, and use air or wind adjustments to "blow" them across the screen.

After Effects has a built in particle engine called Particle World

https://helpx.adobe.com/after-effects/using/simulation-effects.html

Or you could use Particular from Trapcode

Screen shots below showing roughly how you could do it in Particle World:


While watching the examples it struck me that your video is stuttering as it is over the top with MBPS (23 MB per sec). So I would address your compression scheme first. I recommend that you consider rending your work in mp4 with 5 MB to 10 MB per sec. Here is the recommended video and audio compression as set by the folks at Vimeo for optimizing presentation on their site:

https://vimeo.com/help/compression

Another issue your video example is facing is that the GoPro does not have manual exposure controls. In your example, I see the bike going through bright areas and dark areas rapidly hence quick changes of exposure from the GoPro auto exposure. While the Red Bull example, shows the bikes in a stable light situation that does not force the GoPro to make wide adjustments. The solution to this problem is to either use a camera that offers manual exposure or shoot scenes that are evenly lit so they do not challenge the auto exposure to make big changes. Also, since the GoPro offers you at least a choice of Spot or Center Weighted auto exposure you might explore how one or the other might help expose the scenes more evenly.


Accessing the Layer Panel in After Effects

Figured it out- Apparently shape layers can't be opened in the Layer Panel. That includes Illustrator footage layers with "Continuous Rasterization" turned on. If you turn Continuous rasterization off, it will open in the Layer Panel.


Importing VOB from DVD results in squeezed image

Sounds like thoses apps aren't respecting the Pixel Aspect Ratio (PAR) flag.  Widescreen DVD movies aren't usually made of more pixels, they have a setting in the metadata telling the player to stretch the pixels from squares into rectangles to make the picture look right.

VLC is reading the PAR flag and playing the pixels back in their correct aspect ratio.

A possible solution that has worked for me in some situations is to use HandBrake to convert from stretched pixels with a PAR flag to more pixels that are square.  You can do this in Handbrake by previewing the movie in Anamorphic PAR mode, noting the image dimensions listed, then turning off Anamorphic and the PAR, and typing the dimensions in by hand.  The resulting render will have square pixels (PAR 1.0) but the image will be properly stretched.

Hope that helps.


What is a good lossy format for storing DV

For DV footage, anything below 4.7 minutes per gigabyte is going to start being sub-standard for editing.  That's the standard data rate for lossy compressed DV footage.  Each generation of compression and the lower quality you make the compression, the less suitable for video editing it becomes.

If you use a highly lossy format to store the video, after you edit it and try to encode your final video, you will have a sloppy mess because the source video is too low quality.  It will make you have to increase the settings on your final output to preserve any kind of quality and will mean you have a larger final product than you could have otherwise gotten away with.

By modern standards, 60GB is about $4 of HDD storage or $5 of optical.  Just buy the extra storage if you need it.

If you still want to compress it more (or if you aren't yet at 4.7 minutes per gigabyte) then any standard DV format would work well.  It isn't quite as ideal for editing, but a high quality (high data rate) h.264 high profile VBR 2-pass could be used as well.  Using 3500 KBPS (I'd probably also try all I frame and see how it goes) should give you a good high quality compression.  It is worth noting that h.264 is more demanding for editing with though.  That's still not going to give you any lower than the 4.7 minutes per gigabyte though, so if you have around 5 hours of footage, 60GB really is as small as you want to go.


How to Create a High Quality, Small File Size .mp4 from .mov

A really good program you can use is Handbrake. It's a very popular program among so called "pirates" because it's really good at getting a high quality even at tiny file sizes. And this is with good reason, because the main purpose of Handbrake is, indeed, to make the movies small with high quality. Personally I use it when I distribute my short movies on the internet, and it works like a charm. But enough talking, let's get to the settings!

Let's start with the beginning and go through the important settings.
On the right you have a presets panel. Choose Regular -> Normal or Regular -> High Profile.

Now, we start with the Picture settings.
The anamorphic setting is about the aspect ratio. So you've probably heard about the fact that in video, pixels aren't always square. So if you have widescreen footage, if you compress that to be much thinner, like an OLD SD TV, you could tell the video player to make each pixel wider than it actually is. So, you started have a 500 wide picture, you compressed it to 300, then you tell the player to make those 300 as wide as 500 again.

This is just a basic idea about what it is. You can just leave it at Loose with Modulus at 16. But if you want to learn more and squeeze the absolute maximum out of the file, read about it here.

Leave the cropping at Automatic, unless you want to crop.

Then we go over to the Video Filters. You can turn all of these off. They are made to correct bad footage, which you've probably already done in your video composing software..

Now, Video. These are the crucial settings. Use H.264. This is the format that gives you the highest quality compared to file size today. Quality. This is THE setting if you only want to set ONE. Set it to Avg Bitrate. This is the best one because if you have a lot of blacks in the picture (at night), you can optimize for that and get even smaller file sizes, but at other points in the movie you'll need more space, and so average is the best here. Notice that the size is in kbps which means kilo-bits-per-second. One kilo is 1000 (not 1024, that's kibibit.). One bit is 1/8 of a byte. So if you want a 10 second movie that's 1 MB, you want to enter 1 MB = (1024 * 1kB * 8bits) / 10s = 820 kbps.

Remember that the audio will also add up in addition to this. You just have to test some values until you get an acceptable quality that's small enough for you. If you enable 2-pass encoding, it will evaluate the movie twice, which means smaller file sizes compared to the quality, but it also means that you need more CPU (computer power) to watch it. So turn it on if you want to watch it on computers, leave it off if you want to watch it on mobile phones/tablets.

As for the audio, you just set it to what the output of your original file is. The sample rate of most movies is 48 kHz, but if you recorded in 44.1 kHz, set it to 44.1 kHz... As for the bit rate, 160 is acceptable, but if you have high quality mics and music, set it to 192. You can go higher than this, but as you want small file sizes, there is no need. You could also go lower depending on what size you want to end up with. But do a Preview and listen to the result until you are happy with it.

Then, the last thing you need to do is to tick off "Large file size". You need to have this on if the file is going to be larger than 4GB, but it will break compability with a lot of devices if you leave it on. Then you turn on "Web Optimized". It will make your movie better suited for progressive download so you can shuffle in the movie without downloading it all. But if you are planning for your users to download the whole movie as .mp4 and watch it on the computer, leave it off.

Now, set a file name and click Start. You can also Preview a small clip when you're testing the bitrate setting. Make sure that the extension is .mp4 and not .m4v. This isn't important, but you asked for .mp4, not .m4v. It's just the extension that is the difference anyway..

Hope you get your video squeezed down in size and yet keep the quality as high as possible! Good luck :)


The question reads like: how I get the best quality out of a given setup/financial scale. just keep in mind, that you get what you pay for - so don't expect fancy 4K-movies out of this ;)

The first two things I would suggest to buy are microphone and tripod. Why? If you want to do a silent film, you can use the internal mic - otherwise I would strongly suggest to use an external one, because the internal one might catch too much noise during quality and characteristics.

holding the camera with your bare hands can always cause movements within the movie, so a cheap tripod is better than none. if you buy one, just keep in mind that you might move it during the shot, so it should be moved smoothly.
also don't forget that Autofocus (as used in a DSLR) might not work during filming, so you've to pull the focus.

I would strongly oppose to use a certain lens for a certain style of picture - just try to get the best quality out of the setup and add the "style" in post processing. if you have motivation, passion or the faith not to change something of the style in post processing, than you might buy a lens/filter to archive this.

if you consider buying a Canon EOS, you might have a look at magic lantern for an alternative firmware with an movie making aspect.


How do I blur the background, but not a moving subject in FCPX to create a depth-of-field effect?

FCPX can't do this automatically (like Photo Booth) unless the background is a single colour.

As a workaround, if possible…

Take a picture of the background.
Film the vlog in front of a green screen.
Key the background leaving the alpha channel.
Place the picture behind the video layer.

There is a full guide in this Apple KB article:

Final Cut Pro X: Use chroma keys


How do I create a rotating zooming animation in premiere that I can loop seamlessly upon exporting?

I'll answer the question for After Effects, because to do it in Premiere would be a nightmare. Probably possible, but the survivors would envy the dead.

The tool you need is parenting. Parenting enables you to group layers together, so that what you do to a parent layer you also do to its children. It only works one way though, so the children can have their own lives, moving them wont affect the parent.

Ok so you'll need to put the two layers in a composition. The easiest way to do that is to stack them above each other in a timeline in Premiere, right-click and choose replace with After Effects composition. This will open up AE with a new comp (AE version of sequence) with your layers in it. Layers in AE work the same as in PP and Potatoshop, you view them from the top down. Put the inner layer (the one you want to see at the end) on top. Go to the end of the composition (hit end) and adjust it so that it fills the screen how you want it. You can just click on it in the comp window to manipulate it, but if you want to access the numbers, hit p (no command or control key, just the letter — that's how AE rolls) for position, s for scale, r for rotation or t for opacity. Shift will show multiple properties at once, or if you want to be a noob for your whole life you can just twirl down the arrows until you find the property you want. But you don't want to be a noob for the rest of your life, do you? I can't hear you. DO YOU?

 Don't you dare.

Ok so for your purposes you'll need all of the properties above. Hold Shiftand press prst as needed. Adjust them until your layer is in its final possie.

If you want to manipulate a layer in the comp window use v for the general select / move / drag-corners-to-scale tool, or to rotate it mash w, which will select the wotate tool. Or you could click on the tool panel and choose your tool, but you're not going to do that are you? ARE YOU? I'M WATCHING YOU. You can also scrub the numbers in the properties panel by click-and-dragging, or click and type if you know what you want. This works for any blue numbers in AE.

Now we need to make these puppies move, that's what animation is all about. To do that we need keyframes. Like PP AE uses keyframes to allow properties to be changed over time. To create a keyframe, if you're a noob, you click on the little stopwatch next to the property name.

When the stopwatch is active it means that any changes you make to that property will create a new keyframe. There's a standard noob mistake which is to think that the next time you want to set a keyframe you have to click the stopwatch again. Don't do that, it will turn OFF animation for that property. Also, don't be clicking. [Smacks mouse hand] Stop crying and start learning the keyboard shortcuts like a pro. Seriously, your carpal tunnel will thank me in a few years, and you'll be waaay faster.

To set a keyframe on a property you press its keyboard shortcut but with shiftalt, or for those still using macs shift⌥/opt held down. You'll want to set a keyframe for all your properties, so don't just stand there, get keystrokin': shiftalt / ⌥p then  shiftalt / ⌥r, shiftalt / ⌥s, and  shiftalt / ⌥t. Practice it now and it will go into muscle memory. I do it hundreds of times a day, to the point where I actually have to open up AE and set a keyframe to remember what keys I use, because it's not a conscious thing any more. That's where you want to be.

Pro tip: at this point your layer has some animated properties. To show / hide all the animated properties for a layer, select it and press u. Boom. Bonus pro-tip: What I didn't know for the first few years of using AE (this is the 90s, so things were a bit hazy) was that double tapping it: uu will bring up all modified properties for that layer.

Ok, now hide the top layer. See that eye icon on the left of the top layer? Click that sucker. Annoyingly there is no kb shortcut for this by default.

Now go back to the start of your comp. Pop quiz: if end was the keyboard shortcut for going to the start, you win $1,000,000 cash money if you can guess the shortcut for going home to the beginning*.

With your bottom layer selected, adjust its scale rotation etc. so that it's to your liking, and set keyframes for the properties as necessary. Jump back to the end. You can use a new kb shortcut for this, one you should know: k. It jumps to the next keyframe, and j jumps to the previous keyframe.

At the end of your comp, adjust the bottom layer so that it's how you want it. Because you have the stopwatches active for your transform properties any changes you make will now create a new keyframe. Look at me mum, I'm animating! If you scrub the timeline you'll see the magic happening, or if you want to watch it play in real-time (or whatever your machine can manage), hit 0 on your numeric keyboard, or ctrl0 on a laptop (from memory, might not be right). It will slowly play back as it renders the frames, then playback at something like real time once they're all cached (the green bar on the top of the timeline).

OK now for the parenting. On the right of the properties part of the timeline you'll see the parent column. And a curly icon called the pick-whip, or as someone once mondegreen-ed, the "pig-whip", which instantly became my preferred term for it. This will choose a parent for the layer.

Note that there are (in recent versions of AE) pig-whips for all of the properties. This is for expressions (which is for another day, but they're awesome). Use the pig-whip on the top of the layer, not these ones or you'll get too confused. Also don't call it pig-whip if there's a client listening, you'll sound like an idiot.

We want to make the top layer the child of the bottom layer. At the end of your comp (this is important), use the pig-whip or the drop-down panel to set the parent for the top layer to the bottom layer.

What you'll see now if you go backwards down the time line is that the top layer will shrink in time with the bottom layer. Go back to the start and adjust any additional motion you want it to have. You may also want to set its opacity to 0 at the start, so that it fades in over the zoom.

Nearly done. There's One Weird Trick That Animators Don't Want You To Know that will sell this even better. Use Motion Blur. In the properties panel you'll see four columns of icons. If you can't see them hit f4. Click the one that looks like a stack of chips at a casino. Click it for both layers.

… Nothing changes … Ok, the reason that you don't see anything is that motion blur basically renders each frame a bunch of times at in-between positions and displays them all together. It's super computationally expensive, that's why it looks like casino chips**. So each frame might be rendered dozens, even hundreds of times depending on your settings. Hello slowness.

To display motion blur you have to enable it for the layer, then enable it for previews. See the casino chips icon above the top right of the properties panel? Click that boi, and it should turn blue. Now you should see motion blur on any layer that has it turned on.

OK, save your project, jump back to premiere, and you should see the animation right there in your timeline, like it was all a crazy nightmare … or was it?

*cash money offer not valid in real life, terms and conditions apply, offer not applicable to residents outside Saint Kitts and Nevis.

**this is flat-out not true, but it helps me remember.


I think you're out of luck.
Official specs say 30fps max, and I can't find any documentation of a possible hack.
http://www.nikonusa.com/en/Nikon-Products/Product/Digital-SLR-Cameras/25478/D5100.html
The most widely distributed slow-mo camera is probably the iPhone 5s-- I bet you could borrow one to play around with.


Looking for a free dvd burning program which has basic video editing to make a menu?

Windows Movie Maker and Windows DVD Maker. Both are free and already installed on your PC if you have Vista (go to Start > All Programs - i don't remember)


How to map streams to specific output streamIDs

It's using a counter! To get it to be stream #5, map 5 streams before it :)

That said, mp4box will allow you to set a custom track ID.

mp4box -set-track-id 1:5 file.mp4

This changes existing track with ID 1 to 5. Use mp4box -info file.mp4 to get existing IDs.

However, this will still show up as stream 0 in ffmpeg. But mediainfo and mp4box will show it as having ID 5.


Simple Prowl notifications for After Effects render completion

The script extract you include:

app.project.renderQueue.render();
function(){system.callSystem(“Open growlnotify")};

has a dodgy opening quote.  “ is not the same as " - this is why you are getting the syntax error.

app.project.renderQueue.render();
(function(){system.callSystem("Open growlnotify")})();

works (the (..)() calls the anonymous function). You need to add the parentheses so that the anonymous function gets called, or simply do system.callSystem("Open growlnotify"); without the anonymous function.

You also need to activate "allow scripts to write files and access network" in Preferences/General, otherwise callSystem is blocked.

In the full script you post, when you replaced type = "web" on line 24 to use growl, the same error probably slipped in.  Check your keyboard autocorrect settings to ensure that you've not got curly quotes.


In AE's "output module settings", with the format set to h.264, click "format options".  Under the "video" tab, make sure "Level" is set to 5.1.

Here is a wikipedia entry which contains a table on h.264 level dimension constraints.


I found the answer to what I was looking for in this video, by accident. Leaving it here so others may find it in the future.

I was able to get all letters to generate at once by selecting Custom in the behaviour of how the letters were generated.


How do I preserve the filesize of an MP4 edited in After Effects?

In general, it's better to work with lossless, or at least, less lossy formats than MP4 if you're going to be re-editing the video.  If you can, work from a ProRes or Animation codec .mov file of the original file.

When you export, adjust the bitrate of the video by entering specific bit rate numbers... Vimeo suggests between 10,000-20,000kbps for HD video.  Adjust it downwards until you get the output file size you want, but bear in mind the quality will reduce as the number goes down.


Is it possible to wirelessly transmit 1920x1080 32-bit color 30fps video through VGA from laptop to HDTV?

On a side note, I believe the power is required for the analog to digital converter in wireless transmissions, and not the signal itself, since there is +5V DC power running through one of the pins. So you might actually have better luck searching for USB powered signal converters, because once the signal is digital, you're home free.

Something like this:

http://www.atlona.com/Atlona-VGA-to-HDMI-Scaler-Converter-USB-Powered.html

Once it's digital, you could use something like this if the little bit of latency isn't a big deal:

http://www.amazon.ca/Nyrius-Transmitter-Streaming-Satellite-NPCS549/dp/B009E6R89C


Managing big Canon 7D files in Premiere CS5.5 with an average computer

Do a complete offline edit, it you want the quickest editing, use something like DV NTSC Quicktimes and edit on the fly, it will be SD but you never see the difference, then online to the original by replaceing footage back to your H.264...btw play around with your settings in Premiere and do some tutorials, there shouldnt be a reason an H264 file does not play on that system with those specs.  Transcoded is needed to play 5D or 7D footage within FCP but not within Premiere


How to write more than 7 digits in effect ("slider control") because his stop in 6 number

You can right-click on the slider and select Edit Value. A dialogue box pops up. You can enter a number up to 1000000. If you need a bigger number, consider adding some text to the value using different units or extra zeroes.


Making a YouTube video from powerpoint presentation file with embedded audio file

https://support.microsoft.com/en-us/office/turn-your-presentation-into-a-video-c140551f-cb37-4818-b5d4-3e30815c3e83

On the File menu, select Save to ensure all your recent work has
been saved in PowerPoint presentation format (.pptx).
Click File >
Export > Create a Video. (Or, on the Recording tab of the ribbon,
click Export to Video.)
...


drawtext filter

If you just want to update some text on the screen the easiest method is to use the drawtext filter with the textfile and reload options.

ffmpeg -i input -vf "drawtext=textfile=songs.txt:reload=1" output

songs.txt will be reloaded once per frame. Be sure to update it atomically, or it may be read partially, or even fail.

overlay filter

If you prefer an image instead of text you have to manually select the image demuxer, loop the image, and replace overlay.png atomically whenever you want it to be updated.

ffmpeg -i input -f image2 -loop 1 -i overlay.png -filter_complex overlay output


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

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

VAAPI uses intel QuickSync.


'Awful' is pretty extreme - I don't actually think it looks that bad.

Perhaps it's a little bit over exposed (the car is almost glowing, it's that white) so you might want to consider an ND filter if you're filming outdoors (and you can get one of those for your drone).

Colour-wise, it does look like it's tipping towards the blue-end of the spectrum. Maybe try throwing a little more yellow/orange into the mix. However, that could just be my monitor. Do, please, check your monitor settings, too, they may be throwing off your perception.

This guy seems to know his stuff in regards to Mavic colour grading:

Maybe give that a watch and see if it helps :)


how do I can check whether a sound clip I want to use is copyrighted? (I want to use it in a video and an app also)

Please note, for this answer I use the term copyright as a synonym for whatever law is applicable in your country that deals with protecting intellectual property rights for creative works. Some countries use quite different names for such a law.
Here's a little guide how this topic can be approached. In a professional context, I advise to consult a specialist to clear the rights for you. When you can try to create as much creative content as possible on your own. However, when you decide to tackle the issue of clearing rights yourself this is how I would do it:

Check if the copyright has been expired. Read the law (or at least Wikipedia) to find out how long this time span is in your country. Usually, it's a very long time, so you will rarely find anything from the 2nd half of 20th century or newer with expired copyright.

Find out which copyright limitations or exemptions are defined in the law in your country (e.g. "fair use" in US law). Usually you don't have to ask the creator for permission to freely use their work as parody, in an educational context or when citing an excerpt, but pay attention to quote only the bare minimum.

In most countries there should be a threshold when copyright can be applied. Sometimes the work is so trivial that it shows not enough merit to be protected by the copyright law. In some countries the threshold is very low and you have to read a lot of court decisions to get a good grasp how this is interpreted in practise. If we take a look at your example, after hearing it several times, I am somewhat sure that it is not a simple, plain recording. Either they have created the sound digitally or invested some energy in cleaning up and tweaking a recording. This probably means it has enough merit to be protected. This is my opinion based on what I know how such a case might be judged in my country and if it applies to yours too, you have to decided for yourself.

If none of the above conditions are fulfilled or you are unsure (for example in case of orphaned works), it is safe to assume that the work is protected. If you still want to use the work, check what license options are available. Sometimes Creative Commons allow you free usage of the work but you need to carefully follow every condition they make. Creative Commons comes in various versions and variants. Especially for commercial projects their conditions are often hard or impossible to fulfill. When you do not find any license information, you can always try to contact the creator and discuss business and agree upon a contract for your situation. It will probably cost you a bit but usually you are on the safe side with a contract. If you do not know much about contract law, it will be best to hire a lawyer. However, you have to make sure you are talking to the rightful copyright owner, not to someone who has just published the work with or even without permission and pretends to be the owner. For the example you have provided in the comments to your question, I have my doubt how well such an agreement works, as this person has no contact information on their channel which indicates a non-professional context. This always complicates things.

Do not use YouTube to search for sounds when you need them published along with your own work even in an edited version, like in your case where you want to built an app and use the sound there and in videos. Use trustworthy sources instead, that means professional sound libraries with clearly stated terms of service and license terms. Besides, maybe you already have access to royalty free sounds without knowing it via some software subcription you may have. For example, Adobe offers such sounds when you are a subscriber to their Creative Cloud.

I will not give legal advice how to proceed, but my general recommendation is to look for sounds at some better place, as described in step 5 above, because buying a proper license from this YouTuber person might be hard work. I guess they are not prepared for such a scenario and have no contracts ready, no license terms, etc.


Combine multiple videos as separate streams in one mkv file

Yes, this is possible using ffmpeg and the mkv container.

An example command sequence would be:

ffmpeg -i input1 -i input2 -c copy -map 0 -map 1 output.mkv

source

Breaking down the command:

-i input1 This selects the first input file. Could be something like my video_track1.mov.
-i input2 Here you can specify the second input file. You can add another entry -i input3 if you have more input videos. I don't know what the maximum amount of videos is you can place in one mkv container.
-c copy This copies all the streams (audio and video) in their original encoding.
-map 0 This maps all the streams (audio and video) of the first input file to the first track of the output file.
-map 1 This maps all the streams (audio and video) of the second input file to the second track of the output file.

More information on the -map option can be found in the documentation of ffmpeg.


Problem of overview with my created closed caption in Premiere CC

Closed captions are not sub-titles.  They are supposed to be encoded to be able to be turned on as an option by the final viewer.  If you want sub-titles you will need to do things a little bit differently.  Historically I've just used titles for further control over positioning and formatting.


What options are there for cloud based FFMPEG processing?

Actually you can use Cloudinary for video processing as well.

Cloudinary's API allows you to build manipulation URLs and embed a HTML5 video player with all the video sources and settings.

Original videos are stored in the cloud and you can then dynamically create multiple resized, cropped and manipulated videos on-the-fly and deliver them via dynamic URLs or use code to either add video tags or build the URLs.

For example if  you want to resize a video to a width of 150 pixels and a height of 100 pixels, the dynamic URL will look like this:

 http://res.cloudinary.com/demo/video/upload/w_150,h_100/dog.mp4

You can also rotate the video by any arbitrary angle in degrees with the angle parameter (a in URLs). For example rotating a video by 90 degrees:

 http://res.cloudinary.com/demo/video/upload/a_90/dog.mp4

If you want to add text overlays, use the text: property of the overlay parameter ( l_text: in URLs), followed by the font name and size (separated with an underscore), a colon, and then the text string to display.
For example, to overlay the text string "Sample Video" in the Arial font with a size of 40 pixels:

l_text:arial_40:Sample Video.


I just went through a very similar use-case working with TS files.  MoritzLost has the key point but as ffmpeg options can be quite difficult to sort out when you are first getting started, here is a more detailed answer.
Short Answer
For a single input mp4 file and single input SRT file, we can keep all streams from both files and merge them into a new mp4 container (only transcoding the subtitle stream...ie lossless on the audio/video) like this:
ffmpeg
    -i input.mp4 \
    -i subtitle.srt \
    -map 0 \
    -map 1 \
    -codec copy \
    -scodec mov_text \
    output.mp4

If you have unknown stream types, multiple subtitle streams, or other things going on then this may not work and you might need to revise the options.
MP4 vs MKV container - limitations of mp4
You should know that the MP4 container does not support embedded srt (subrip) streams.  It only supports mov_text for soft-subs.  So we have to transcode the SRT to mov_text or use hard-coded subs (where the subtitle text is encoded into the video stream directly and cannot be turned off).
This is one of the reasons that I prefer the mkv container format over mp4.  It allows me to easily maintain multiple audio and subtitle streams with many different formats all within a single file (keep everything together).  Yes overall file size is larger for people that don't care about those extra audio/subs... but I don't share over the network and hard-disk space is cheap.
Plex and VLC and most other modern media players have no trouble with MKV right out of the box...so something to think about whether you really want to use mp4 if you are someone that cares about soft-subtitles and keeping everything together (single file).
ffmpeg
ffmpeg is a very powerful free/opensource tool.  The command line options can be confusing but once you understand how to use the -map and -codec options, you can already do a lot.  If you are semi-technical and do lots of video work it is worth learning how to use the command line on your OS and how to use tools like this.  Windows Services for Linux makes this easier than ever for windows users on Windows 10.  For Mac/Linux it has always been easy to install and run these tools.
How to mux multiple inputs into a single mp4 container
The following would take an input mp4 (or other) file and a second srt input file, take all streams from both files and mux them into a new output.mp4 file.  We tell ffmpeg to copy the audio/video streams (no transcoding or quality loss) and to convert any subtitle streams into mov_text since that is the only type that mp4 container supports.
ffmpeg
    -i input.mp4 \
    -i subtitle.srt \
    -map 0 \
    -map 1 \
    -codec copy \
    -scodec mov_text \
    output.mp4

Depending on how you run this on windows, the \ to continue the command on the next line may not work and you may need to remove the backslashes and condense the command into one without newlines.
Again but with comments explaining the options.
ffmpeg \
    -i input.mp4 \          # first input file (index 0)
    -i subtitle.srt \       # second input file (index 1)
    -map 0 \                # select all streams from first input file
    -map 1 \                # select all streams from second input file
    -codec copy \           # copy audio/video streams (no transcode)
    -scodec mov_text \      # transcode all subtitle streams to type mov_text
    output.mp4              # name of output file

Running this command will show you output something like the following for a simple input mp4 with a single audio and video stream.
...
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:1 -> #0:1 (copy)
  Stream #1:0 -> #0:2 (subrip (srt) -> mov_text (native))
...

You can see it copies the first two streams (audio/video) from input 0 (the first input) and does a conversion on the third stream from input 1 (the second input...the srt file).
Alternatively, go from MP4+SRT to MKV with mkvtoolnix
If you aren't opposed to MKV containers, then there is no reason you can't just take the input mp4 and separate subtitle file and mux all the streams into a new MKV file instead.  This would also keep the SRT as an SRT and not transcode it into mov_text.
Remember MP4 and MKV are just "containers" and so you can copy around the video/audio/subtitle streams from inside these containers without any transcoding (loss of data/quality)...as long as the destination container type supports that stream's codec.
mkvmerge \
    --output output.mkv \
    input.mp4 \
    subtitle.srt

In this case, because we are taking all streams from the input files and mkvmerge doesn't do any transcoding, the command is much simpler.
If it was me with your use-case I would just go to mkv unless you are trying to build a file for a player that only supports mp4 and don't have any other option (ie get a different player).
References
https://en.wikibooks.org/wiki/FFMPEG_An_Intermediate_Guide/subtitle_options#Set_Subtitle_Codec


Adding voiceover without video recompression

Yes, it's possible. What you need to do is demux and remux. Check out free tools like VirtualDub and Any Video Converter to split the original into separate streams, add what you want using Audacity or similar, then re-multiplex them together using a tool like AviMux. The video can remain unchanged.


How to compare the illuminance of similar light fixtures in Lux given at different distances?

You could do some back of the envelope calculations, if they're both the same shape and the LEDs in them have similar lenses etc., the beam will be similar, so the falloff will be similar.
Given that the area illuminated at 1m is 4 times the area illuminated at 0.5m (area of a segment of a sphere is proportional to the radius squared, so twice the distance squared is 4 times the area), the intensity of the first is going to be roughly ¼ that of the second. Which figures, going by the model number: the first is probably meant to be "equivalent" (these figures are always rubbery) to a 260W incandescent light and the second to a 1000W light, so roughly 4 times as powerful.
You could also compare the wattage to see exactly how much power each one is.
In cases where they're not similar size and distribution (BTW the first panel is less than half of the area of the second, so in no way would I say they're similar in size), then you're comparing apples with oranges. Different lights do different jobs.
TBH With cheapo lights like that I'd actually be more concerned about how good the colour was.


How to do <=1 Hz timelapse photography with Canon 7D?

The problem isn't the remote timing, it's the rate at which data can be written to the SD or CF card.  The camera can shoot a bunch of images quickly in burst mode because it stores them in an internal buffer for a short while before it writes them to memory.  However, this pace of data acquisition is not sustainable for long periods of time because the buffer will fill up before it can offload to the card.  The best thing you can do is make sure you're using cards with the fastest write speed possible.  Shooting jpeg only might also help, depending on how quickly the camera converts RAW to jpeg.


How to mount microphone and recorder on the DSLR?

There are multiple answers.

The easiest and cheaper solution is to get a shoe extender.

The more professional way is to get an external recorder specifically designed for DSLR mounting. Look at the products of BeachTek and JuiceLink for examples.


ffmpeg intermediate transcode for 1920 x 1080 8-bit YUV 4:2:0 @ 25fps source

Are either DNxHD or DNxHR capable of outputing to 4:2:0?

No. Running ffmpeg -h encoder=dnxhd will list encoder properties, including
Supported pixel formats: yuv422p yuv422p10le yuv444p10le gbrp10le

Can DNxHD transcode my source? If yes, how should I ammend the above ffmpeg parameters?

The DNxHD encoder only supports a limited number of preset profiles. Each profile is specified of a frame size, interlacing mode, bitrate and pixel format (which also includes chroma sampling scheme).
FFmpeg will automatically convert the input to a matching pixel format, but the rest has to be manually set.
So, for a 1920x1080 8-bit YUV 4:2:0 @ 25fps source,
ffmpeg.exe  -i "input.mov" -c:v dnxhd -b:v 115M "input.mxf"

Try to encode with a non-matching to prompt an error message with the list of supported profiles.


Is there a way to improve quality for videos with snow/confetti/LCD in background?

Yes this feature exists, but it is not widely used yet.

Texas Instrument developped such solution, called SmartCodec, which looks to be implemented in a Samsung video surveillance system: Megapixel Camera This is a HW based solution, that is for market of video surveillance.

I think it would be implemented in future video codecs HEVC, adopted by many boradcaster, and it's called Region-of-Interest Based Rate Control Scheme
HEVC is already released, and in used today, but this feature really looks new. And it will take months~years for it to be implemented in the encoder on the production house, I guess. Apparently, it is something really new, since a paper about that has been accepted for presentation at the ICIP 2016, which took place in september.


How to import many .MOV files to Sony Vegas?

This is a known problem. Quicktime for Windows is 32-bit only, and that presents a memory ceiling for the QT handler/decoder. What's worked for me, including in a current project, where I'm working with hundreds of of 5D MkIII files, is to import in batches. Once done, I have no issues loading or working with the project even if many of those are used on the timeline. I should say that often I'm able to import many clips without needing to divide the import step into batches.

As suggested in the linked forum thread, try rolling back to QT 7.6.2 or Quicktime Alternative, and see if that provides a more permanent solution.


Crop HD (1920x1080) video ratio from the center in ffmpeg

Your command is doing fine, and ffprobe will show the resolution as 960x1080
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf57.83.100
  Duration: 00:10:45.14, start: 0.000000, bitrate: 1969 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 960x1080 [SAR 1:1 DAR 8:9], 1838 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
    Metadata:
      handler_name    : VideoHandler

My suggestion is to go through some of the examples from https://ffmpeg.org/ffmpeg-filters.html#Examples-52 to see if you have any expected result.
Good luck.


Exporting 360 video in a 360 video format (not plain video)

Yeah Spatial Media Metadata Injector destroys the video. I was somehow able to export a video using insta360 studio as an actual 360 video but have no clue how I did it.

It seems all anyone wants to do is make claims to all these types of features but no one wants to explain how they're doing anything. The information people are leaving is useless.

I was on the phone with insta360 today for about 40 minutes trying to have them explain to me what a keyframe is, what purpose it serves and why it's even in insta360 studio to begin with.


Yes, MPEG-2 video is stored as YCbCr, but video editing programs (like Cinelerra) convert the samples to RGB for processing during editing. That range is 16-235.
From Wikipedia on YCbCr

Analog YPbPr from analog R'G'B' is derived as follows:

To get a YUV output in the 16-235 range, the input RGB is also limited.


What is the optimal codec and encoding parameters to encode Video Podcast?

I would recommend the h264 codec as it produces reasonable quality at small size and it provides broad compatibility.

The open source encoder x264 is considered as the best one out there.
I can't recommend any command line parameters but there are several good programs that make use of the x264 encoder.
I like Vidcoder which is a fork of the popular Handbrake software.
You will see that even with the default settings you achieve a much smaller video size at comparable quality.


I see 2 things you are trying to achieve here:

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

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

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


Is it possible to track continue motion tracking on another point in After Effects CC?

When you put a track point to a feature, you can notice the white crosshair in the middle of the tracking marker. That is the tracking point. If your tracked feature is covered by something else or moves out of frame, you can re position your marker before that happens. Just before that moment:

Place your cursor over the marker, but not the crosshair.
Press ALT on your keyboard, your cursor arrow will turn white.
While ALT is pressed, hold your marker and move to a new feature. You can notice that the crosshair remains at it's initial position. When you place the marker, release ALT button.
Continue tracking, After Effects will keep your tracking point's crosshair in it's initial position, while tracking your new feature. So even your initial tracking point moves out of the frame or obscured by something else it will be OK.

But selection of the second feature is important. It must be on the same surface or plane as the first one. If your first point is on the wall, choosing the second point on the ground or another feature in the foreground, will cause a lot of problems, as there will be plenty of parallax motion (Foreground will move faster than background etc.)

Or if your footage is shot with a wide lens, features on the edge of the frame will have a different motion when compared to a feature in the middle of the frame, due to the lens distortion.

See the explained steps in a screencast video.


Multiple masks in adobe premiere and RAM

Sadly combining them wouldn't help that much. The problem is you need more memory. I have 64gb for AE and I still use all of it at times. I would say a base line is 16-32gb. I could easily use 128gb though.


Not sure, why this is happening, but I could reproduce this issue and get it fixed by using a "Magix AVC/AAC MP4" codec instead of the Sony codec.


You can use ffmpeg to display current localtime:

ffmpeg -i input -vf "drawtext=fontfile=/usr/share/fonts/TTF/Vera.ttf: text='%{localtime}': x=(w-tw)/2: y=h-(2*lh): fontcolor=white: box=1: boxcolor=0x00000000@1" image%03d.png

See Can ffmpeg extract images from a video with timestamps? for more examples.