CPU Selection for video encoding I have been perusing this page:
https://openbenchmarking.org/showdown/pts/ffmpeg

Something doesn't make sense to me, I am looking at the following CPU's:

Intel® Xeon® Processor E5-2650L v3 (30M Cache, 1.80 GHz)
Intel® Xeon® Processor E5-2690 v3 (30M Cache, 2.60 GHz)
Intel® Xeon® Processor E5-2640 v3 (20M Cache, 2.60 GHz)
Intel® Xeon® Processor E5-2670 v3 (30M Cache, 2.30 GHz)

According to the benchmarking, the ideal processor is the E5-2640 from that list. I don't see the correlation between the benchmark numbers and the CPU specs, Now the page didn't specify which version of that particular model, so I picked a pretty new one that is almost identical to the newest v4.

I would have assumed that when picking a CPU for video encoding I would be looking the either the:

Highest base frequency
Largest onboard cache
Fastest bus speed

Or some other common metric. What is your experience?

The DV encoder used in the cited test is useless for gauging modern CPUs.

I ran the test command with the referenced media on a 4-core i5 and the difference between -threads 4 and -threads 3 is 0.5% and with -threads 2 is 1%. I see a much larger variance when I use H.264 encoding.

Of course, the bigger flaw is that the command is resizing the video. FFmpeg's internal scaler isn't multi-threaded!


Adobe Software: Make low quality videos out of folder with videos I have a folder with 212 videos in 4k in it, I'd like to make kinda like proxy files out of them, low quality 360p.
It should end up in a seconde folder and still be h.264 so that it can easily be shared and opened everywhere.

Is there a way inside Adobe Creative Cloud to make that?

This feature is supported through Adobe Media Encoder (AME) which is basically the background rendering engine for a number of the cloud apps including Premiere and AE.

You need to set up watch folders. So long as AME is running, (I also believe you can have AME run as a background service now - but you may want to double check that) - and you have your preferences in AME correctly set up, any files placed into a watch folder will be processed based on attributes you specify - per watch folder. So you can have a folder where any files that you download or place there will be automatically trans-coded into XYZ format, only when system is idle, etc, then original file should be kept, or moved, or renamed.

AME also allows you to do a number of post processing on the files automatically, such as watermarking, basic image enhancements, etc.

Essentially you specify a watch this folder, then create a template to bake the files placed there.

Documentation for this is online at Adobe and countless tutorial videos exist on YouTube detailing basic and advanced setup solutions.


FFmpeg script to clean up and compress iPhone video recordings from university lectures I video record my university lectures using an iPhone 6 and then export them to OS X. The files can often become up to 4 GB/hour in size.

I'm looking to create or use a pre-existing solution that can do the following for my video files:

Amplify the audio
Normalize or level the audio
Audio click removal (optional)
Compress video to save disk space
Do the above by running a script or shell command (for batches of files if possible)

I'm assuming that FFmpeg can be helpful for running existing scripts, or creating a new one.

How should I go about to meet these objectives?

I have also looked at other alternatives like Handbrake but didn't find that it can do the audio adjustments adequately – let me know if I'm wrong.

This is what I have come up with so far. Feel free to improve this answer liberally, with the objective of cleaning up and encoding lecture notes, within a streamlined process.

The command is run in the working directory, e.g. cd /Users/me/Downloads, and will encode all .MOV files present.

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

The individual settings:

Video codec: libx265 (HEVC). This codec is unorthodox because it's still in development, but it's many times better than its predecessor in keeping file sizes low. VLC supports this codec for viewing the video.
Encoding speed vs. compression density: -preset veryslow. Converting videos with this preset takes very long time, but may reduce file size with around 20 % compared to the fastest setting. If you want quicker encoding, use ultrafast, fast, medium or slow.
Video quality: -crf 23. Quite good quality. Decreasing this number will increase quality but also logarithmically increase file size. This setting strikes an okay balance between file size and quality. 18 is visually lossless but takes up much space.
Volume gain: volume=25dB
High pass filter >200 Hz: highpass=f=200
EQ notch filter @ 50Hz±100Hz (this should be mitigated by the high pass filter already, but for some reason this seems to remove background noise: equalizer=f=50:width_type=h:width=100:g=-15
Audio codec: aac
Audio quality: -b:a 192k

Optional:

Lighten video curves: -vf "curves=preset=lighter"

Ideas for improvement:

A good way to gate audio to filter out background noise and keep only the talky bits.


Can't get audio and video speeds to play at original speeds When I import audio and video from different sources into a project, I can't get them to play at the corrects speeds.

For example, if I play the video in vlc player, it plays fine, if I play the audio file in vlc, it plays fine. But when I import the audio and video file into lightworks, either the video plays fine and the audio plays fast, or the video plays slow and the audio plays fine.

How do I get both the audio and video to play at the correct speeds at the same time?

Sometimes this will happen from a verity of reasons. Sometimes the clocks are different. A lot of time it comes down to manual re-syncing.
Pick 2 sync points for the Video and the same 2 points for the audio. Make sure they are as far away as possible. Now divide the duration in frames between the 2

V dur / A dur = ratio

Now you have the ratio you should speed up or slow down the sound (sound is more pliable). Good Luck!


avconv: What are the mpegvideo private options? I'm using avconv on LinuxMint 17.3 to convert video.

The avconv man page states for multiple options, that they are "Deprecated, use mpegvideo private options instead"

Can someone tell me what these private options are and where they are documented?

I noticed that the WinFF program uses -flags +cbp but I don't know what +cbp does or what the equivalent might be. Can anyone enlighten me or point me to more detailed documentation.

Thanks

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 }, \


How to implement apearing 3D text in video? First of all I like to mention I have some knowledge in After Effects, as I created "Dragonball Z" effects for fun few years back. I also have some basic knowledge in Photoshop to create 3D texts, visuals ect.

I am looking for a way to create a intro video for my Youtube channel, which will contain 3D text and the footage from Wrath of The Lich King intro cinematic where Lich King Arhtas stabs the ice with Frostmourne.

I was wondering if there is a tutorial on how to implement 3D Text so it appears from the crack in the ice and after that blurring the video except that text? If you guys can show me some tutorial on that it will be much helpfull.

Very easy to do. You can use a mask and vignette to make it appear faded or on the ice. With a layer over the 3D text to make it blend better with the layer it's on. To fade the background and not the text just apply a Gaussian blur to the video.


ffmpeg - map a video to a placeholder? (rectangle/square) I have a video that i want to map to a "virtual rectangle".
Meaning, i want to create a virtual rectangle by giving it one x,y point for the bottom left corner and one x,y point for the top right corner.

Given those 2 points would create a rectangle, i want to take that video and "map" it to that rectangle. (scale it too if necessary)

From what i know about the 'overlay' filter, you can use only one x,y point to set the position of the video.

But is there a way of doing it with 2 points like i explained?

Thanks!

You would use the template below,

ffmpeg -i base.mp4 -i overlay.mp4 -filter_complex "[1]scale=WxH[o];[0][o]overlay=x:y" out.mp4

So, the overlay video is scaled and then placed at (x,y) measured from top-left of base video and the opposite corner is at (x+W, y+H)


Can I replace a layer with another in Adobe After Effects? I made a logo in Photoshop. I imported it in After Effects where I animated it, I added effects, I duplicated it etc.
Unfortunately I realized that the logo wasn't ready, I needed to add something else, a final touch, which had to be done in the source ie. in Photoshop. So I did change it in Photoshop, I imported the new one in the After Effects project.
Now I spent about a good day's time doing all the effects etc on the previous logo. Is it possible that I can replace the old logo (the old layer) with the new layer such that I won't have to redo all the effects and animations etc. to the new layer all over again?
gee if this isn't possible I will break down.

Yes, this is possible. Simply right-click your logo in the Project-Panel and select "replace file", then select your new logo.


Do I need tripods etc. for filming? I'm going to make a movie now with a D7000 I'm going to buy. I want it to look as professional as possible, but I don't want to blow the budget. (I'm a 16 years old student..)

What equipment do I really need to make a normal movie with a few action scenes? Is it good enough with a monopod, or do I need a tripod? In that case, do you know a concrete product I can buy? Is a DIY Manfrotto Fig-Rig better than completely hand-held? My budget is around $200, but if it is like as important to spend a bit on this as a good camera, then of course I'll put some more money into it.

Do I need something like this to get smooth shots? http://viewitem.eim.ebay.no/NEW-MANFROTTO-701HDV-701-HDV-Pro-Fluid-Video-Head/280535333409/item

Thanks for your answer and time!

A fig rig would be an excellent choice for an action piece. If the fig is out of your budget range look at the Opteka X-Grip. Cheap ($30) and pretty flexible, especially if you mount it sideways instead of with the handle parallel to the lens barrel when the shot needs it.

Also if you have access to After Effects spend some time learning the stabilization and tracking capabilities. That will probably improve your shots, helps with rolling shutter issues too that you may experience on a DSLR.

Borrow a tripod. Lots of tripods sitting around in closets in this world.

Edit: Audio is the achilles heal of DSLR video. Make sure you take that into consideration. You can pick up some decent but cheap shotgun microphones that will plug into the D7000, that will help. Also consider grabbing an H4, or several H1s.


How to lock and scroll image, using smartphone green screen mockup? I've got this video, where the lady is scrolling an app. I could simply use chroma key, but the guy's hand is moving all the time and the app image layer wouldn't follow.

How can I do that, in addition to the scrolling effect?

Ps: any editing tool solution would work for me. Although Sony Vegas would be really cool.

You will need to:

track the motion of the screen, using whatever tracking tools you have at your disposal. A 3D track or a corner pin type track will both work, because it's a flat rectangular screen. The quality of the track is what will sell this shot.
key out the green screen, using whatever keyer you have. Looks like a good key, so you shouldn't have too many problems
create the animation of the screen scrolling. This is probably best to do manually using keyframes, perhaps with the original video as a guide layer if your software allows it. There is no point tracking the movement of the fingers, as the scrolling continues after you flick with your fingers on a phone screen, so it has to scroll independently.
composite the app screen animation behind the original layer, using the tracking data to fit it to the original screen's position, size and rotation. You might want to add additional layers to the composite: e.g. a subtle reflection layer would help sell it.


Black line in certain videos? Here are few screencaps from different sources:

Bleach 170:

Bleach 297, where 16:9 episode actually used 4:3 material in one reminiscence scene (they even animated the black bars) - poor source material?

Xena the Warrior Princess:

Finally a Youtube video:

If you look closely, each of these frames contains a thin black line near the bottom, or in the case of the Youtube video, near the top. The line spans about 60% of the video width. What is it and why is it there? Is it used for some kind of calibration?

The first anime pic is throwing me off, but it seems to be an artifact of how interlaced analog signals were structured and displayed.

  For analog NTSC there is a total of 525 scanning lines of which
  originally 483 lines were visible (241.5 visible lines + 21 lines of
  vertical blanking per field)

Update: this answer at the electronics site gives the full picture.


How to sync motion and music in After Effects There's a video of a man, drawing something.
There's a violin symphony music.

I want to sync the video, I mean the movements of hand with the symphony.

For example, I want the hand to move fast, when the music rate is fast, etc.

What I have to look for to achieve this?

Depends on how much time stretch is key to synchronize the shot.

In order to increase the speed of the whole layer use the Time Stretch feature (Right Click the Layer > Time > Time Stretch) Note: values below 100 increase the speed. Values above 110 often results in bad quality. To solve this, see motion calculation (3.)
To vary the speed of a layer, it's ok in most cases to use the standard Time Remapping feature (Right Click the Layer > Time > Enable Time Remapping) This makes it possible to keyframe the time/speed of your layer.
In some situations, especially for generating slow motion shots you need to calculate the motion in between the frames with optical flow technology like twixtor. You can also play with SlomoVideo as an open source alternative. For further information, see this article: http://www.fxguide.com/featured/art_of_optical_flow/

For audio preview workflow, see: How can I preview with audio in After Effects and be able to pause / resume the preview?


How to create a new stereo mix from one channel in Premiere pro cs5.5 I have a video with stereo audio, but one channel is completely silent. So the audio only plays on the left stereo. How is it possible to duplicate the left channel and create a new stereo mix for the same clip? Or alternatively force the sound in a mono audio track?

Hey try the audio effect Fill left or Fill right!
(I use a zoom h4n and have to constantly do that )
http://www.mediacollege.com/adobe/premiere/pro/audio/fill.html !

Happy editing!
(remember fireballs always make video better!)


Minimal subtitle leading/lagging difference Lets start with a theory. Lets say you create subtitles perfectly synchronized with an audio track. Yes, I dont care about hearing impaired people atm, so video track doesnt concern me right now. Then you start delaying audio or subtitles. At what point will the listener notice the leading/lagging?

My goal is to create a minimal value on a scale used to time subtitles. So the user cant time subtitles beyond the point where it no longer has a meaning.

There must be a ton of research on this subject because all we hear is lagging behind what we see.

I just cant find the right keywords to google it.

There are lots of tricks to proper subtitling, but none of them involve delaying them. The reason you see large lags is because of "live" captioning -- they're appearing as fast as some trained operator can hear and enter them, which for the very best of them is still a few seconds.

For post-event titling, you want the text to appear at or slightly before the spoken word, but consistent with scene changes -- when a scene changes behind a title, the viewer tends to start reading it again, which is confusing.


After Effects music equalizer freeze I have been using After Effects and I own a YouTube channel which is like "Trap nation". One problem though, sometimes after a certain time period, the animation freezes. If you see this video

The equalizer animation freezes after one minute.

Thanks guys for helping me with this problem!

Check whether the equalizer effect you made runs through to the end of the song you are using. If that is not the case, just stretch the animation to the end of the song and you should be good to go.

If that does not work, create a new project or sequence and import your current files to the new project.


H.264 video packet duration missing I have H.264 files that, when I run FFprobe on them, like this:

ffprobe -i h264_file.ts -show_packets -select_streams v

...it shows that each video packet has no values for duration, and no value for duration_time, like this:

...
[PACKET]
codec_type=video
stream_index=0
pts=8098077717
pts_time=89978.641300
dts=8098077717
dts_time=89978.641300
**duration=N/A
duration_time=N/A
convergence_duration=N/A
convergence_duration_time=N/A**
size=2354
pos=14633920
flags=_
[/PACKET]
...

My question is, other than re-encoding the file, and assuming I know the source to be 60 fps, is there a way to correct this video packet duration?

I know I can do it by re-encoding - I have done so successfully.  But I am wondering if there is an easier and faster way of doing it.

I don't have a sample of your file so I don't know if this fixes it or not, but have you tried a simple remux?

ffmpeg -y -i h264_file.ts -c copy remuxed.ts

This is also basically the same thing, but helpful if you want video and audio in separate files before you remux:

ffmpeg -y -i h264_file.ts -map 0:0 -c:v copy -muxdelay 0 video.ts -map 0:1 -c:a copy -muxdelay 0 audio.ts
ffmpeg -y -copyts -i video.ts -i audio.ts -c copy remuxed.ts

You could also try reencoding audio but copying video.  Encoding audio but copying video will be fast and usually concerns about reencoding loss is a lot less significant with audio.  (Use audio synchronization, see -async in documentation.)


Colour grading advice As a hobby project, I am looking into how difficult it would be to regrade the Buffy HD releases to match the colour grading of the original. I haven't done much colour correction in the past at all, so I have very little experience to draw on. I'm running into a curious situation, where different parts of the same frame seem to be graded differently. Here's a shot of Buffy wearing a white shirt, and in each of these samples, the HD source with my filters is on the left and the right is the unaltered UK DVD release:

I am fiddling with White Balance, Curves and Lift/Balance/Gain in kdenlive, and I'm finding I can make the face match, or the shirt match, but not both at the same time. The shirt wants to be more blue while the face wants to be more green/red. Is there some sort of nonlinear filter I can use to get this effect, or, I dunno, was the original done by actually applying different functions to different parts of each frame?

First off, I recommend you use davinci resolve for grading (it's also free).
There are two options that you have, you could either draw a mask on the part you want to affect, track that mask to follow the motion and apply the grade only inside of that mask.
Second would be to pick the colour of the area you want to change and only alter this spectrum, which can lead to artifacts, especially when not working with original files tho.


AE Expressions question - why isn't my code working? I can't figure out why I'm getting the error... Any ideas?! I tried adding "var" at the beginning of the first line, but that didn't work. Not sure what to try now! Help anyone?

Below is my code. The error reads: "object of type Layer found where a number, array or property is needed."

timeOffset=thisComp.layer("Mograph Control").effect("timeOffset(frames)")("Slider")/24;
myIndex=thisComp.layer("DotMaster")-index;

seedRandom=(index, timeless=false);
randomTimeAmount=thisComp.layer("Mograph Control").effect("randomTime(frames)")("Slider")/24;
randomActualAmount=random(-randomTimeAmount, randomTimeAmount);

baseTime+(myIndex*timeOffset)+randomActualAmount;

Typo on line 2. It should be thisComp.layer("DotMaster").index not -index.

Also, while it's valid, the first parameter to the random function on second last line -randomTimeAmount makes me nervous. I'd recommend changing it to 0-randomTimeAmount. It's more explicit, and less prone to accidental typos.


How can I determine the publishing point for streaming an HTTP stream to Adobe Media Server 5? I would like to stream a HTTP stream from VLC direct to Adobe Media Server 5, however I am unsure of the URL I should stream to. How can I determine the URL of the publishing point?

From the documentation, it appears that you need to use an rtmp capable encoder to send the stream to Adobe Media Server and that Adobe Media Server then shares it out as an HTTP stream based on the configuration of the publishing point.

It appears that

rtmp://ams-ip-or-dns/livepkgr/livestream?adbe-live-event=liveEventName

is the URL to stream to for a constant bit rate, but there are other options if you are using VBR or multi-rate streams.  You can get more details under the URLs for publishing and playing live streams over HTTP section of the linked documentation.


Exporting video layers for Premiere-DaVinci workflow I am editing in Premiere, and sending an XML to a colourist working in DaVinci Resolve. We chose to colour after picture lock in order to reduce the colourist's workload. All of the tutorials I have seen recommend flattening the timeline into one video layer (eg. There and Back Again - Frame.io). However, I have several sections where the layers are neccesary, and their timing is important.  This answer gives a brief overview of a possible workflow, but doesn't address the layers issue.
What are the best settings or workflow to make sure that the layers can be exported for DaVinci and maintain their place in the timeline?

This video has a solution using Project Manager to export all clips individually, so that layers can be exported separately.
File > Project manager - Make sure your working sequence is selected.
Under Resulting Project> Consolidate and Transcode,  source: Individual Clips
Adjust the number of handles you want (extra frames on either side of the clip)
Choose your destination path, then OK to transcode.


Video editor suggestion I'm new here.
I'm looking for a easy-to-use video editor, like windows movie maker but with a couple of more tools like: adding videos over a video and adding two or more lines of text simultaneously appearing with different effects. I'm using Windows 7 and the software must be free. Thanks for your suggestions!

Start here: 10 free video editors mirror.

Keep in mind that free video editors are very simple and do not have many effects.
I recommend you to buy inexpensive video editing software, like Sony Movie Studio or Cyberlink PowerDirector. Take a look at this list of consumer video editors mirror.


What options are there for hardware encoding/decoding? For the last 24 hours I've been waiting for some files from a Sony camera (about 60Gb) to convert to MP4. I'm thinking there must be some other way to speed this up. I'd much rather go for a purpose-built piece of hardware rather than trust CUDA or ATI as these options have failed miserably (I have both ATI and NVIDIA cards and it seems the software simply ignores them).

So, what are my options for hardware transcoding?

I'm sure there are dedicated MP4 encoders out there, maybe someone else has better info.

But I've had good results using AVC Ultimate, which takes advantage of CUDA on an NVIDIA card to speed up MP4 processing, to about double the rate I get without it. There's a free version, but I can't remember if the CUDA option is available in that -- I've used the paid version for quite a while.


Cheap Method for Audio/video transmission in a building I would like to know how I can handle video transmission in the a 2 story building, from the upper floor to the down floor?
There 2 possible cases:
-unidirectional transmission: the transmission will be done from the upper floor to the down floor;
-bidirectional transmission: the transmission will be done from the upper floor to the down floor, and also from the down floor to the upper floor.

I have a very low budget for this so need cheap options.

There are two options, neither of which is particular expensive.  You can either use a component cable with a distribution amplifier or if you prefer a digital signal, there are wireless HDMI transmitters that will also work well.

A distribution amplifier and a repeater are essentially the same thing, just slightly different purposes. A distribution amplifier boosts the power of an analog signal to account for the attenuation when sending it over one or more lines or a long line. A repeater is similar, it reads the signal in on one side and outputs it again on the other. The main difference is that the repeater will reduce line noise since it is interpreting the signal rather than just boosting it.

You could try doing a wired HDMI, but it would likely be quite pricy.
HDMI is a digital signal that is designed in such a way that it doesn't handle long distances well on the wire. Currently, the effective reliable limit for an HDMI cable is about 10 meters. To make a 50 meter run reliable, you would need 4 repeaters and 5 10 meter rated HDMI cables. This is going to be far, far more expensive than a wireless HDMI unit that is rated for even twice the distance.

You could try just using a 50 meter cable and hope that your hardware on each side is powerful enough to make sense of the data on the line, but I wouldn't expect it to be a reliable connection if you use a physical HDMI wire without at least 2 or 3 repeaters minimum.

So for reliable solutions, you can probably do the analog wire & distribution amplifier solution for about $150 or the wireless for about $250 to 350.  Putting a DA on both sides of the wire solution would allow for you to choose which way you wanted to send signal by plugging in the DA on that side.


How to get FFMPEG to join non-sequential image files? (skip by 3s) I have a bunch of images, that follow this pattern.

0001.png
0004.png
0007.png
0010.png
0013.png
0016.png
0019.png
...

They're in the correct order, but FFMPEG ignores anything after the first file, because it can't find a 0002.png.  How can I get it to join these files?

I tried

ffmpeg -i %04d.png out.avi

Besides the workaround in my comment, you should be able to use this syntax from the ffmpeg documentation:

ffmpeg -f image2 -pattern_type glob -i '*.png' out.avi

The quotes are important, you need ffmpeg to see the *, not have the shell expand it.


Display overlapping subtitles I used YouTube to autogenerate subtitles for a video. The srt file looks something like this:

0:00:00.060,0:00:07.080
first caption

0:00:03.240,0:00:09.599
second caption

0:00:07.080,0:00:13.019
third caption

As you can see, the captions overlap in time. The first caption is present for seconds 0-7, while the second caption is present for seconds 3-9. The result in YouTube is that:

The first caption appears first and is the first line on the screen.
Then on second 3 the second caption appears as the second line.
On second 7 the first caption disappears and the second caption becomes the first line. At the same time, third caption appears as the second line.

However, when I use the srt in DaVinci Resolve, only a single line appears at a time. So:

The first caption stays there until second 7.
The second caption appears only between seconds 7 and 9.
The third caption appears after second 9.

Is there a way to display such multiline subtitles with DaVinci Resolve?

If not, how do I fix it so it displays properly with one caption at a time?

Given that I couldn't find a satisfying solution, I wrote a Ruby script for merging such overlapping captions.
Usage:
ruby ./merge_overlapping_srt_captions.rb _input_file_ _output_file_


NVENC_HEVC Encoding making my files larger I got a new Nvidia GPU to speed up my video encoding. I am working with x264 files to x265 and wanted to go faster. Using the library libx265 I am getting about 85fps when working on a file that is 720p, but if I use the nvenc_hevc I get around 600-700fps
My input file is 269M and when I use the nvenc_hevc it grows to 394M. Doing the exact same command with libx265 gives me a file size of only 68M. Obviously I would like to keep the low file size, but take advantage of the GPU to process it 15X faster.
Anyone else have any experience with this video codec? My understanding is that the difference between libx265 and nvenc_hvec is not the algorithm that is used to do the compression, but that it utilizes the GPU to accelerate processing. With that understanding the resulting file sizes would be identical regardless of which I used, just the nvenc_hvec would be faster. Is that a faulty assumption?
My command is: ffmpeg -i infile.avi -c:v nvenc_hevc -rc vbr_2pass -rc-lookahead 20 -gpu any out7.mp4
vs
ffmpeg -i infile.avi -c:v libx265 -rc vbr_2pass -rc-lookahead 20 -gpu any out7.mp4
When encoding I seem to only be using a small percentage of the GPU despite the huge performance increase:
nvidia-smi -l
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|    0     21954    C   ffmpeg                                          93MiB |
+-----------------------------------------------------------------------------+
Tue Nov  8 20:41:45 2016
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 367.48                 Driver Version: 367.48                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 960     Off  | 0000:42:00.0     Off |                  N/A |
|  1%   63C    P2    37W / 160W |     95MiB /  4037MiB |     11%      Default |
+-------------------------------+----------------------+----------------------+

Just because you can get a hamburger at different restaurants doesn't mean they'll taste and look the same.

Apples and oranges

x265 and NVENC are two different encoder implementations that can output the same format, HEVC. What settings, options, and algorithms they use is up to the authors as long as the output conforms to the specs.

Choose the right tool for the job

These encoders are generally for different use cases. x265 may be slower, but it provides more quality per bit. NVENC is more suitable when speed is more important than quality or encoding efficiency, or when the CPU is not available or not up to the task, such as on a mobile platform where using the CPU would possibly consume more battery power and take a long time.

Option mixup

Also, you're mixing up options: -rc vbr_2pass -rc-lookahead 20 -gpu any are private options for nvenc_hevc, but you attempted to apply them to libx265, so they were ignored. There are two types of options: general and private. The private options are specific to each individual encoder. You can list private options such as with ffmpeg -h encoder=libx265.

You'll have to experiment with the encoding presets (see -preset option for both encoders) and rate control methods to get an output that is acceptable for you.

Waste of time?

Lastly, unless your input H.264 files were encoded very inefficiently (or are lossless which is doubtful), or if storage space is of utmost importance, then re-encoding from H.264 to H.265/HEVC is a waste of time and effort.


Setting points and doing a quick "snip", dynamically playing the video I need to cut out "best moments" from 1hour videos.(up to 6 moments per video)
What software is able to set in/out marks and save marked periods with keyboard shortcuts while watching the main video?
I'm thinking to make a bash script where I type in:

"02.22 04.44 clipName"

then it will execute a command:

ffmpeg -ss 00.02.22 -to 00.04.44 -i longVideo.mp4 -c copy
clipName.mp4

The exact software I was looking for
https://mifi.github.io/lossless-cut
Please donate to the author if you can and will use it, his soft saved my hobby gaming youtube channel and lots of free time)


ffmpeg tile command: ordering frames top to bottom rather than left to right By default, the tile command builds the output one row at a time, from left to right.
I would like instead for my output to be built in columns, top to bottom.

That is, for a 4x4 tiling, the tile command by default arranges the frames like so:

    1  2  3  4
    5  6  7  8
    8  10 11 12
    13 14 15 16

Whereas I would like for them to be arranged like so:

    1  5  9  13
    2  6  10 14
    3  7  11 15
    4  8  12 16

What is the easiest way to make this happen?

You can't change the behaviour of the tile filter, but you can adjust your inputs before and after to get the desired result.

ffmpeg -i input -vf hflip,transpose=cclock,tile=4x4,transpose=clock,hflip out.png

Note that the layout supplied to tile is transposed, so if you want the final result to be 6x4, tile should be given 4x6.


Maximizing FPS of ffmpeg encoding I am trying to figure out the sweet spot of maximizing FPS of encoding videos into h264/h265. I will be running some videos through Georges Vid.Stab library (https://github.com/georgmartius/vid.stab) to stabilize things like drone of GoPro footage, and others just re-encoding to h265 to reduce filesize / bandwidth used.

I stumbled across the DVE (https://github.com/Sonic-Y3k/dve) project, which is nice except it won't work with stabilizing videos as the process will divide up the original video into many subsets and ask multiple computers to encode them. While they would do the job, when the videos are stitched back together they lose the advantage of the stabilization at the stitching points as they don't have the info needed to say where the start frame "should" be compared to the other servers calculations.

I have also looked at the NVidia Grid, Intel Phi as coprocessors, which would be an option, but I haven't seen anywhere that they are actually supported by ffmpeg at this time.

A GeForce GTX 980 with Maxwell V2 seems like a good option, but I haven't seen any numbers that show the encoding of a file with the GPU accelerator vs without, nor do I know if that is a "good" card or if it is overpriced for what I need, or not enough.

I am currently running a Dell R720xd with 160GB RAM (1333MHz), dual Xeon E5-2690 processors on a RAID 1 with 20TB of storage. I have room for 2 full height / length PCI-E cards, and some half height as well.

I don't mind spending up around $1000 provided the benefits are real.

There is a special NVIDIA API that allows you to encode to h264/h265 called NVENC. It's now integrated into ffmpeg so using it is quite easy.

But before buying an NVIDIA card you should do/know the following:

Check the NVENC hardware capabilities table from the NVIDIA VIDEO CODEC SDK APPLICATION NOTE - ENCODER cause h265 support is limited in Maxwell V2 card you've mentioned. You can also find average encoding speed (fps) there.
There is an artificial limit of two for parallel encoding processes for GeForce cards (check the previous link for more details). If you want more (actually around 30 simulanious encoding streams) you should buy Quadro or, according to this beautiful answer, one can hack GeForce (hardware in fact is the same as in Quadro) which is, of course, illegal.
With any hardware encoder you'll never get the same quality/size as you can get from x264.
Also there is Intel QuickSync hardware encoder integrated in some of Intel's processors (not in your Xeon unfortunately) which I know nothing about, so you have to research this part yourself.


How to change active camera in after effects ( or render a different camera ) I added a camera to my comp, however, when I render it uses the active camera, and not camera1. How do I Either make camera1 my active camera, or make it so that I can render out camera1

Just move the camera to the top of the composition. The 1st camera is the one Ae will render.


Physics and Math animated video I would like to start and create math and physics animated video. Do you guys have any suggestions on the software to use? I have a Wacom tablet to draw but I am not sure I want to draw myself or instead to somehow use tools that do stuff like drawing graphs, equations etc..

So any suggestions and ideas will be precious.

P.S. It would be nice to have something that includes the latex features

P.P.S. Some introductory tutorial would be also useful

GeoGebra Math Apps is an awesome option to do 2-D and 3-D static pictures and animations.

You may do it on-line, or download individual applications into your PC or tablet / smartphone.

It partially supports LaTeX and is for free.


What to do first: effects or montage? I have to make a five-minute video for a school project. The video includes a few interviews where I want to have their name and job description slide in, and blur the background to prevent distractions. I was planning to do these edits in AE and make a montage of the interviews in Premiere Pro. So in what order do you recommend to do these activities? Both options have their pros and cons:

If I montage it first, AE has to render the whole video again, and I suppose that's not necessary for the parts where I'm not going to use masks and stuff.
If I edit it first, I'm probably going to apply masks at fragments that I'm not going to use, that's also quite time-consuming.

So which method do you recommend?

Probably the best way would be to first edit your video completely in Premiere Pro and then use the dynamic-link feature. If you do it the other way round, you won't know exactly what footage will be used and on which clips to apply the effects. If you've already edited your clips and put them into a timeline you know how your final film will look and you're able to integrate the effects much better into your film.

For the dynamic-link workflow, create a new timeline in Premiere Pro and do all of your editing (what you called montaging).
After you've done with your final edit, you can bring the clips into After Effects to do the effects. Right-click on the clip you want to edit and select "replace with After Effects composition". Then this single clip will be automatically opened in After Effects and you can apply your effects. The clip in your Premiere timeline will be automatically replaced with the AE composition and you still are able to change your edit later and change stuff in your timeline. Then after you've done all the effects you need render the Premiere Pro timeline and you have your finished film.


How do I hang a kino flo from the ceiling? I have a four-foot single bank kino fixture that I need to mount on the ceiling of our media lab.  It needs to be angled precisely because it's for lighting a green screen (currently, it's mounted on a low stand on the floor, but I'm trying to get it out of the way).

The ceiling is drop tile, hanging 20" from the subfloor above.  Ideally, I'd like to fasten the light very securely to the subfloor via some type of hanger.  Telescoping hangers sound like a good way to get through the drop ceiling, but all the ones I've found are designed to clamp to a lighting truss, which we don't have.  I've seen drop ceiling scissor clips, but they don't look sturdy enough for a light of this size.  So far, the best thing I can come up with is an 18" wall stud to the lolipops we already use, but I don't know if it's safe or wise to use either of these upside-down.

I would appreciate any insight from more experienced grips, links to more information, or ideas about better forums to ask.  Thank you very much.

I'd probably try the lollipop, just be sure to wire it to safeties (safety cables) anchored directly to the subfloor as well.  This will prevent it from falling in the event the lollipop fails.

I'd probably do some weight tests of the mount before putting it up as well to make sure it is strong enough to hold it in position well.  There is certainly no reason such a mount couldn't be strong enough, I just am not familiar with that particular one.


After Effects melting film strip in the old projector I want to make the effect of a melting film strip in the old projector. Please tell me how this can be done with After Effects? I have all the necessary footages, but after blending it does not look realistic. I want the film strip  to start melting from below, and then the fire gradually destroyed the frame and burst out.

I would try using a displacement map. You can use a solid with turbulent noise on it and use it as your map, then animate the evolution, contrast and brightness so it displaces the film accordingly. If your burn is a separate layer, you can also use this as the matte for the solid with turbulent-noise in it with the effect "set matte".

Also, you might want to try to using a similar turbulent noise layer as a matte for the whole comp, meaning that the spreading bubbles from the noise (you can spread it out by pulling up a mask and keyframing the mask expansion) effectively get shuffled into your alpha-layer. If you then duplicate all this, move it one layer below, shift it to the right in the timeline (so the lower layer is about 10 frames later than the upper) and then drastically increase the contrast and lower the brightness, you will achieve some dark edges to the burnt parts.


After Effects - Keystroke to move focus to the Project Panel Is there a keystroke / keyboard shortcut to move focus to the Project Panel?
I know CMD+0 toggles Project Panel visibility, but is there a key that when pressed can be followed by UP/DOWN arrows to keyboard navigate the contents of the Project Panel.
Many thanks

You can search for keyboard shortcuts by going to edit–>keyboard shortcuts. Searching for the project panel there only reveals the shortcut you have already mentioned. I guess that you're out of luck.


What is the file size difference between 8 bit and 10 bit raw video? How much color information does a 8 bit pixel need compared to an 10 bit pixel? What is the difference. As an example how much file size would an single 640x480 frame take if had 10 bit color instead of an 8 bit colour

Instead of 8 bits per every channel and per every pixel you need 10 bits, which is 25 % increase of the raw footage.
Since the size of 8-bit raw footage is as such huge enough, 25 % of it is high enough price, isn't it?


Using water as green screen so I had this idea but inorder to do it, I need to have water as a green screen. (Because I wanted to make the image move like water). So I was thinking of using dye to color the water and key that color out in premiere pro but its not working that well.
Is there any alternative to this. Or  even an effect in premiere or after effect that let's you move images like the flow of water?

Take a look at using noise turbulence to displace the image. You can do this in after effects. There are lots of good tutorials on it. I recommend this one:

Maybe add some images so we can see what you have and what you’re going for.


Resolving timecode errors when capturing in FCP from MiniDV tape deck I'm having an issue capturing video on our Final Cut Pro (version 6.0.6) edit system when pulling in video from our MiniDV tape deck (via Firewire, linked via an Ethernet "extender"). We seem to get a few different timecode errors. We had normally captured video using Log and Capture, setting in and out points and then clicking Capture Clip, but a few weeks back that resulted in getting an error (I believe that there was not sufficient pre/post-roll space, even though there surely was) and the tape being reset to about 00:02:00 (2 minutes) in the deck, regardless of set positions.

Our workaround to this situation was to revert to "Capture Now" from the Log and Capture window. We line up near our starting point, click Play and then hit Capture Now. This has seemed to worked decently (other than you have to monitor to the clip to see when it's over and hit <Escape> to back out), but it does, nearly all the time display this error message:

This hasn't normally caused much in the way of issues (all of our videos are pretty much a single weather forecast clip with a pre-recorded open and close that we put together and then render as a final video), though I have at least one report of a clip "jumping" at some point that might be related.

Also, we must hit play before hitting Capture Now or else we get the following screen, which never results in anything productive:

It certainly appears that there's some sort of timecode errors going on somewhere, but I have no idea how to go about fixing these. In case it's necessary, the tape deck is a Panasonic AG-DV2000P that we purchased earlier this year. Any thoughts on a potential solution to our timecode woes?

Go into your capture settings and first try non VTR controllable device and if that does not work, there is a check box I believe for warn if there is dropped frames uncheck that, there may be another for stop capture if there is dropped frames, uncheck this as well


ffmpeg: How to avoid "start: 0.033333" when extraction audio from mp4 When extracting audio and video separately from a mp4 and recombining again

ffmpeg -accurate_seek -ss 30 -t 10 -i input.mp4 -vn output-audio.mp4
ffmpeg -accurate_seek -ss 30 -t 10 -i input.mp4 -an output-video.mp4
ffmpeg -i output-audio.mp4 -i output-video.mp4 output-combine.mp4

the three mp4-s have different length according to ffprobe:

ffprobe output-video.mp4
Duration: 00:00:10.00, start: 0.000000, ...
ffprobe output-audio.mp4
Duration: 00:00:10.03, start: 0.033333, ...
ffprobe output-combine.mp4
Duration: 00:00:10.08, start: 0.033333, ...

when combining audio and video with -shortest

ffmpeg -i output-audio.mp4 -i output-video.mp4 test-combine.mp4

the length is

ffprobe output-combine.mp4
Duration: 00:00:10.04, start: 0.033333, ...

How can the start-offset (0.033333) be avoided so that all parts have the same length and the original part can be restored by combining audio and video?

Correction: instead of

ffmpeg -i output-audio.mp4 -i output-video.mp4 test-combine.mp4

it should be

ffmpeg -i output-audio.mp4 -i output-video.mp4 -shortest output-combine.mp4

Kind of answer:

ffmpeg -i output-video.mp4 -itsoffset 0.033333 -t 9.966666 -i output-audio.mp4  output-combine.mp4

seems to do the job, although the result differs in file-size slightly from an direct extraction (direct is bigger than combine) done with

ffmpeg -accurate_seek -ss 30 -t 10 -i input.mp4 output-direct.mp4


Using tablet/smartphone as external dslr monitor I know there are apps like DslrDashboard and more but I would like to just get a real time monitor for my Nikon D5100. How is that possible?`
Of course connected wiyh a Hdmi-cable.

You can't do that. There is no tablet on the market (right now) that offers an HDMI input or any other physical display input. Your only option would be to stream compressed video over the USB (or Lightning on iPads) connection or Wifi to an app that displays that stream.


Make a video look like it was taken from further away I have a telephone video recording I would like to edit to make it appear it was taken from further away than it was?

When you shoot from further away you use a "longer" lens, in other words a lens with a longer focal length. This has a few effects, that you'll have to fake to make it look real.

First, the perspective tends to get flattened with long lenses. You've probably seen this in the classic cinema trope of a long shot of a crowd walking along a footpath, where everyone seems to be about to step on the heels of the person in front. This is because the angle of view is very shallow, so someone in the foreground is not going to be much bigger than someone in the background. Conversely a wide angle shot has exaggerated perspective. See just about any Public Enemy video where Chuck D and Flavour Flav pop their heads into the camera and get massively bigger than the people in the background, just by moving a few feet.

This perspective  compression is going to be very difficult to fake after the fact, unless you're really good at rotoscoping and compositing.

If you look at the long lens shot you'll also see that there's often a pretty shallow depth of field. This is often used by film makers, like Scorsese in this clip from Taxi Driver to highlight the central character, by racking the focus to follow them.

Now a wide angle lens and a phone lens (for different reasons) have very deep depth of field. So you'll have to selectively blur the foreground and background. However if you do this without matching the geometry of a telephoto lens (the compressed perspective discussed earlier) it's going to look like it's actually teeny-tiny, because it will look like another kind of lens with a shallow depth of field, a macro lens.

Another thing that telephoto lenses do is magnify any camera movement, where small movements are magnified by the narrow field of view. You could fake this by reframing, using a wiggle expression to drive the movement, however it might not necessarily achieve the look you want: If you're shooting telephoto you're unlikely to hand-hold the camera because it would look awful, so you'd lock it down on a tripod - see the shutterstock and Scorsese examples.

So depending on what the subject of your video is, this could be quite a challenge. Of course if your phone has a 4K sensor, you could actually make a telephoto shot out of a wide by just cropping. Of course this reduces your resolution, so it will look pretty ugly on most phones, and obviously you have to compose the shot with all the action in the center.


Why use different camera angles? During interviews, TV shows and movies, there are several camera angles they switch between. Sometimes it is direct, or indirect (like a side view). How do they decide what angles to change to, and why do they do this?

Different angles are used for many reasons. Wide and/or long shots are used to establish the setting where the video is being shot.  Medium shots are used to show the relationship between people and/or objects.  Close-ups are used to see the expression on people's faces, or details like hand movements or manual operations (using a wrench or a food processor, etc.)

In interview situations, it is a cliche that you need a medium close-up on the subject. And if the interviewer is on-camera, then a similar shot of the interviewer is used so that you can see one or the other more or less full-face without the camera whipping back and forth and giving many viewers motion sickness.

Sometimes we will use the camera shot of the subject while the interviewer is speaking just to see the subject's reaction to the question or statement, etc. Or, conversely, a shot of the interviewer while the subject is speaking. This is called a "reaction shot".  And similar to occasional shots of the audience to give the viewer more of a sense of being there with the live audience.  And to see their reaction. Especially applause, laughter, surprise, etc.


Is one able to "override" the terms of the Youtube Standard Licence with a slightly stricter Creative Commons than is allowed by the interface? I'm creating my first YouTube video and am a bit disappointed with the licensing options. Ideally, I would want to use a CC BY-NC license because I don't really want others profiting off of my work, but that is not an option in the interface. If I select the standard license, but put something like "Licensed under CC BY-NC, despite what the interface says" in the video, is that able to override the standard license? If not, is there any other way to license my video how I want to?

Edit: Just for the sake of clarity, I mean selecting the Youtube Standard License for my video, NOT the default provided CC license.

Don't do it

As @Mulvya mentioned, it is not a good idea to attempt to 'overwrite' the CC licence set in the video settings by putting a disclaimer in your video or video description. Apart from the legal implications and ambiguity, there's another problem: You're only changing the human-readable layer of the licence, while the machine-readable layer stays the same (an explanation on the three layers of the CC licences can be found here). What that means is that even though a human watching your video will be able to understand your intent to apply a more restrictive licence, a machine (e.g. an automated web crawler) will not. So your video will still show up in the search results when somebody searches for content licenced under the CC-BY licence. So by setting your video to CC-BY and disputing that claim in your video or video description, you are creating ambiguity for the user. I also doubt a disclaimer that the licence set by you in the YouTute interface does not apply would hold up in court, but IANAL.

Alternative

Hosting your video on YouTube with the intent to share it for others to adapt, remix and reuse is not a good idea in the first place. The stark compression applied by YouTube will significantly lower the quality of your video. The quality loss will only increase as others download your video, import it into their own projects, reencode it again and upload it to YouTube, where it's reencoded once more. On top of that, YouTube doesn't even offer a convenient way to download user-uploaded videos (though you can use them in YouTube's own video editor, but hardly anyone uses that anyway ...). For more information on YouTube's video compression, read my answers here and here.

Instead, I suggest you upload a high-quality version of your video to a dedicated file hosting service and put your licence terms there. You can also bundle your video file with a text-file containing a description of your licence terms and a link to the online licence. This eliminates all ambiguity and allows everyone to use your video under clearly-defined terms.

If you do this, put a link to the downloadable version of your video in your video description. Also, make sure to select the YouTube Standard Licence for this video. This allows users access for only private, non-commercial viewing purposes (see YouTube terms section 6). This way, you can make sure there's no ambiguity regarding your licence terms. As a sideeffect, this will point people towards the high-quality version, meaning nobody will use a low-quality version ripped from YouTube, in case you care about that.


ffplay - Is there a way to display a video and spectrogram in the same output? I'm trying to analyze a spectrogram while simultaneously checking the video, without having to switch between them.  Something like this, but with the video combined in the same output:

The idea is to be able to scrub through both video and the spectrogram so that they're synced.  Most editing software only lets me see the waveforms.  The command I used for that is as follows:

ffplay -f lavfi 'amovie=/Users/hdl/Desktop/HDLS3K.mp4, asplit [a][out1];
[a] showspectrum=size=1280x512:mode=separate:slide=scroll [out0]'

Use

ffplay -f lavfi 'amovie=/Users/hdl/Desktop/HDLS3K.mp4:s=dv+da[v][a];[a]asplit[asp][out1];
   [asp]showspectrum=size=1280x512:mode=separate:slide=scroll[spect];
   [v]scale=640:-1[v];[v][spect]vstack[out0]'

amovie usually selects only one (audio) stream. dv+da gets it to extract the best video and the best audio stream. The video output is scaled so that the vstack works.


How to post-process an image to turn trees blue and a face yellow? I'm wondering what effect makes the woods so blue and the skin so yellow.
I think it's quite a common and trendy effect.

If somebody knows what is there changed, it would be nice to tell me :)
Luckily I got a photo without the effect and an edited one.

There are multiple things going on between the before and after image.  The first aspect is a color space conversion.  The original image is recorded in a "log" color space.

A log, or logarithmic, color space is designed to capture more detail in the shadows and bright areas of an image allowing for the image to be manipulated more easily in post production.  While RAW files can be used in digital still photography, the size is fairly limiting for video usage outside of very high end setups (and even then it is costly due to the tremendous data rates).  To provide a mix of flexibility between cost and post production adjustment, log color spaces sacrifice data about the midtones of an image to be able to capture more detail in the areas of contrast.  This gives much greater flexibility in adjusting the color and exposure of an image in post without needing pure raw data, however it makes the images take on a decidedly flat appearance as it is not a color space designed to emulate human vision, but rather to capture information about the image that can be used to produce an image in a linear color space that will look more natural to the eye.

The second thing being done is a color grade pass.  Color grading is the process by which a colorist adjusts the color of a video and gets a consistent look and feel between clips and to set the look of the overall video.  A variety of tools can be used, including color balance adjustments such as RGB curves which will impact the response of different colors between various different portions of the image (based on luminosity or brightness).  Hue adjustment tools, which will adjust the hue (or color) of different colors within the image, or LUTs (look up tables) which provide a fixed set of color replacements that can be applied to an image to produce a new set of color values given a set of colors taken in.

My best guess at this particular before and after is that the log color was balanced and adjusted to a normal linear color space and then a filmic LUT was applied that has a bluish tint to the greens.  It may have been an out of the box LUT from a vendor or a custom designed LUT depending on the colorist.  It is certainly attempting to emulate a more filmic look though to emulate the color response of film more so than typical video.


How to use FFmpeg Command for Reverse Video? i am use to FFmpeg library in android for reverse video. I can dump images from video but how to reverse all images and make video. See this link that from i am use to library in my gradle.. Library is compile 'com.github.hiteshsondhi88.libffmpeg:FFmpegAndroid:0.2.5' i can use some of command and some are not. i use command as like below

-i /storage/emulated/0/ffvid/frameCount.mp4 -an -qscale 1 /storage/emulated/0/ffimg/revi%06d.jpg

above command use for dump images from video. i can't use command as liki $ffmpeg , $sox and $cat

i have referred many link but not success in see below some links...

https://unix.stackexchange.com/questions/214327/how-can-i-reverse-a-video-clip

http://jiaxihu.blogspot.in/2012/05/reverse-video-clip-with-ffmpeg.html

So please help me and give me solution. if other library available then suggest me. thanks advance

FFmpeg has a reverse video filter and reverse audio filter.
For video only:
ffmpeg -i /storage/emulated/0/ffvid/frameCount.mp4 -vf reverse reversed.mp4

For audio and video:
ffmpeg -i /storage/emulated/0/ffvid/frameCount.mp4 -vf reverse -af areverse reversed.mp4

This filter buffers the entire clip. For larger files, segment the file, reverse each segment and then concat the reversed segments. Remember that you have to concat the reversed segments in the reverse order!


What cable type (TRS or TRRS) is appropriate for connecting my Zoom H5 to my Sony A6400? So, I have a Sony A6400 camera that I want to connect directly to my Zoom H5 audio recorder in order to record my sound directly onto the camera video without bothering to sync it up in my post production software.
Now for the connection required between my H5 to my A6400 does it need to be a TRS cable or a TRRS cable? Second question is what is best for quality- OFC or OCC cable or does it even matter really?

Use a TRS cable. Make sure you reduce the line-out level in your Zoom H5, otherwise the audio in your camera will peak all the time.
The quality/purity of the copper in the cable is irrevelant. This OFC vs. OCC is just marketing-blah-blah. Apparently no manufacturer has been able to prove any discernible difference.
A real problem is that these 3.5mm jacks and cables aren't durable in the field. They just break too easily.


How to extract each video scene with FFmpeg I'm trying to detect scenes and save them as individual files with FFmpeg. I found this long command somewhere, but it fails with a good detection. I change the scenecut value, but I don't see any effects.

ffmpeg -y -i test.mp4 -max_muxing_queue_size 1024 -vf yadif -preset:v fast -x264opts scenecut=20 -f segment -segment_format mp4 -segment_format_options movflags=faststart %05d.mp4

Is there a better command than this? There should be a shorter, more efficient command I guess.

Using the encoder's scenecut to detect scenes is not advisable, since its purpose is efficient GOP splitting taking into account other encoding parameters. It is not a "pure" scene detector. Its propensity to mark a "scene change" increases as it gets closer to the the next forced keyframe target (set by keyint).

Consider using https://github.com/Breakthrough/PySceneDetect instead.


How to cut out corrupted parts of DVD-video extracted from disc so file can be played? I have some unique footage that I unfortunately only have a corrupted DVD copy of. I have been able to use gddrescue on Linux to extract most of the footage, but when I play the video in vlc it stops playing at certain points, and vlc returns to the playlist view. If I manually skip to the part where vlc stopped playing and skip a little forward, say a few seconds, I can play the file again and it works.

Is there a tool that I can use to automatically cut out the non corrupted parts of the video file so that I can play it without problem?

What causes this problem, what's technically wrong with the DVD-files?

Remuxing it will probably help, as the apps are generally smart enough to detect random crap and skip over it, as well as fix the timing information.

You didn't mention if it's a ripped as in copied direct MPEG-2 file or one ripped using HandBrake or something else.

Either way, use ffmpeg, avconv, or mkvmerge to remux them.

  ffmpeg (or avconv) -i source.mpg -codec copy dest.mkv
  mkvmerge -o dest.mkv source.mpg


Does rule of thirds apply to videos? I recently learned about rule of thirds in my photography class and it's really cool. But how can I take this technique and apply it to a video?

It is basically the same.
In a movie, you should have a motivated camera.
Meaning that the camera itself has or delivers an emotion.

A simple example:
Place someone really small into a corner of the screen, darken the lights. The person will look depressed and pushed to the edge from society.

Place someone in the entire frame into the middle and film them slightly from below and they will look powerfull and important.

You don't need to allways use rule of thirds in film, but you should consider it.

For example bringin an emotion into walking scene:

Person in right thirds, walking to left; Looks like the person walks into an open world
Person in right thirds, walking to right; Wlaking against a wall, not comming further...

There can be much meaning hidden inside a camera framing/move


Why doesn't the duration of a Premiere Pro encoding scale linearly? I have a long sequence (canon dslr and titles) (1hour) and as a
test export 1 minute at h264 Blu-ray pre-defined setting (pal 1920x1080, upper
field, low quality). This takes approx 1 minute to export. I then export the
entire sequence but rather than the expected 60mins to export it takes 3 hrs.
I'm running a i7,6Gig ddr3 ram, NVIDIA GeForce GTX 470, windows 7 64bit.
Exporting directly from premiere cc. I've also noticed sometimes the hard drive
gets thrashed when opening another program, could this be memory / page faults occurring
?
The question is why is export time not linear? and how can I
improve export time?

I doubt it is memory or page fault related.  Encoding is more of a stream operation, you load a frame, process the frame, hold the frame until you finish a group of pictures and then encode the group of pictures.  It is not a memory intensive process unless you are doing fancy effects that require memory to process.  It is a potentially HDD stream intensive process as it has to stream the video sources off the HDD and then record the output back to the HDD, which could involve lots of seeks potentially to move between reading and writing.

The two things I would try would be to try CUDA acceleration first and see if you can offload the processing to your GPU.  If that doesn't get sufficient speed I would try making sure your system is defraged and if that doesn't give sufficient speed, I might try SSDs for processing to and from for better random access of assets.

It is also possible that it is simply harder to encode later parts of your video though.  Depending on the exact settings you are using, changes in the content of the video can make a significant impact on how difficult it is to encode the video, so it may not even be unexpected that the encoding time changes between the first minute and the rest of the video.


Does digitizing Super 8 film at 4K resolution make any sense? You often/used to hear that "35mm film is 4K, 16mm film is 2K, and Super 8 film is 720p," so why do I often see services such as this one offering to digitize Super 8 film at 4K?
If all of the information on a Super 8 film has already been captured at 720/1080p then what's the point of digitizing the film at higher resolutions such as 4K?
I realize that when a 4K display receives a 1080p input that the display will have to upscale the picture using methods such as interpolation. But if one were to output a Super 8 film at 4K resolution to be displayed on a 4K display, wouldn't you be filling the 4K display with empty pixels given that all of the information on the Super 8 film has already been captured at 720/1080p?

Calling super-8 720p is confusing. There are no rows of pixels, only grains of emulsion, scattered in a random pattern on the base.
That said, film does have an upper bound on its resolving power, in other words, the smallest detail it can reproduce. Kodachrome could resolve 96-135 lines per millimeter, which can be roughly converted to 180-270 pixels per mm (it takes two pixels to resolve a line). A super-8  frame is 3.3mm high, so the vertical resolution is somewhere between 540 and 810 pixels. So as a back-of the envelope description of its resolving power 720p is a good approximation.
So if you capture super-8 in HD you will be getting enough resolution in your digital file that all of the image that is present on the super-8 frame will be preserved. Higher resolution will just give you more detail of the grain. It won't look worse, but it won't look a whole lot better.
What I would be more concerned about was the fidelity of the colour, and the quality of the transfer. A well transferred, lower resolution transfer will beat a poorly done higher resolution transfer any day. You can just project the film on a wall and film it, but it's probably going to look dreadful.


How to output high quality 360 VR video with Premiere Pro? When editing a 360 video in Adobe Premiere Pro, I noticed that if I import the video into the program and export it again without any additional changes, the resulting file size of the output file is 10 times smaller than the original, and the output file is lower resolution and appears blurry compared to the original. The file has been captured with a Garmin VIRB 360, video duration is 4 minutes, the original file size is 3 GB, and the output file size is 300 MB. I run a Windows 10 machine.

Here are the properties of my sequence: 4736 x 2496, 00:03:56:01, 29.97 fps, 48000 Hz - Stereo, VR Projection: Equirectangular, VR Layout: Monoscopic, VR Captured View: 360° Horizontal by 180° Vertical. I exported the file using the following settings: Format: H.264, Preset: Custom, and ticked the box saying "Use maximum render quality"

How do I export 360 video out of Premiere and still preserve the original 4K quality of the footage?

EDIT:

I found a youtube tutorial for how to preserve video quality on a Mac here, but I'm using Windows, and instead tried the export settings listed here. The settings were: "H.264 format with the Match Source preset. Disable the match source check boxes for dimensions, profile, and level. Change the profile to High and the level to 5.2. Choose Stretch To Fill in the Source Scaling setting (**couldn't find this one, so didn't do it**). Disable the aspect ratio link next to the dimensions and change the dimensions to 4096 by 2304 (or 2160 for 60 fps). Select a high bit rate, such as 100 Mbps. Enable Use Maximum Render Quality to achieve the best scaling results."

Unfortunately, the difference in quality is still substantial.
Here is a frame zoomed in at maximum level for the original file:
And here is approximately the same frame zoomed in at maximum level for the exported file:

Format: h.264 -> that's what makes it look bad.

h.264 is a codec in the mp4 container and always compresses, making the file smaller and look worse. For lossless exporting you use prores 4444 xq if you're using mac (or windows with the newest version of premiere) or DNxHR. I highly recommend prores 4444 xq though.


How can I create an effect of pictures like an album I am using Vegas Pro 10 and I can't find a (good) way to make pictures flying through the screen.
Well, it's a little bit difficult to describe but what I am thinking of is a screen, where you can see small pictures coming from the background and growing to the middle of the screen, these pictures come in sequence und after it reaches a certain size it fades away. (A little bit like a Picture Gallery). So there is also a little bit of an 3D-Effect included.
Maybe the best comparable situation is when you click [WIN] + [Tab] and then you go through the windows.
Sorry for the bad eyplanation, I hope anybody gets what I am talking about ;)

Vegas Pro 10 has two features that could help you out. Either using the Track Motion feature for the entire video track engaged with key frames, or the pan/crop feature for the shot itself engaged with key frames would allow for changes of size, shape, rotation, zooming, orientation (reverse, upside down) and such.

Here is a tutorial on Vegas (not sure of version but this will work in Pro 10) on
how to use the Track Motion feature:

Here is a tutorial on Vegas Pro 10 on how to use the Pan/Crop feature:

If you are using more than one clip or several still images, you should use the Track Motion with key frames as the Pan/Crop feature works only with the shot itself.

Hope this helps.


Is GoPro "Cam_Raw" a true RAW image format? I've seen this post about what exactly "RAW" is.

My question is about the GoPro Hero 4, which comes with the Protune option for "advanced controls".

Is their "Camera_Raw" format a true RAW image format?
Since it's probably proprietary, will I be able to access the image data using third-party software?

In their description, GoPro uses the term "less compression", but I was under the impression that RAW meant NO compression at all.

Camera raw sounds like it is effectively similar to RAW because it is describing the light data without any corrections.  What comes in on the sensor is written out, but it does sound like it may be applying the filter, just using a mix of 1:1:1 for the color resolution.  It's theoretically possible to work backwards from this to the full colors, but you may lose some bit depth if it goes from more than 8 bit sensor read out to 8 bit color encoding.  Possibly even worse if it is encoding to 4:2:0 or 4:2:2.

The net effect of shifting color on this kind of a recording would be that there would be fewer total colors described after applying your corrections since you discard a portion of the possible colors that could be described by the format.  (Where as your more traditional RAW doesn't discard any data, so you can be more selective about what you want to remove when you reduce the bit depth later in the process.)


Easily replace clips in Premiere Pro I have a couple hundred video clips in a premiere pro project (uncompressed avi), and it is burning too much space on my hard disk. I want to compress these clips (perhaps to x264).

Is there an easy way to do this? Currently I have to search for each file manually, while the only thing that changed is the extension from .avi to .mp4, and I have multiple projects I want to do this for.

Go to File > Project Manager.
Select the problem sequence.
In the "Resulting Project" menu, select "Collect Files and Copy"
In its options, select "Exclude Unused Clips" and unselect everything else.
Pick your destination path (not the drive where your .avi are located).
Press OK and start the copying process.

Once the copy is done, select all these files (they are all avi.) and transcode them to whatever you want, without changing their names. That supposes that you are going to export these transcoded files to a different folder than the one where your newly copied .avi files are located.

Once the transcode is done, put a dash in front of the folder in which you copied the original .avi files.

Boot up your Premiere project. The program will ask you to reconnect the missing media. Direct it towards the folder where you put the transcoded .avi files. Because you didn't change the files' names, you'll have no trouble reconnecting your sequence to the newly converted files. No more .avi.


Live Streaming with Sony A7III via HDMI I am looking to hire a Sony A7III for an upcoming live event and am wanting to stream via the HDMI port.
I have an AC adapter to ensure it is powered up at all times, my question is - is it possible to have the camera not turn off while streaming via HDMI?  I don't need to record it, just purely for streaming via HDMI
Can't find any info on any forums about this!
Cheers

To stream with a camera such as the a7III via HDMI, you'll need another piece of hardware. An example of this kind of thing would be "elgato" which produce different devices for this exact thing. The simplest way is to buy a USB dongle which has a female HDMI and a male USB. Plug it into your pc, plug the camera into the dongle and boom. The camera will be interpreted as a Webcam and can thus be used in OBS, Streamlabs etc.
To prevent the camera from turning off: There's different answers I could find. Some say leaving the battery/cassette-slot open will prevent the cam from going to standby. Others say you need to disable "remote control" in the settings. Others again say it's not possible. My guess is that there's either a setting, a way to trick the hardware or a software-hack that can help you out.


How to trigger multiple canon cameras at the same time? I'm searching for a solution to synchronize multiple camera video recordings. Is there a simple way to hack the camera trigger? I also thought about sound solutions, but trigger all cameras at once would be most elegant of course.

I've done this to combine the video onboard an aircraft with the video shot from the ground, and if both of my cameras were good quality, it worked pretty well. I tried to merge the videos using time codes, but that doesn't work even though they both had GPS- things with identical time-codes just weren't happening at the same time.

So, here's what I do now... (and this is only valid for video for obvious reasons)

Start all the cameras
Before the scene starts, use a clapperboard or your hands to record a sharp, short sound.

a. It is important to be equidistant from the cameras for this to work

b. If all the cameras can also "see" the clapperboard, that's better
After the scene ends, clap it again! This is very important! You may also want to create syncing sounds during the scene if it's a long one.

The last part is to deal with the fact that not all video plays at the correct speed. For example, when I mixed clips shot at 29.97 with clips shot at 30, they didn't line up after a few minutes.

The over-arching point here is, you will need to use something physically "in the video" to sync with, and in my experience syncing time codes or trying to start the cameras simultaneously just doesn't work.


ffmpeg add loop to this line of code i have windows 7 64 bit running latest ffmpeg command-line.

ffmpeg -i "song.mp4" -i "2.mp3" -filter_complex "[1:a]adelay=3000|60000[1a];[0:a][1a]amix" -vcodec copy -y "output1.mp4"

I want to loop the 2.mp3 all the way till the video ends.

The 2.mp3 finishes after xxx time in 2.mp3 so I wish to loop it instead of how do I add a loop to this.

You want to take a look at the aloop-filter.

ffmpeg -i "song.mp4" -i "2.mp3" -filter_complex "[1:a]aloop=loop=-1[al];[al]adelay=3000|60000[1a];[0:a][1a]amix" -vcodec copy -y "output1.mp4"

https://ffmpeg.org/ffmpeg-filters.html#aloop

And then you will probably want to limit the song.mp4, so we are using the duration option of amix, to tell it to limit by the first input given. https://ffmpeg.org/ffmpeg-filters.html#amix

ffmpeg -i "song.mp4" -i "2.mp3" -filter_complex "[1:a]aloop=loop=-1[al];[al]adelay=3000|60000[1a];[0:a][1a]amix=duration=first" -vcodec copy -y "output1.mp4"

Since I am not sure which of the two files you want to loop and don't know if you want to loop before or after the delay you might need to adjust the order of filters.


ffmpeg conversion - vp8 with alpha I'm trying to convert a mov file (with alpha channel) to webm, vp8 with alpha, on windows.
ffmpeg -i C0016.mov -s 960x540 -vcodec vp8 -pix_fmt yuva420p -metadata:s:v:0 alpha_mode="1" c0016_alpha.webm
gives me:
[NULL @ 00000204af221e80] Unable to find a suitable output format for 'c0016_alpha.webm'
c0016_alpha.webm: Invalid argument
How can I fix it?

I took the sample from apple https://developer.apple.com/videos/play/wwdc2019/506/
My command line using on colab was
!ffmpeg -y -i https://devstreaming-cdn.apple.com/videos/wwdc/2019/506lqy7sprpfyo800/506/506_hd_hevc_video_with_alpha.mp4 -s 960x540 -vcodec vp8 -metadata:s:v:0 alpha_mode="1" c0016_alpha.webm

Hope it matches your scenario.


How to find video frame rate and resolution I was watching a video produced by local movie maker, on 13" MacBook and it has lines! not sure why. I was thinking maybe the movie has rendered badly. How do I find out what's the resolution and frame rate.

The lines may come from the fact that you have exported the video with interlacing. You should generally avoid interlacing for any digital end-user medium.

To find out about certain technical aspects of a video, the program MediaInfo is a very handy tool that can tell you a lot about the specs of your video, including basics like video resolution and framerate. Though it's very unlikely that the root of your issue is the framerate or resolution. Medianinfo can also tell you if a video is using interlacing which is more likely the cause.


What determines video orientation (landscape or portrait) during playback? I captured a short video on my Android phone in portrait mode (i.e. to be viewed vertically).  When I played it on Windows 7 using WMP (or VLC), it displayed incorrectly in landscape orientation.

Thinking that I had to rotate it, I transferred the video to a Windows 10 laptop to process in After Effects.  To my surprise, I found out that it plays in the correct portrait mode on Windows 10 (using whatever is the default player that comes with Windows 10), and also plays correctly when imported into After Effects, requiring no rotation.

What determines how a video is oriented during playback?

If the video is meant to be played in a different orientation than its stored representation, then a rotation flag is set in the stream metadata. A compliant player uses that tag and rotates the video during playback.

A tool like Mediainfo will display that data (if specified) like here:

A tool like ffmpeg can reset the tag. Of course, you'll also want to rotate the video stream as currently stored so it plays in the correct orientation after the tag has been reset. ffmpeg's transpose filter can do that.


How to improve sense of timing in motion graphics I would simply ask a way to get a better "sense of timing" in motion graphics... It's not about a software specific question: do you know a good online course that teaches motion graphics fundamentals, regardless you have to work with after effects or a 3d software?

You could begin by reading or watching videos about the "12 Principles of Animation", which are usually cited as a set of rules or building blocks for life-like animations and aren't in any way software-specific. Examples of videos can be found here, or here.


How much disk space does 1 mini DV tape digitised in HDV take? I'm looking out to buy some storage for a session of logging a lot of tapes, and I want to guage how much space I will need. How much disk space does 1 mini DV tape digitised in HDV take?

mini DV is already digital format. The bitrate is 25Mbps.
So, 1 hour occupies approximately 11 Gigabytes


Is it possible to merge two or more videos in real-time like this? Is it possible to play video online that's made of two or more video files?

Here's what I mean.

My site is hosted on Linux/Apache/PHP server. I have video files in FLV/F4V format. I can also convert them to other available formats if necessary. All videos have same aspect ratio and other video parameters.

What I want is to have online video player that plays video composed of multiple video files concatenated together in real-time, i.e. when user clicks to see a video.

For example, user sees video titled "Welcome" available to play. When he/she clicks to play that video, I take video files "Opening.f4v", "Welcome.f4v" and "Ending.f4v" and join/merge/concatenate them one after another to create one continuous video on the fly.

Resulting video looks like one video, with no visual clues, lags or even smallest observable delay between video parts. Basically what is done is some form of on-the-fly editing or pre-editing, and user sees the result. This resulting video is not saved on the server, it's just composed and played real-time.

Also, if possible, user shouldn't be made to wait for this merging to be over before he/she sees resulting video, but to be able to get first part of the video playing immediately, while merging is done simultaneously.

Is this possible with flash/actionscript, ffmpeg, html5 or some other online technology? I don't need explanation how it's possible, just a nod that it's possible and some links to further investigate.

Also, if one option is to use flash, what are alternatives for making this work when site is visited from iphone/ipad?

DASH HTML5 video streaming already works by getting the player to load video in chunks that are usually about 10 seconds long.  You should be able to cook something up that gets the player to display your segment seamlessly, by giving it a DASH-like list of videos.

You might need to remux your video segments into .mp4, if some web browsers choke on the flv container format.  (assuming that's the container for f4v, which I've never seen before.)


How can I find specific PRO grade gear when CONSUMER grade dominates the search results. I'm trying to keep this question as "non" subjective as possible...

I need to find a very specific piece of hardware (not brand or model, just type), and I'm currently coming up empty handed. I've been cruising around on Google, but all of my search terms are coming up with invalid results. I've contacted the AV suppliers that I know, but they don't seem to have any answers either.

The problem I'm running into is that there are a million consumer grade devices as well as a myriad of software solutions, none of which are useful to me. I need results in the PRO AV grade of electronics.

This is only here to help add context to the above question.

  What I'm looking for is a Video Playback Appliance that can be controlled either via TCP/IP or via hard buttons. It needs to play H.264/AAC files, and preferably be able to wire two of them together so that they play simultaneously (for redundancy). I'm currently using an Adtec signEdje, and though it works fantastically (TCP/IP playback controls as well as Ethernet File Upload to internal 80GB HDD), it has no "seek" function, which is a major problem.

I think your trouble is partly related to using the overloaded, usually inappropriate word "pro" instead of "broadcast".  Marketing departments love using the first word, but when you think about it, that word doesn't describe the type of work, nor the level of quality.

The rest of your trouble may just be unfamiliarity with this kind of hardware, which is rather esoteric and specialized.  For redundant playback with various control options, I think you're probably looking for "broadcast video playback systems", one example of which would be the Grass Valley K2 Dyno.


Sennheiser G3 event audio So I work a lot filming events making aftermovies. Often my job requires me to get a master out from the mixer or the sound tech and I am at the will of them so to speak with regards to my audio. Rode Video Mics, Shotguns close to the stage .etc. all provide too much echo/reverb and overall bad audio. When I get master out I rarely have a problem, and usually get pretty good audio.

However, I have noticed that 99% of the in-house audio is transmitted wirelessly via Sennheiser G3's. Usually the receiver is this Sennheiser rack mount device. All in all something like this. My question is, if I get a G3 receiver couldn't I just get the frequency of the transmitter and 'tap' into the speakers transmitters, and secondly, would this cause an issue for the soundbooth guys?

This is commonly done.

I suppose with modern digital systems it might be more complicated, but with standard analog systems it should work fine. You'll just need the frequency from the FOH team.


Easy way of editing keyframes in adobe Premiere I'm a first time adobe premiere user. I can get the results I want after a fashion, but I find the methods I use way to cumbersome. I was wondering if you guys could point me some shortcuts.

I have two video streams from two camera's (slides & stage). I fade over from one camera to the next depending on what happens. I have added both streams to the sequence and just turn the opacity of the top stream to 0 when I want to show the bottom stream.

I have a large bunch of timecodes for when I want to make a fade-over. However, the default fade is way to slow. So I have to now:

go to the time code
add a keyframe
drag the frame to 0 or 100
right click selecte bezier
drag the bezier handle upwards enough that the fade speed is acceptable

That's a lot of mouse work, fiddlings and clickings. I have found the effect controls which allow me to fine tune the controls, but still with a lot of imprecise mouse moving.

I would love to have a way to just specify all keyframes and bezier parameters in a text file or so, so I can quickly edit them change all bezier parameters for all keyframes at the same time and be able to twiddle the results. Another possibility would be to copy keyframe settings, apply settings to multiple keyframes at once or to define keyframe 'classes' or so.

Even more so, I'm just learning premiere so I sometimes make rooky mistakes. For example by picking the wrong sequence framerate (I think) i managed to create a result that flickered heavily. I can't edit sequence settings so I had to create a new sequence. But I can't find how to copy markers or keyframes from one sequence to another. So I have to set them all over again :(

Any ideas on how I can improve the efficiency of this process? Or maybe I shouldn't be using keyframes and opacity at all?

thanks!

Adjusting the default video transition duration

Go to Preferences -> General and change the Video Transition Default Duration to a frame amount of your choice.

Optimising current workflow

I can think of some optimalisations regarding your current workflow. It's not a drastic change, but might help you do the task faster.

I would suggest splitting the timecode list per videotrack (slide & stage) according to the following scheme:

List 1: slide fade-outs
List 2: slide fade-ins
List 3: stage fade-outs
List 4: stage fade-ins

List 1 should match list 4 and list 2 should match list 3.
Go to the first fade-out on a list. Create a keyframe pattern you like for the fade-out, for example the one shown below:

In the effects panel it looks like this:

A linear keyframe followed by a bezier keyframe followd by a hold keyframe.

Now select those three keyframes in the effect panel by dragging a rectangle around them or clicking each keyframe while holding ctrl (Windows) cmd (Mac).
Right click and press Copy
Now go to each fade-out timecode on both video tracks (so list 1 and 3) and in the effects panel right click and press Paste. Of course you can also hit ctrl+V or cmd+V.
Repeat this process for list 2 and 4.

In this way you only have to set the bezier speed once and just copy paste the keyframe sequence at each timecode.

Exporting keyframe locations to textfile

I'm not aware of a way to do this directly, but if you export your project to a Final Cut Pro XML or to EDL (Select sequence, then: File -> Export) you have the ability to change the position of /add keyframes through a text editor by editing the .edl or .xml files . You can then import the .edl or .xml file into Premiere Pro as a new sequence.
However, these formats do not support bezier keyframes.