text:
Are there any general focal length rules around videoing a stage show
I need to video a dance show on stage, the video is to be static and needs to cover all of the stage.
For these types of requirements i generally just set up my camera on a tripod, use the widest lens i have (24mm) and let it be. But i do notice that there is some distortion and people around the edges are blocked by people in front of them. To tackle this issue i am thinking of using a 50 or 70mm and moving back.
Wondering if there are any general rules around what focal length to use for stage performances?
I obviously want to reduce the amount of empty space and get as much detail as I can of the dancers

Unless the dancers are all permanently in a line doing the can-can, there are likely always going to be occasions when masking occurs. I don't see this as being avoidable on a single camera shoot, one take.
Your 24mm is going to have a good depth of field, but within that, because you're relatively close to the stage, you will see quite heavy 'sizing' differences between people at the front to those at the back - relative distances being large from that viewpoint. This can also affect your apparent stage size, making the far ends seem surprisingly far from the near point.
A 70mm is going to look pretty 'cinematic' compared to that, but you might have to compensate with a really tight aperture [& high ISO… potentially noisy] to get enough depth of field for the whole stage, which will reduce the 'cinematic' feel at the same time. You will also get what people inaccurately call 'distance compression'*, when the sizing of people at the front & back of the stage will be closer to parity, because the relative distances between them compared to your camera position are smaller. This can lose your sense of depth.
A 50mm might just split the difference enough to retain a sense of each; DoF without the 'compression'.
One thing we don't know is your sensor size. The larger your sensor, the larger your field of view for any given lens length. This could make all the difference between choosing to go with the 50, or even a 35mm. Full-frame, even the 70mm might work, though for a one-off performance, I'd play safe & use something perceived as more 'what the eye sees', 35 or 50.
*This is a matter of perspective & angle of view. What is perceived as 'compression' is really a misunderstanding of the effect as seen through the lens. It still looks like compression, so that's what people call it, right ot wrong ;)


text:
Is there an optimal way to preserve quality when translating file formats?
My screen recording software, OBS, seems to encourage recording in MKV.  My video editing software, DaVinci Resolve 18, doesn't support this format on Linux (as far as I can tell).  The options I have (that I know of) are:

Record in another format.
Record in MKV and convert.

I would guess that (1) is always better, since I imagine converting always entails some amount of degradation or file size inflation over the native format.  But then again, I could imagine that OBS is optimized somehow for MKV.
So that's basically my question, in this case and in general: Is it always better to avoid conversion, or are there situations when you actually get better quality video by recording in one format and then converting?

OBS always recommend the recording in MKV format but It would be a problem in Linux so Record in another format is a good option because It always better to avoid conversion. On the Internet, you can find plenty of video capture software and here are the top 13 best free video capture softwares https://recorder.easeus.com/screen-recording-tips/free-video-recording-software.html for Linux with preserve quality.

A .mkv file is video and audio inside a Matroska Multimedia Container. The Matroska part is, just like the name implies, the outer bits that hold the essence streams, the actual audio and video. The essence will be compressed (for the video and, occasionally, the audio) or encoded (for the audio, usually) in their own formats. Something like H.264 for the video and linear PCM for the audio.
You can use ffmpeg or a similar tool to re-wrap the essence into another container that Resolve supports. Re-wrapping from one container to another is loseless because you don't actually change the video or audio, just how you access it. You will most likely want to use an MPEG-4/.mp4 or Quicktime/.mov container, but it depends on what your video codec is.

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

sort: votes


text:
Capturing projector slides and audio at conference
I have a couple of events coming up for a professional conference where I need to be able to record all the 35 breakout rooms over 4 days (650 hours of footage) to capture the slides bring run from the computer to the projector and the audio from the soundboard in the convention center.
Since it is 450 sessions that have to be recorded and delivered within 3 days, I want to find a solution that means no real editing outside possible cropping the front and end of the recordings.
I am looking at some capture device that is self contained that I can pull feed split from the computer or projector and from the speaker that will simply record the feeds with the push of a button. This would allow me to have volunteers in the sessions start the recording potentially since I could not be in 35 places.
I am looking at the AJA HELO recorded and streamer or something similarly simple to start with input options as it would be used with different AV companies over the next couple of years. Are there any concerns there or recommendations for capture devices that are simple? It's just slides (no video) recording so audio is the larger quality factor.
I have video editing background, but the AV specs is something I am trying to learn more of.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
After effects: Blending Mode problem
I'm trying to use the blending mode. When I start the project, there is no problem with the blending mode. But after a few days, the blending mode of some of my precomps always changes to "-". After that the effects are deleted and I can't change the state.
Does anyone know how to solve this problem?

I think this can happen when you switch on Collapse Transformations (the sun icon  ) on your pre-comp.  This changes the order in which After Effects renders things - there's a good example of this here:
https://pixelsandpaths.com/posts/tutorials/using-collapse-transformations-and-continuously-rasterize-in-after-effects-by-school-of-motion/


text:
Best deinterlacing filter for FFMPEG (no GPU)
I am hoping you can help. I am trying to extract frames (1 per second) from various videos and from various sources. However, I am getting blur/deinterlacing (see below). I've tried with various types of footage and eventually downloaded some F1 highlights to demo to you the type of output I am getting.
I am using the following command and below are 4 example frames. Does anyone have any advice on changes we could make to clean up the images extracted and sharpen them?

ffmpeg -ss 960 -t 100 -i "video.mp4" -qscale:v 2 -vf yadif=1:0:0 -r 1 "%06d.jpg"

also tried

ffmpeg -ss 960 -t 100 -i "video.mp4" -qscale:v 2 -vf yadif=1:-1:0 -r 1 "%06d.jpg"

Examples

What's your source video? Progressive shouldn't do that, interlaced likely could. I can't get Sky F1 to screen cap or download, DRM. Have you tried a manual frame save from VLC for comparison? [Not that I know anything about ffmpeg, tbh ;)

This was only a sample demo that was particularly affected. The source is highly variable. I haven’t tried VLC as the project is designed to be automated and installing VLC isn’t a option.

OK, fair enough. I can't really say on ffmpeg as I tend to use Handbrake for anything like this, which saves my rather coding-limited brain ;)  GUI, point & click, save as preset & set to batch mode once happy. I've never tried batching stills though. I tend to only need the occasional manual still, usually just in VLC for convenience.


text:
GoPro's denoising artifacts
When shooting a piano from overhead with a GoPro Hero10 Black,
the hands' skin texture and knuckle wrinkles are smoothed so much that it looks like a plastic mannequin.  It looks like what PhotoShop would do when denoising aggressively, or posterizing, or exporting to a low quality JPEG.
How can I make the gopro's output look better, even as realistic as that of an
ancient point-and-shoot Canon PowerShot Elph 330 HS, never mind as good as a modern four-thirds camera?
Here are 100% crops of video frames from
the GoPro (L) and the Canon (R),
taken with a wide range of settings and lighting.

I've tried adjusting the GoPro's ISO, resolution, frame rate, over/underexposure, H.264 vs HEVC, field of view, bit rate, and probably a few more things.


text:
Whats the smoothest way to screen record with FFMPEG with accurate colors?
ffmpeg -f x11grab -framerate 60 -probesize 42M -i $DISPLAY -preset ultrafast -pix_fmt yuv420p  vid.mp4

I use this currently and the video recording is smooth but colors are not accurate, they are dimmed. If I remove yuv420p pix_fmt then ffmpeg will use yuv444p (which is default right) , then the colors look accurate but the output video is laggy :/
How do I get smooth video output + accurate colors? Been trying to fix this since yesterday, help!
Check these :
yuv420p :

yuv444p :

I'm not seeing any significant difference, both look like the gamut is wrong. https://i.sstatic.net/d4Dgn.jpg Is your display calibrated to RGB or Rec709? Is your colour management set correctly? If you're aiming for YouTube, your video will be in 709, but on an sRGB display [which 99.9% of people will see it in, or a vague approximation of] you should compensate, YouTubers will always see the 'washed out' version, so you have to pre-empt it, or keep the entire workflow in sRGB.

As wiki of ffmpeg recommends
ffmpeg -video_size 1920x1080 -framerate 30 -f x11grab -i :0.0 -c:v libx264rgb -crf 0 -preset ultrafast -color_range 2 output.mkv

This will give you lossless output but also lossless RGB, the same format used in the operating system.
https://trac.ffmpeg.org/wiki/Capture/Desktop
Edit :  this worked
ffmpeg -video_size 1920x1080 -framerate 30 -f x11grab -i $DISPLAY -c:v libx264rgb -crf 0 -preset ultrafast -color_range 2 output.mkv

That works very well! but the file size went upto 192+ MB for just 12 seconds of recording, is this normal? Any way to reduce the file size without compromosing smoothness in video + accurate colors?

Of course it is normal, this is true lossless video.

authors: Валерий Заподовников


text:
How to put an image on top of video using ffmpeg? +scale video
What i have :
png picture dem.png (not transparent) and video cat.mp4. I need to put this png as a background to video with resizing video inside.
Current result :

by executing :
ffmpeg -i cat.mp4 -framerate 30 -i dem.png -filter_complex "[1][0]overlay=x=100:y=100" -c:a copy -movflags +faststart out2.mp4

How can i scale mp4 in case i know paddings/required height/width of scaled mp4 here?
Very beginner in ffmpeg. I know, i need to use scale param, but can't understand how to do it with my current ffmpeg command.
Maybe someone know how to do it?
Files are here if you need : https://drive.google.com/drive/folders/1gKJCyVU0IgJ8g3zWFhCA-L93lDOWyOS-?usp=sharing

This works like a charm :
ffmpeg -y -i cat.mp4 -framerate 20 -i dem.png -filter_complex "[0:v]scale=512x397,setsar=1[v0];[1][v0]overlay=x=45:y=45" -c:a copy -movflags +faststart out2.mp4

Result will be :

If anyone can step-by-step describe what each part of command do - will appreciate!


text:
Is there a way to detect whether the FCP file export completed or not, via CLI
I want to post-process the video file exported from FCP, using FFmpeg.
Currently, I firstly do "Share" on FCP and wait for completion, then trigger the FFmpeg.
However, I'd like to make these bothering steps into one, using shell-script like as follows:
$ __COMMAND_THAT_WAIT_FOR_EXPORT_COMPLETION__ fcp-output.mov
$ ffmpeg -i fcp-output.mov __OPTIONS__  processed-file.mp4

Is there an equivalent to __COMMAND_THAT_WAIT_FOR_EXPORT_COMPLETION__ above?

The tool Command Post could be what you looking for.

Thx. However, glancing at the features of CommandPost, I could not find a function I was looking for.


text:
Red Icon on PremierePro video track

Does anyone know what this red icon is? I'm on a project that someone has already worked on. Not sure how this icon came up.

It means the proxy file for that clip is missing.  You need to find and relink them or make new ones (if you want to use proxy files).
See the "Red proxy badge in icon view" section below:
https://community.adobe.com/t5/premiere-pro-beta-discussions/discuss-project-panel-proxy-badge-in-icon-and-freeform-view-proxy-column-in-list-view/m-p/12594847


text:
Can I label streams during import in ffmpeg?
Suppose I import three videos:
-i 'video0.mov'
-i 'video1.mov'
-i 'video2.mov'

Then I open a filter_complex. I can send the videos filters by referring to their number, which ffmpeg documentation calls "file_index": [0], [1], and [2].
This is fine, but suppose I come back later and remove everything related to video1.mov and the line that imports it. Now [1] refers to video3.mov and there is no [2] at all.
In the filtergraph I can apply a label by sending the video to a labeled output, ie:
[0] copy [video0]

but I have to be able to address the original file_index first.
I'm trying to do irritatingly complicated things with scripts, which include things like "import a png and overlay it, or not, based on a boolean setting". Once you have more than one import line that may or may not happen, labeling becomes an issue.
Is there any way to apply a label to an input at the time of import, so I never have to use file_index and won't break anything if the number or order of imports changes?

Not possible. Feel free to open an enhancement ticket at trac.ffmpeg.org. See 'Submitting a bug report'

@Gyan Will do, thank you.


text:
Help needed on ffmpeg zoompan filter expression syntax
I have the following command:
ffmpeg -loglevel verbose -y \
-i "https://my.domain/workspaces/473/RFP-107718.mp4" \
-i "https://my.domain/workspaces/473/margaritaville/palm_beach.png" \
-filter_complex "[0]drawbox=x=0:y=0:w=iw:h=ih:color=#FF0000@1:t=fill[padded];[0]format=yuva420p,pad=iw*2:ih*2:color=black@0,zoompan=z='if(lt(it,0),2,if(lte(pzoom,1.0),2,max(1.58,pzoom-0.005526315789473683)))':x=0:y=0:d=1:s=1920x1080[zp],[padded][zp]overlay=x='if(lt(t,3.04),t*20/3.04,20)':y='if(lt(t,3.04),t*18/3.04,18)':eval=frame[zp_stream],[1:v]scale=502:-1 [image1],[zp_stream][image1] overlay=1051.5078125:53.28906249999999:enable='between(t,0,10.048)' [overlay1]" -map "[overlay1]" -pix_fmt yuv420p -map 0:a -c:a copy "/usr/src/app/output/RFP-107718.mp4"

If i run it locally works without any errors, but when i run on Docker container i have the following error:
ffmpeg version 4.1.9-0+deb10u1 Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 8 (Debian 8.3.0-6)
  configuration: --prefix=/usr --extra-version=0+deb10u1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared
  libavutil      56. 22.100 / 56. 22.100
  libavcodec     58. 35.100 / 58. 35.100
  libavformat    58. 20.100 / 58. 20.100
  libavdevice    58.  5.100 / 58.  5.100
  libavfilter     7. 40.101 /  7. 40.101
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  3.100 /  5.  3.100
  libswresample   3.  3.100 /  3.  3.100
  libpostproc    55.  3.100 / 55.  3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'https://dev-cdn.connected-stories.com/workspaces/473/RFP-107718.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 1
    compatible_brands: isommp41mp42
    creation_time   : 2022-04-15T18:31:51.000000Z
  Duration: 00:00:29.99, start: 0.000000, bitrate: 8207 kb/s
    Stream #0:0(eng): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 7877 kb/s, 59.98 fps, 60 tbr, 60k tbn, 120k tbc (default)
    Metadata:
      creation_time   : 2022-04-15T18:31:51.000000Z
      handler_name    : Core Media Video
      encoder         : AVC Coding
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 317 kb/s (default)
    Metadata:
      creation_time   : 2022-04-15T18:31:51.000000Z
      handler_name    : Core Media Audio
Input #1, png_pipe, from 'https://dev-cdn.connected-stories.com/workspaces/473/margaritaville/palm_beach.png':
  Duration: N/A, bitrate: N/A
    Stream #1:0: Video: png, rgba(pc), 1210x240 [SAR 2834:2834 DAR 121:24], 25 tbr, 25 tbn, 25 tbc
Stream mapping:
  Stream #0:0 (h264) -> drawbox
  Stream #0:0 (h264) -> format
  Stream #1:0 (png) -> scale
  overlay -> Stream #0:0 (libx264)
  Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
[Parsed_zoompan_3 @ 0x40006c2500] [Eval @ 0x40018421e0] Unknown function in 'it,0),2,if(lte(pzoom,1.0),2,max(1.58,pzoom-0.005526315789473683)))'
[Parsed_zoompan_3 @ 0x40006c2500] Failed to configure output pad on Parsed_zoompan_3
Error reinitializing filters!
Failed to inject frame into filter network: Invalid argument
Error while processing the decoded data for stream #1:0
Conversion failed!

My local version is 5.0.1 on mac os, the container one is 4.1.9 on ubuntu
Here the docker file:
FROM node:16

ENV NODE_ENV=production

RUN apt-get -y update && \
    apt-get install -y  ffmpeg \
    build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev

WORKDIR /usr/src/app
COPY . .
RUN npm ci --production --silent

CMD node src/index.js

Any hint to solve the issue is appreciated!
Thanks.

Edit: it is available from v4.4 onwards, so upgrade.
Escape the commas, e.g.
if(lt(t,3.04),t*20/3.04,20) becomes if(lt(t\,3.04)\,t*20/3.04\,20)

Hi @Gyan, thanks for the reply. I already tried that, but i have exactly the same error, although I added the single quote to the z expression, so the escaping should not be necessary.


text:
Export a video to 4k or 2k with FFMPEG and without lag (UPSCALE VIDEO)
how do I upscale a video to 4k or 2k with ffmpeg? youtube encodes the videos which results in some quality loss of the video. So to make youtube use VP09 encoder on my videos, I have to export the video in 2k or 4k
I record videos at 1080P this way :
ffmpeg \
-f x11grab \
-framerate 60 \
-video_size "1920x1080" \
-i :1 \
-f lavfi -i anullsrc=channel_layout=stereo:sample_rate=44100 \
-vf setpts=N/FR/TB \
-c:v libx264rgb -crf 0 -preset ultrafast -color_range 2 \
output.mp4 \

My upscale ffmpeg command ( produces laggy videos )
ffmpeg -i output.mp4 -vf scale=-1:2160:flags=lanczos -c:v libx264 -crf 21 -framerate 60 out.mp4

How do I export the video in 2k or 4k without the lag?

I'm not sure why people go to all this trouble to avoid AVC/H264. If you get that right in the first place it looks absolutely fine. I don't see the benefit of artificially upscaling to try get VP09, the 1080 will still be h264.

when youtube uses AVC then my video's color quality gets reduced :/

That's likely more to do with your profiling than YouTube itself. See my comment on your other question.

no its not, my video looks fine locally ( accurate colors ) but when I upload it on youtube, youtube compresses it. youtube uses AVC for small channels and mine is a small channel so it used AVC which resulted in reduced quality colors

'Fine locally' is not an accurate methodology. Is your display calibrated? If so, what is it calibrated to, sRGB, Rec709…? If not, then you have no idea what you are uploading, only that it responds differently once it's on YouTube, which implies you are calibrated to [or approximated to] sRGB, as I said on the other thread. You always have to pre-empt Rec709 on sRGB, as the gamut is approximately the same, but the 'gamma' (transfer function/white point) is not.

See https://www.richardlackey.com/choosing-video-color-space/ which doesn't actually cover what happens with YouTube specifically, though it does mention the lightening effect.


text:
Unable to make cuts to audio and video track at the same time
I have a video with audio that I imported in Premiere Pro. I was able to make cuts in the video track by pressing C and Premiere Pro would then automatically make cuts at the exact same location in the audio track.
I pressed some buttons that did something and I am no longer able to cut the video and audio at the same time. I searched on Google and links the tracks by going to Clip > Link does not help.
Once again I would like to mention that the audio and video are from the same file and not independent. I was able to make cuts in them or delete them at once earlier.
How can I start doing that again?
Thanks.

To link the clips together again you need to select the audio and the video segments by shift clicking both of them so that they are both selected, then press ctrl+L to link.  Did this help?

Thanks @tomh I probably figured out the issue. I clicked on the video track and made a cut by pressing the Alt key. The right part of the video track then got permanently unlinked. However, selecting the video track along with audio track and then pressing Ctrl + L didn't help me link them back.

Sometimes the way premiere links clips is a little bit unintuitive. e.g. you might have ended up with two audio clips and one video clip, with the wrong audio clip linked to the video clip, if that makes sense

@tomh So the only way for me to link them together is to just delete the cut I made with theAlt keypress?


text:
How to convert camrec to mp4 using ffmpeg?
I raise such problem but in the same post I raise the solution.
The first thing to know is that the .camrec format (from Camtasia) is a compressed file, so we must first decompress these files before converting them to .mp4.
Using 7z it is possible to decompress a .camrec file, and generate a .avi:
7z e "*file.camrec" "file.avi"

The second thing, is to convert this .avi file to .mp4 with ffmpeg.
ffmpeg -i "file.avi" "file.mp4"

If someone has a better solution I invite you to post it here.

Camtasia file format is a colsed and composed file with multiple assets and instructions called MS-CFB. The binary header does not correspond to 7zip, rar, zip or gzip. You can not conver .camrec from ffmpeg or unzip.
In Microsoft website says: https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-cfb/68530324-9d3d-4441-9ea9-66a2c8f79567

[MS-CFB]: Compound File Binary File Format

000000: D0CF 11E0 A1B1 1AE1 0000 0000 0000 0000 ................

And i have a .camrec file for the example:
whk@machine:~/Vídeos$ file fest.camrec;
fest.camrec: Composite Document File V2 Document, Cannot read section info
whk@machine:~/Vídeos$ head -n 16 fest.camrec | xxd;
00000000: d0cf 11e0 a1b1 1ae1 0000 0000 0000 0000  ................

The best option is download Camtasia Studio and install it on a Windows machine and export the project as video file format.


text:
Nikon D3500 damage while recording video
I read on a another photography site that the Nikon D3500 can overheat and suffer permanent damage while recording video. Does anyone know if there is any truth to this? It seems implausible that Nikon would sell a camera with this problem.

I read somewhere online that the Moon is made of green cheese...

Cute. So this is a site for jokers?

Well, you didn't exactly cite your own source in an acceptable way for a more formal environment...

And what is "acceptable" to you? Obviously no one has an answer, especially you. So you have nothing better to do than berate a post?

We have plenty of similar questions at Photo SE (which is where you originally posted this question) where the OP does cite their source so that those answering can look at the context of the claim. Please see, for example, Do smaller apertures provide more depth of field past the diffraction limit, even if peak sharpness suffers? or What is the difference between "color" and "tones"?


text:
Premiere Pro - auto update adjustment layers
I have an adjustment layer in my project:

Which you can see has three instances in my timeline on top of the same shot type (so all will want the same colour correction to match exactly)

And as far as I can see, when dragging the adjustment layer in to my timeline this will always have its own properties on each of these three timeline instances (i.e. I can change each adjustment layer separately like the warmth and the other instances of POV will keep their own (old) warmth values)
I'm new to Premiere Pro, but I assumed that creating an adjustment layer would be smarter and each adjustment layer would maintain its changes so I can update one and see these updates automatically in my timeline - again as an example, if I update the warmth of the first POV adjustment layer, then the other two would auto update.
This doesn't seem to be the case, so I'm wondering if there is a way to do this so I can change one adjustment layer and have its brother instances auto update so I can quickly and efficiently colour correct multiple shots in my timeline.
The only ideas I had was:

to embed the adjustment layer in to a sequence and reuse that sequence three times, so opening one changes the embedded layer, but PP doesn't seem to want me to drag in the sequence, and instead inserts the adjustment layer in to the timeline.

putting the adjustment layer in to a nested sequence seems to fix this but then I have the problem of the nested layer sitting above my footage causing it to just black out any layers below it


text:
Lost Premiere Project
I accidentally deleted my premiere project and after effect project including assets and auto-save folders. Permanently deleted from trash too.
Is there a way to rebuild the project files from cache or anywhere else. I have copy of the assets - just need the project files. Any help is really appreciated. Thanks!

Stop using your computer right now. Every youtube video you see, and every webpage you visit is potentially overwriting the files you deleted, corrupting them.

Look for a computer technician that knows how to use an undelete program. A deleted file or folder is not deleted right away, it is only changed the name to something from

NameOfTheFolder to $ameOfTheFolder
so, an undelete program can potentially find those deleted files, by name, date, etc, and retrieve them, only if some other file has not written new information on the designated space for the previous file.
It might be necessary to use several undelete programs because sometimes they use different methods to retrieve information.
Part of the service might involve connecting the hard drive to another computer, so no normal computer process overrides more disk space.

Stop using your computer right now.


text:
Remove tiktok video logo/watermark using ffmpeg?
How I can remove tiktok video logo using FFmpeg? Like most sites are doing e.g https://ssstik.io/en
I tried to remove the logo using delogo filter but it leaves a blur effect in the video while the above site logo removal is clean, with no blurry effect.
ffmpeg -i input.mp4 -vf "delogo=x=10:y=10:w=180:h=75" -c:a copy output.mp4
Any idea how I can remove watermark with clean output? Thanks in advance.

I'm also looking into this topic of watermark removal. But I'm not specifically knowledgeable about logo removal, so this is just my best guess as a software engineer.
From what I know about ffmpeg, I'd say that it's just using differential mpeg data to fill in the deleted region. Probably works really poorly when the camera doesn't move. Probably just copies pixels on the borders of the missing region until it's been filled completely.
The site you mention only handles TikTok logos specifically, which means it can still use the pixels between the letters. In addition to what ffmpeg does, I'm sure it applies some machine learning algorithms to determine the most likely missing pixels.
So the way I see it, what you need to do proper watermark removal, is 1) Determine exactly which pixels in which frames are part of the logo. This is easier for moving video, where you can use gradient data to identify which pixels show an edge throughout the video, whereas with still video, all background would get marked as logo. 2) Then you need to use the differential mpeg data (hopefully, you can access that from ffmpeg) to do some initial filling in of empty pixels. If not, you're stuck having to do some optical flow algorithm yourself on consecutive video frames. And 3) You need a properly trained ML algorithm, probably a recurrent convolutional neural network to make a good guess from context about the missing pixels. Fortunately, it's easy to generate training data from existing video.
Usually, a company will apply the same logo to every video it produces, which means that once you have successfully delogoed one video, others become easier. Some logos are ever partially transparent, which means you can reverse engineer how the logo changes the pixels underneath, and directly correct them without going through all the hoops of differential mpeg data and ML smart fill.
All in all, that sounds like a massive project. But if you do it well, the possibilities are endless, and you can probably make a career out of what you learned along the way, or from the product directly.

Nice to see your comment. The site above I learned and searched about it. They are using some reverse engineering for TikTok servers and they are getting video data directly from TikTok server without logos(original video untouched).


text:
Making a rectangular mask with custom dimensions in Premiere Pro
I want to be able to create a rectangular mask in Premiere Pro where I can type in how many pixels wide and how many pixels high it will be.
This question is similar, but I've tested the technique in the answer (which is also the best I've found on YouTube) and it seems that the new Premiere Pro update has done away with the shift-click-and-drag way of snapping the mask to a rectangular shape. Besides, I wouldn't be able to get the mask pixel-perfect with any manual method.
While it's possible to enlarge a mask while keeping it a perfect rectangle, Premiere Pro seems to have its ratio locked.
What I'm trying to do, ultimately, is mask rectangles of video, where I decide exactly what shape the rectangles are, and then use the masks to round off the corners. I also want to be able to animate the masks so that the video grows and slides around the screen, maintaining the rounded corners. And I want to be able to position these masks precisely too.

I don't think this is possible in Premiere, or at least not simple to do.
You'd think you could create some rulers, right click on them, enter some values, then create a shape and snap the corners of the shape to the rulers, but it doesn't work.
I suspect this is one of those product differentiation things where Adobe has decided to restrict some features in Premiere so as to keep some in After Effects.  Whether this is deliberate or they just haven't programmed the features into both apps yet, I don't know.
Essentially, if you want to do stuff like this, use After Effects.
(Not a great answer, sorry.)


text:
Is it possible to embed a thumbnail in a .mkv file?
I am trying to embed a thumbnail in a .mkv file with h265 video encoding using ffmpeg from the Linux command line. I am able to embed thumbnails in h264-encoded .mp4 files using the following command:
ffmpeg -i video-in.mp4 -i thumb.png -map 0 -map 1 -c copy -c:v:1 png -disposition:v:1 attached_pic out.mp4

However, a similar command substituting .mkv files does not correctly embed the thumbnail:
ffmpeg -i video-in.mkv -i thumb.png -map 0 -map 1 -c copy -c:v:1 png -disposition:v:1 attached_pic out.mkv

ffmpeg will run just fine, throwing no warnings or errors, but the thumbnail that shows in Dolphin after it's run its course is a generic auto-generated thumbnail instead of the one I specified with -i thumb.png.
I first learned how to do this while reading the ffmpeg documentation here (a bit further down, where it explains dispositions). I noticed that it says "Not all muxers support embedded thumbnails, and those who do, only support a few formats, like JPEG or PNG." This makes me think that maybe the matroska/mkv muxer simply doesn't support embedded thumbnails. However, further research has me confused.
The ffmpeg Formats documentation doesn't list thumbnail(s) as an option in the metadata section of the matroska muxer docs, which further supports the theory that embedding is impossible. I figured I'd double-check that thumbnails are listed as an option for mp4s just to be sure. However, the mov/mp4/ismv muxer section doesn't even have a Metadata sub-section.
The MP4 File Format Documentation I've been able to find isn't very helpful. I can't tell whether thumbnail embedding is possible based on this documentation alone (though obviously I know from experience that it's possible).
The MKV Container Documentation is a lot more thorough, though, and it says in the first section ("What is an MKV File?") that "MKV also supports descriptions, ratings, cover art, and even chapter points" (emphasis mine). In the "Matroska Structure" section it also lists "Attachments" as one of the top-level elements of the container structure. All of this leads me to believe that embedded thumbnails are in fact possible with .mkv files.
So, to summarize: on the one hand, ffmpeg's documentation makes me think I can't embed thumbnails in .mkv files. But the MKV file format documentation makes me think I should be able to. I haven't been able to figure out for sure either way, though, and even if it is possible, the method for doing so differs from the method I use for .mp4 files.
Is it possible to embed thumbnails in .mkv files? If so, how would I do it (preferably using ffmpeg on Linux)?

I was also going down this rabbit hole and found that there's an option -attach filename that's more specific to mkv files. It's at the end of the "Main Options" section of the manual: https://ffmpeg.org/ffmpeg.html#Main-options
ffmpeg -i video.mkv -attach cover.jpg -metadata:s:t:0 mimetype=image/jpeg -c copy out.mkv

The -metadata:s:t:0 specifically selects the first attachment stream (which should be just the cover photo).

This works but I still would like to remind that the thumbnail image must have "cover" as its file name, such as "cover.jpg" or "cover.png". If we use file names like "thumb.png", FFmpeg won't report an error, but the thumbnail also won't display properly on the MKV output.

How to do this in Windows, it doesn't work for me in Windows 11...

@RicardoBohner Windows seems to not read MKV cover art. I use third-party software like Icaros to replace Windows built-in thumbnail provider. (But Windows can read MP3 and MP4 cover art...)

@rint I noticed, when I open the movie in VLC media player and press CTRL + I I can actually see the thumbnail, but it doesn't show on File Explorer https://i.imgur.com/qbStjay.jpeg

@RicardoBohner Based on the software I think, PotPlayer cannot display the embedded thumbnail.

It turns out that the Matroska format also demands that the image ( ONLY a .jpg or a .png can be used ) must not only be named "cover.jpg" or "cover.png"; there is an obscure ADDITIONAL REQUIREMENT that the cover image's smallest dimension ( width or height ) MUST BE NO LARGER THAN 600 PIXELS!
The relevant Matroska specification is here:
https://www.matroska.org/technical/attachments.html Here's a back-up copy of the same page of the spec at the Internet Archive's Wayback Machine:
https://web.archive.org/web/20240918125616/https://www.matroska.org/technical/attachments.html
Read the specification closely!  If your cover image file has a square or portrait mode orientation, you can simply use the "cover.ext" naming convention for the file.
BUT if your cover image file has a LANDSCAPE mode orientation, the Matroska spec says you SHOULD use the suffix "_land" on the filename(!!!), like this: "cover_land.ext" ( "cover_land.jpg" or "cover_land.png", depending upon your filetype ).
AND... The Matroska spec ALSO says you may include 1 smaller thumbnail image if you want to, with a shortest dimension no greater than 120 pixels!  The normal size cover image must be the 1st attachment, though, and the smaller thumbnail is required to follow a "small_" prefix naming convention: "small_cover.ext" or "small_cover_land.ext"
Resize an image with ffmpeg
To retain aspect ratio:
ffmpeg -i art_image_for_use_as_cover.jpg -vf scale="-1:600" cover.jpg

or if you want to resize based on input width and height, where '2' is used in both dimensions here to shrink them down by 1/2
ffmpeg -i input_art_image.png -vf scale="iw/2:ih/2" cover.png

where ( this happens automatically, you don't need to replace "iw" or "ih" in that command )

iw: input width
ih: input height

Here's where the FFMPEG manual describes "scaling" and the parameters you can use:
https://ffmpeg.org/ffmpeg-filters.html#scale-1
If by some chance you're also using YT-DLP to get videos from YouTube, you can command yt-dlp to grab the images of various sizes that it uses for a particular video with this --write-all-thumb command option:
"C:\yt-dlp\yt-dlp.exe" --skip-download --write-all-thumb https://www.youtube.com/watch?v=mRtKmFknE0o

The --skip-download option will prevent yt-dlp from downloading the actual video file, but --write-all-thumb will give you the entire set of thumbnails for that video in various sizes, in both .jpg and .webp formats, sequentially numbered from smallest to largest.  There is currently ( in 2024 ) no method to retrieve just 1 specific size, you have to download the entire set ( about 42 images ) and then just delete the ones you don't need.
It turns out that for this given example video, none of the widths or heights is exactly 600 pixels.  And the thumbnails of the art for this example video has black bars to the left & right, which are ugly & unnecessary, so we can simply crop them off.  I pick the thumbnail .jpg index numbered at 40, since that is first index of the largest size .jpg thumbnail returned, I presume it will have the most detail:
"The Old Ways Podcast - Six Seasons in Sartar - Episode 22 - Tears of the Vale [mRtKmFknE0o].40.jpg"

A higher index number, 43, also exists, but it has the same file size & image width & height, so I presume it is no different than #40.
What the FFMPEG manual has to say about using it to crop still images & video:
https://ffmpeg.org/ffmpeg-filters.html#crop
So to crop the black bars ( which are 280 pixels wide ) off of the #40 thumbnail of this example:
"C:\Program Files\FFMPEG For YT-DLP\ffmpeg.exe" -i "The Old Ways Podcast - Six Seasons in Sartar - Episode 22 - Tears of the Vale [mRtKmFknE0o].40.jpg" -vf "crop=720:720:280:0" cover_crop.jpg

I see that I cut off too much of the left & right sides of the art, discovering my initial guess that the art width was 720 pixels wide was off.  Using Photoshop, I see the image is 1280 wide & 720 pixels tall. when I use the crop tool by hand to chop off the black bars, it becomes 869 pixels wide... I did that by hand so I just round that off to nearest ten, 870 pixels wide... Then 1280 - 870 = 410 total width of black pixels were cropped out from left & right, so to get the starting x position value of a proper crop with FFMPEG, we divide that by 2: 410 / 2 = 205...  It only makes sense to go to this trouble, to expend this effort, if we plan to use a batch file to crop, scale & add thumbnails to LOTS of videos at once, or many, many times in the future!
The cropping command looks like this, generically:
"C:\Path_To_FFMPEG\ffmpeg.exe" -i input_image.jpg -vf "crop=720:720:280:0" output_image.jpg

Cropping in my specific example case:
"C:\Program Files\FFMPEG For YT-DLP\ffmpeg.exe" -i "The Old Ways Podcast - Six Seasons in Sartar - Episode 22 - Tears of the Vale [mRtKmFknE0o].40.jpg" -vf "crop=870:720:205:0" cover_crop.jpg

This leaves behind an output_image.jpg with 870x720 dimensions, still too large to use for the normal size .mkv cover art.  We could have just cropped the input file down to a square 600x600 and be done with it, like so:
"C:\Path_To_FFMPEG\ffmpeg.exe" -i input_image.jpg -vf  "crop=out_w=600:out_h=600" cover.jpg

That just cuts out the center of the input image by default, like a cookie cutter.  That might be "good enough" in some cases, but in this case it leaves an ugly art result, so we choose to follow the cropping-off of black bars with a scaling down from 870x720 to some_new_scaled_down_widthx600 instead:
ffmpeg -i cover_crop.jpg -vf scale="-1:600" cover.jpg

The actual command I applied to do this in my specific case is:
"C:\Program Files\FFMPEG For YT-DLP\ffmpeg.exe" -i "C:\yt-dlp\The Old Ways\cover_crop.jpg" -vf scale="-1:600" cover.jpg

In the end, I made a batch file to handle adding both normal & small thumbnails to 25 videos at once.  I moved the index number "(filename_is_YouTube_video_title).40.jpg" thumbnails I got from the --write-all-thumbs of yt-dlp into a folder called "C:\yt-dlp\The Old Ways\Fast_Cover", and the matching .mkv files, "(filename_is_YouTube_video_title).mkv" are sitting in a folder named "C:\yt-dlp\The Old Ways\temp".  Here's the batch file I used on Windows 10 to generate & combine the normal & small landscape orientation thumbnails to each video.  I open a command prompt window at the "Fast_Cover" working directory, and run this batch file from that folder:
chcp 65001 >NUL
@ECHO OFF
TITLE Add Cover Thumbnails To .mkv Files

SETLOCAL EnableExtensions EnableDelayedExpansion

set /a count=0

for %%A IN ("C:\yt-dlp\The Old Ways\temp\*.mkv") DO (
 set filename=%%~nA
 set extension=%%~xA
 set /a count+=1
 echo Loop #:!count!
 set "output[!count!]=!filename!"
)

For /L %%i in (1,1,%count%) Do (
 Call :Action "!output[%%i]!"
)

REM DEL "*.jpg"

exit /b 0

::*******************************************************
:Action

echo ACTION:%~1

"C:\Program Files\FFMPEG For YT-DLP\ffmpeg.exe" -y -i "%~1.40.jpg" -vf scale="-1:600" cover_land.jpg
"C:\Program Files\FFMPEG For YT-DLP\ffmpeg.exe" -y -i "%~1.40.jpg" -vf scale="-1:120" small_cover_land.jpg

"C:\Program Files\FFMPEG For YT-DLP\ffmpeg.exe" -y ^
-i "C:\yt-dlp\The Old Ways\temp\%~1.mkv" ^
-attach "cover_land.jpg" ^
-attach "small_cover_land.jpg" ^
-map 0 ^
-c copy ^
-metadata:s:t mimetype=image/jpg ^
-metadata:s:t:0 filename=cover_land.jpg ^
-metadata:s:t:0 filename=small_cover_land.jpg ^
"%~1.mkv"

exit /b 0
::*******************************************************

The very 1st line, "chcp 65001 >NUL" is there to help the batch file handle Unicode characters that show up all of the time in YouTube video titles.


text:
Applying dynamic mask across all images to make uniform with baseline
I do time lapses. In the attached image, notice each image has slightly different shades but are otherwise consistent. This is an artifact of a mechanical shutter.

I'd like to take a single pixel in the images that will not change color and use this as the baseline. Then apply a mask to the rest of the images in the sequence to make them match the baseline image.
I imagine the code would look something like this:
baseline_color = `convert baseline.png -format '#%[hex:u.p{75,20}]' info:-`

for i in images/
do
    #get the color of the same pixel in another image
    new_color = `convert $i -format '#%[hex:u.p{75,20}]' info:-`

    #get the difference betwen the two colors
    diff = baseline_color - new_color

    #apply filter to make image color consistent with baseline
    ffmpeg -i $i -vf "filter=..." $i_filtered.png
done

Any thoughts on how to best accomplish this?

I may end up using normalization instead

Alternatively, the answer may lie in the curves filter if I can make it work. Then the pseudocode above would apply.

Another option is the histmatch ImageMagick script


text:
Change Davinci Resolve Fusion timeline to 0
I have a long clip that I've cut down and now I am making changes in fusion. The timeline starts at the specific frame I cut it from (from my example, frames 984-1119). I Want the timeline to start at 0 frames instead of 984 for this specific clip so that my animated presets can easily work on it.
I want fusion to act as if the clip I cut is its own independent clip so that the timeline could start from 0.
Is this possible? Or is there an alternative way to get the same result?


text:
how do I flip (horizontal) the entire virtual camera?
Certain video conferencing apps mirror the input so it needs to be flipped when coming out of OBS or it will show backwards.
So far I have been achieving this by flipping each input source individually in my scenes. This is extremely tedious especially since I go back and forth between apps that need my virtual cam flipped or not.
Instead of flipping every source individually it would make sense to just have an option to flip the virtual camera. I don't seem to see any settings for this (mac), but I have seen youtube videos of folks on PCs that seem to have this option (image below) to flip the entire virtual camera. Thier settings are under tools > virtual cam or something like this.

I'm not sure if they have some kind of plugin that I don't or what's up. Is there a way to do this?

If you highlight the virtual camera, then in the top ribbon go to Edit>Transform>Flip Horizontal. There doesn't seem to be a properties or right click option from the dashboard, if you will.


text:
How to select the first frame of a clip?
I want to select this frame right here, can I do it?

This happens all the time where I have two clips together and I have a transition in between them. Now I want to tighten up the transition by removing some frames from the clips on either side. Here is what I do:

Delete the transition.
Select the clip on the right (or the left).
Click again to get the first frame.
Use the , and . keys to nudge/extend that edge of that clip.
Reconfigure and re-add the transition.

Getting this right can require repeating this process maybe 5 or 10 times.

Up-arrow will do the trick. Down-arrow takes you to the first frame of the next clip.
Trick: if you're looking for the last frame of a clip, go to the start of the next one, then use back-arrow once to move back a frame.


text:
How to efficiently create a video from an mp3 and a single jpeg using ffmpeg?
I have a 329MB MP3 file and a 200K JPEG image, which I'd like to combine into an MP4 file which simply plays the MP3 with the image in the background.
The way I go about it today is by using FFMPEG with the following command:
ffmpeg -loop 1 -i "$image" -i "$audio" -c:a copy -c:v libx264 -shortest output.mp4
This, however, generates a 818MB MP4 file - Taking a long time to encode, network bandwidth to upload later on, etc.
What's a more efficient way of creating the file, so the output is also of a smaller size? Surely there must be a way to get a video file which doesn't need to inflate the overall size by that much?

The best I could find was adding the -r 1 parameter, to indicate a lower frame rate. This helped quite a bit, though the output file size is still larger than I'd have expected it to be.


text:
"Non-monotonous DTS in output stream 0:0 This may result in incorrect timestamps in the output file." error
Adding all mp4 file in the directory with FFMPEG .
my usual command:
ffmpeg -f concat -safe 0 -i <(for f in ./*.mp4; do echo "file '$PWD/$f'"; done) -c copy output.mp4

This shows below problem sometimes.
Now what do i need to do to resolve this problem?
[mp4 @ 0x556a367c4200] Non-monotonous DTS in output stream 0:0; previous: 26783482, current: 16149020; changing to 26783483. This may result in incorrect timestamps in the output file.
[mp4 @ 0x556a367c4200] Non-monotonous DTS in output stream 0:0; previous: 26783483, current: 16150020; changing to 26783484. This may result in incorrect timestamps in the output file.
[mp4 @ 0x556a367c4200] Non-monotonous DTS in output stream 0:0; previous: 26783484, current: 16151020; changing to 26783485. This may result in incorrect timestamps in the output file.
[mp4 @ 0x556a367c4200] Non-monotonous DTS in output stream 0:0; previous: 26783485, current: 16152020; changing to 26783486. This may result in incorrect timestamps in the output file.
[mp4 @ 0x556a367c4200] Non-monotonous DTS in output stream 0:0; previous: 26783486, current: 16153020; changing to 26783487. This may result in incorrect timestamps in the output file.
[mp4 @ 0x556a367c4200] Non-monotonous DTS in output stream 0:0; previous: 26783487, current: 16154020; changing to 26783488. This may result in incorrect timestamps in the output file.
[mp4 @ 0x556a367c4200] Non-monotonous DTS in output stream 0:0; previous: 26783488, current: 16155020; changing to 26783489. This may result in incorrect timestamps in the output file.
[mp4 @ 0x556a367c4200] Non-monotonous DTS in output stream 0:0; previous: 26783489, current: 16156020; changing to 26783490. This may result in incorrect timestamps in the output file.
[mp4 @ 0x556a367c4200] Non-monotonous DTS in output stream 0:0; previous: 26783490, current: 16157020; changing to 26783491. This may result in incorrect timestamps in the output file.
[mp4 @ 0x556a367c4200] Non-monotonous DTS in output stream 0:0; previous: 26783491, current: 16158020; changing to 26783492. This may result in incorrect timestamps in the output file.

I have tried Multiple solutions:
ffmpeg -safe 0 -f concat -segment_time_metadata 1 -i <(for f in ./*.mp4; do echo "file '$PWD/$f'"; done) -vf select=concatdec_select -af aselect=concatdec_select,aresample=async=1 -c copy output.mp4

ffmpeg -f concat -safe 0 -use_wallclock_as_timestamps 1 -i <(for f in ./*.mp4; do echo "file '$PWD/$f'"; done) -acodec copy -vcodec copy output.mp4

ffmpeg -f concat -err_detect ignore_err -safe 0 -i <(for f in ./*.mp4; do echo "file '$PWD/$f'"; done) -c copy output.mp4

ffmpeg -f concat -safe 0 -i <(for f in ./*.mp4; do echo "file '$PWD/$f'"; done) -filter_complex "[0:v] [0:a] [1:v] [1:a] [2:v] [2:a] concat=n=3:v=1:a=1 [vv] [aa]" -map "[vv]" -map "[aa]" -c copy output.mp4

I have tried from

https://stackoverflow.com/questions/57167127/non-monotonous-dts-in-output-stream-00-this-may-result-in-incorrect-timestamps
https://stackoverflow.com/questions/53021266/non-monotonous-dts-in-output-stream-previous-current-changing-to-this-may-result

But none of their solutions worked for me.

This is due to the different configurations/formats of your input files, like fps. You need to convert all the files to the sample configuration.
You can refer to my answer here.


text:
Roll up line in After Effects?
I'm trying to make the next effect in AE:

Take the 1st string of guitar and 'broke it', transforming line into a spiral, like this:

What is the fastest and optimal way to do this? Thanks!

Make a spiral like this:

Keyframe it back to a straight line.
If you need more control, you could auto-trace it, and then manually reshape the traced path back to a straight line?


text:
Duplicating every frame with ffmeg
I plan to do some stop motion animation and would like to shooot in twos - basically shooting at 12fps and duplicating every frame.  I can do this with the camera, but was wondering if there isn't some way to do it with ffmpeg?


text:
Lengthening a song when producing a slide show on my new MacBook Air
I'm producing a slide show on my new MacBook Air but my song is too short.  Is there a way to lengthen my 2-minute song to maybe 3+ minutes without making it sound edited?

You could probably time stretch it a bit without anyone noticing, but trying to stretch the length by 50% would be too much for any algorithm.
You best bet would be to edit in one of the verses or choruses twice. If the song has sufficient similarity at your cut points you can make this totally seamless. If the cuts don't match perfectly, you can add a little cross-fade to smooth it out. This is pretty easy in any modern audio editor.


text:
Importing a PSD into After Effects, can't retain the layer sizes
I'd like to know how can I import a PSD file into AE keeping the size of the PS layers. When I import my PSD as a composition all layers are created with the size of the composition itself and don't fit to the original size of each shape (image) contained in them, although I'm using the "preserve layer sizes" option. So, the images keep their size, but the layer where they are contained in the composition shows a lot of useles transparency that, besides, becomes an annoyance when I need to resize the layer.
If I open the PSD with GIMP (and if I'm not wrong) I'd say that I can see the layers fit exactly the size of the pixels and alpha channel, not the whole image, as it should be.
Maybe I'm doing something wrong in PS?
Thanks in advance.


text:
Trapcode sphere

I'm trying to achieve this effect on After Effects with Trapcode Form plugin, because it's particles around the edges with hollow center, I thought it's got to be the spherical field, so I created box-string base form and cranked up the spherical field and I ended up with similar result

how ever soon I realized the strings around the circle is in segments rather than a continuous line, it becomes more obvious when it's in motion, I'm curious to know how it's supposed to be done, thanks!!!

The "Ring Emitter" preset in Trapcode Particular gets pretty close to this - you could probably use it as a starting point.
Look in the Presets tab on the left under "Spline Primitives".


text:
What's the type of blur in this?
In this video,
I'm curious about the type of blur used in the photo below.

I think it's not a Gaussian Blur(Because Gaussian Blur looks like this

or a Direction Blur(Because Direction Blur looks like this

), but it's not flat.

The third image looks a bit like a Radial Blur. The others could be a Camera Blur in After Effects

Having watched the video, it looks a lot like the Red Giant Chromatic Abberation plugin:
https://www.maxon.net/en/red-giant/universe/chromatic-aberration

But that has no rgb split, that has only blur.


text:
Create custom properties in After Effects?
I am dabbling in After Effects and I thought I'd create a sequence that mimicks how an old camera focused. This means I need to do the following:

Offset some layers in one direction, others in other directions
Apply blur effects to layers

All this has to be animated.
Now, since I'm a complete beginner, and I just found out about the NULL object, I did the following:

Added a NULL object to my composition
Linked the x-position of one of my layers to the x-position of the NULL object, and then adjusted the expression so that it moves in the direction
I then linked the blur amount to the same x-position of the NULL object

Now, I have made all the layers, they move and blur exactly like I want. Additionally, I can animate this single x-position of the NULL object to get all the other layers to animate like I want.
However, I now want to adjust the blur strength. If I want to keep the blur amounts linked to the x-position, is there a way for me to add a new custom property somewhere, like a number, and then incorporate this property into the expressions?
This is what the expression looks like now:
Math.abs(thisComp.layer("TRANSFORM").transform.xPosition)*10

rather than just adjusting the 10 there, in all those expressions, I would like to have a property somewhere so that I could do:
Math.abs(thisComp.layer("TRANSFORM").transform.xPosition)*thisComp.layer("TRANSFORM").Factor

Like, naively what I looked for:

Right-click the NULL object, "Add custom property", name it Factor, then go back to all those expressions and add support for this property?

Or do I just need to (ab)use one of the other properties of the NULL object as my scaling factor in this case? I could of course just link the blur amount to the y-position, but I'd rather have to animate just one and have them all linked.
Is there such support? If so, where? Or am I perhaps not making any sense whatsoever?
Or, if what I want to accomplish is in fact easier or rather "more appropriately" done in a completely different manner, feel free to school me in the comments, as long as you guide me in the right direction :)

Apoligies if this is obvious, but couldn't you use a slider as the controller for all of these things, then connect the slider to your position and blur controls with the appropriate mathematical factors on the position and blur expressions?

I didn't know about the slider and sibling controls. I do now, if you want to leave it as an answer I would be happy to accept it.


text:
Is there a way to name/label inputs in ffmpeg, instead of using input number?
I'm writing a program to automate building of an ffmpeg command line.
One thing that is challenging me is that ffmpeg uses index numbers to identify the input sources.  It would be easier if there was a way I could name or label the input sources, which would make constructing -filter_complex arguments a whole lot easier.
Is there some way to name/label the inputs in ffmpeg?

Not possible...

Maybe is there some sort of filter that does nothing, allowing me to map an indexed input to a labeled/named output?

Yes, e.g. [4:v]null[logo] and [6:a]anull[jingle]

Credit to @Gyan - the answer I was looking for, name each numbered input via the null filter:
These would go at the beginning of a filter_complex
[0]null[sourcevideo];[1]null[qrcode];[2]null[logo];

There are a variety of null filters. This example application would, I think, not grab the audio tracks. So, you couldn't theoretically later use [logo:a] or [logo:v] in the same way you use [0:v][0:a]. You'd have to pass both with something like this: [0:v][0:a]null[logov][logoa]   I'm playing with this now, so might provide an answer if I run into anything specific.

The other answer (Duke's) suggests using the null filter, however, there are a variety of "null" filters and the null filter alone won't cover every use case. Take Duke's example filter graph:
 [0]null[sourcevideo];[1]null[qrcode];[2]null[logo];

[sourcevideo] will not contain the audio track, so, you couldn't theoretically later use [sourcevideo:a] or [sourcevideo:v], though [0:a] would still be available to you. You also can't pass both with something like this: [0:v][0:a]null[sourcevideov][sourcevideoa]. null takes only one input and cannot take audio inputs. You'd have to use anull to get the audio track in the same way. Using the same assumed inputs, a filter graph that also grabs the first input's audio would look something like this:
 [0]null[sourcevideov];[0]anull[sourcevideoa];[1]null[qrcode];[2]null[logo];

Notice the use of anull for the [0] input audio track. Look through that link and you can probably imagine a few other instances where you might need to use a different "null" filter, but, in general, the null filters can be used to rename inputs.


text:
Generate a sound wave in After Effects that changes colour over time via an expression
I'm trying to find a way to generate a sound wave animation where the colour of the wave being generated changes as the person speaking swaps over.  I can do this with text just fine, and I have expressions to switch over based on some keyframes, but I cannot work out how to do this on an audio waveform.
After Effects' built-in Audio Waveform plugin can switch colour, but it changes the entire waveform when you animated it.  I want existing waves to stay one colour when new audio after the keyframe should be a different colour.
I tried using Trapcode Particular with Sound Keys.  I analysed the amplitude of my audio, and made a null which is modified in the Y-axis as the amplitude changes.
I want the waveform to look as much as possible like the built-in Audio Waveform- ie an amplitude and time graph moving over time, and ideally would be symmetrical about its X axis.
I set Particular to emit a directional stream of Streaklet particles, and increased the Wind on the Y axis to "blow" them along.  But as they blow along, they compress down over time.
Example below - top line is Particular, lower line is Audio Waveform:

I've tried adjusting many other values - air resistance is zero, mass at very low numbers - nothing seems to achieve the right effect.
Is there a way to do this?  Or another way entirely?
Many thanks

I don't know, well, anything about the tools you are using, but looking at the video, are you sure it is getting shrunk down over time? It looks to me like it might be moving into the distance on the z-axis.


text:
Why is audio coming out of only one ear in my headphones in this multicam sequence?
I've set the original audio to mono, and the multicam sequence is also mono. The original clip comes through both ears in the headphones, but in the multicam sequence it doesn't. This video will make things more clear:

Thank you.

I think it does this by default.
As you are only using one channel of audio, it only plays from one of your two speakers.
If you want to hear it from two speakers, your sequence is going to need to have two channels, and then your mono audio track needs to be set centrally between those two channels.
The way I usually resolve this is to drag my multicam sequence into a "normal" sequence, then adjust the pan controls on that clip. For some reason, the pan controls are often set to be keyframe enabled (animated), so turn that off before you start editing, otherwise you'll have to disable it individually in every clip you cut.
Also, multicam editing is still buggy.  If you have any weirdness and don't need the audio to reflect your camera cuts, I often just make sure my "normal" sequence has identical settings to my multicam sequence (apart from the number of channels), then just bring the audio into the normal sequence as a normal clip.
Any other multicam weirdness is usally resolved by restarting Premiere.


text:
(How) is it possible to stabilize video suffering from this type of shaking?
I have a few videos which are quite shaky: similar to this one:

These are shot with DJI's Action2, which has a fixed aperture of f/2.8.
The main problem here is EIS and DJI's algorithm: in auto mode it always aims to bring EV at 0.
How does it solve this? First it increases ISO to maximal 12800. When this is not enough, it raises the shutter speed to somewhat maximum of 1/30.
However this is a huge drawback, as EIS needs much shorter shutter speeds, typically around 1/100 or even shorter.
Now I can set the exposure manually to have a constant shutter speed of 1/100, and a semi-auto ISO between 100-12800, and this brings back EIS to life. I wish to keep it on auto, as if I forget to change back once I'm shooting in a bright sunny day, 1/100 with f/2.8 and ISO 100 will result overexposed shots.
Taking a bit step further my videos are more similar to this (bit longer) one:

, please check it from 38th second, you can see these artifical ligths are shaking:

Whereas in just a few milliseconds later:

I wish to know if there is a way to stabilise these kind of artifacts with FinalCut.
I tried to enable Stabilization with various methods, but it seems it just can't realise what I wish to achieve.
I might have to try with AfterEffects, but first I'd need some directing, if this is at all possible. (I would be amazed if not, since Google can even make photos moving these days..)

Every example video they show on their product page is shot in bright daylight, except for a couple which have very low movement, and no artificial light spots in view.
The artefacts you're seeing are from the camera trying to stabilise the footage in software - the smearing is when it fails to do so. From their site:

"HorizonSteady keeps your footage level, no matter how wild the action
gets. From go-karting to dirt biking, DJI's built-in stabilization
algorithm detects and corrects camera shake and rotation in
real-time."

At lower shutter rates with this kind of camera, you're either going to get noisy under-exposed footage with motion blur, or buy a gimbal to smooth out the jumps.  There's not a software solution to fix that amount of blurring that I'm aware of.

Thank you. DJI actually has a bug in their EIS firmware when using with Auto-Exposure settings: it enables going lower shutter speeds than EIS requirements, so it creates these artifacts. I'm trying to convenience them to prioritize EIS limits over 0.0 EV in low-light conditions, but I'm also seeking for post-solutions, if I they won't offer solution. Gimbal is a no-go for me, I'm not a professional shooter :)

Even their pocket gimbals might give better results if you sell this one (but I haven't used them for a while)

Yes, for sure, as gimbals don't need light for stabilization. I like this camera because it's small.


text:
Intra-refresh mode in x264 encoder causes browser's player freeze
I'm building low delay live streaming with use webrtc. My server application use gstreamer and UDP as transport. It works fine except that lost UDP packets leads to too long drops. To improve user experience I enabled intra-refresh mode of gstreamer's x264enc. It should lead to more flat bitrate and faster picture restoring in case of lost UDP packets.
But browser's player works fine until the first dropped packet and then it freezes and does not decodes anything. I tried chrome/safari/firefox and the result is same.
I believe video decoders in browsers should process that kind of video streams.
Maybe I should add some additional option to x264enc or I can somehow diagnose the problem with player on lower level?
Options I use now:
x264enc bitrate=10000 pass=qual intra-refresh=1 speed-preset=1 tune=zerolatency

Don't use intra-refresh with WebRTC - no implementation supports it, they all will wait for a full-blown IDR frame


text:
Trapcode Form - imported OBJ has additional unwanted edges
I created the below semi-truncated octahedron in blender and exported the object has a .obj file for use in Trapcode Form.

However, when I import the model into Trapcode Form and select Particles From: Edges, the below shape is rendered.

As you can hopefully see, it has added two bisecting lines to each of the truncated faces (one horizontal one vertical), as well as adding additional asymmetrical edges below each truncated face.
I have viewed my .obj in multiple viewers, both as solid and mesh, and none of them show these edges existing. Is there a way to prevent these from being created in Trapcode Form? I'm a little lost as to what could be causing this.

I believe that Form works from vertices not edges, so it is just looking for the nearest vertices and drawing lines between the points. I’m not sure that there is a way to control this.


text:
FFMPEG VMAF consistently low rating despite quality encode
I've seen similar issues but can't seem to come to a resolution myself.
I have a 4K rip that is in hevc, 10bit depth, which my older phone can't play since it lacks GPU acceleration. Therefore, I'm reencoding it on ffmpeg to a YUV420p scheme. I've done this by GPU acceleration and without, at multiple qualities and bitrates. I figured I'd measure each output against the original video and simply use the one with the higher VMAF score as the one I use to reencode some other 4K videos with the same 10bit depth.
However, the VMAF score for every output, whether CPU or GPU encoded, 1M or 10M bitrate, is somewhere around 32.2%. This is despite the fact that the higher bitrate ones generally look pretty decent. After looking around, I saw that some people recommend using a filter for setpts=PTS-STARTPTS to sync up the frames, since maybe the encoding process desynced some frames? This still doesn't help.
Here's where it gets weird. I looked in the log when running the VMAF filter to pick one frame in particular and test it. I found one frame where the VMAF score reported a score of 0.0000:
    <frame frameNum="487" integer_motion2="7.639184" integer_motion="9.133736" integer_adm2="0.516201" integer_adm_scale0="0.902589" integer_adm_scale1="0.619710" integer_adm_scale2="0.445753" integer_adm_scale3="0.428904" integer_vif_scale0="0.443259" integer_vif_scale1="0.513409" integer_vif_scale2="0.532767" integer_vif_scale3="0.533751" vmaf="0.000000" />

Then in ffmpeg I ran a command to extract this frame in both source and encoded with something like:
.\ffmpeg.exe -i "(sourceVid)" -vf "select=eq(n\,487)" -vframes 1 source.png"

to just get a sample of the frame that VMAF has ranked at 0. Looking at the two pngs, they seem identical to the eye. When running the two pngs through VMAF in ffmpeg, they report a score of 98, which is what I actually expect and is obviously not 0.
This is driving me mad. I can't tell why VMAF would keep reporting a much lower rate than expected. It does seem like an issue with frame syncing, but I can't see a way to resolve it. Any help would be appreciated

Have you checked this https://stackoverflow.com/questions/67598772/right-way-to-use-vmaf-with-ffmpeg and is it any help?

Please also see: https://github.com/Netflix/vmaf/blob/master/resource/doc/ffmpeg.md

I checked both of these and it didn't help, but, after swapping the sources i'm getting better scores (75-99). I'm not sure why this is working, since now my sources are backward. Code is ffmpeg -i "distorted.mkv" -i "reference.mkv" -frames:v 2000 -filter_complex '[0:v]setpts=PTS-STARTPTS[a];[1:v]setpts=PTS-STARTPTS[b];[b][a]libvmaf=model_path="model.json"', whereas before a and b were swapped, as I thought would be correct (distorted comes first). I'm not sure why this is happening, but it seems when the sources are back-to-front from what they should be, VMAF scores are more reasonable

I've noticed that sometimes either the encoder or FFmpeg itself likes to drop frames they deem as duplicates, possibly with the intent that a decoder will just display the same frame multiple times on playback and thus saving some bitrate by not having to encode the same frame twice (or more). This doesn't play nice with calculating VMAF or other metrics afterwards due to desynchronization of frames between the reference and target files, leading to invalid scores because different frames are being compared.
To get around this, I've started adding -fps_mode passthrough to my encoding commands (-vsync 0 for FFmpeg versions prior to 5.1). This way all frames are passed on as-is.
To see if this is the issue affecting you, simply count the number of frames in your files. This can be done with ffprobe:

ffprobe -v error -count_frames -select_streams v:0 -show_entries stream=nb_read_frames -of default=nokey=1:noprint_wrappers=1 -threads auto input.mp4


text:
What adapter do I need to merge two microphones as L and R channels?
I have a video camera and two lavalier microphones which both come with 3.5mm audio connections. My camera only has one 3.5mm microphone input port. I would like to mix both microphones, which are originally mono, by channeling them into the left and right channels on the camera directly. I do not want to use a mixer, since it is heavy and expensive.
My question: which audio splitter cable do I get to make this happen? Reason I’m asking is most splitters are designed either for dual headphone output or for combined headphone output+microphone input. I need an adapter with two microphone inputs, which takes the left channel from one connection and right channel from another. Does such a thing even exist?

"It depends"… on a lot of things. There's no standard pinout for a video camera mic port nor one for a mic, so we cannot even guess from the info provided. See https://service.shure.com/s/article/how-do-i-connect-a-professional-microphone-to-a-camcorder?language=en_US for a whole lot of other reasons it might or might not work with a passive splitter.

This is a tricky question, and much depends on the specifics of your camera and the microphones you're using. Without those details, it's impossible to make specific recommendations.
In broad strokes, here are some things you need to consider:

Do your lavalier microphones require power? Most condenser lavs do, and that has to be supplied through the cable and connector (often TRRS, for tip ring ring sleeve). You'll have to make sure that whatever splitter contraption you work up gets power to both lavalier mics if needed.
Does your camera offer independent manual record levels for the left and right mic inputs? If not, you'll be setting one record level for both microphones. This may create a large volume difference between the mics (which you should be able to make up for in post).
Do you want a splitter contraption hanging off your camera? Those 3.5mm jacks are notoriously flimsy, and the more stuff you attach to them the greater the risk. At least put your splitter(s) on a short cable and tape everything so it doesn't get snagged and break your camera.

You're not the first to face this problem, obviously, so keep researching solutions other people have come up with. At least splitters are inexpensive, so you're not out a lot of money if your first attempt or two fails.
A shoe-mount mixer sure would be a tidy solution...

Yes, both senders and receivers are battery-powered. 2. We can assume the levels can be adjusted in post. 3. Yes I do. I 3D print various camera attachments that go around the camera. In this case it will be a cold shoe mount that will have additional cold shoe mounts for the two mics.


text:
ffmpeg combine multitrack audio
I have three audio files which I am attempting to combine into a multitrack audio file.
ffmpeg -i A.wav -i B.mp3 -i C.wav -map 0 out.mp4

But the result seems to be (testing with ffmpeg -i) just a single track.
It is possible to get all tracks?

Is this what you're looking for?
ffmpeg -i A.wav -i B.mp3 -i C.wav -c copy -map 0:a -map 1:a -map 2:a out.mp4


text:
ffmpeg concat vob files not working?
I am trying to convert dvd .VOB files (unencrypted) to .mp4, but first want to concat them
...  I made a text file:
file './VTS_01_1.VOB'
file './VTS_01_2.VOB'
file './VTS_01_3.VOB'
file './VTS_01_4.VOB'

And then ran: ffmpeg -f concat -safe 0 -i vobs.txt -c copy output.vob
I got a bunch of mentions about invalid frame dimensions-- here is the actual output:
ffmpeg version 5.1.2 Copyright (c) 2000-2022 the FFmpeg developers
  built with Apple clang version 14.0.0 (clang-1400.0.29.102)
  configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/5.1.2 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-neon
  libavutil      57. 28.100 / 57. 28.100
  libavcodec     59. 37.100 / 59. 37.100
  libavformat    59. 27.100 / 59. 27.100
  libavdevice    59.  7.100 / 59.  7.100
  libavfilter     8. 44.100 /  8. 44.100
  libswscale      6.  7.100 /  6.  7.100
  libswresample   4.  7.100 /  4.  7.100
  libpostproc    56.  6.100 / 56.  6.100
Input #0, concat, from 'vobs.txt':
  Duration: N/A, start: 0.000000, bitrate: N/A
  Stream #0:0: Data: dvd_nav_packet
  Stream #0:1: Video: mpeg2video (Main), yuv420p(tv, top first), 720x480 [SAR 32:27 DAR 16:9], 29.75 fps, 59.94 tbr, 90k tbn
    Side data:
      cpb: bitrate max/min/avg: 8300000/0/0 buffer size: 1835008 vbv_delay: N/A
  Stream #0:2: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
Output #0, svcd, to 'output.vob':
  Metadata:
    encoder         : Lavf59.27.100
  Stream #0:0: Video: mpeg2video (Main), yuv420p(tv, top first), 720x480 [SAR 32:27 DAR 16:9], q=2-31, 29.75 fps, 59.94 tbr, 90k tbn
    Side data:
      cpb: bitrate max/min/avg: 8300000/0/0 buffer size: 1835008 vbv_delay: N/A
  Stream #0:1: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
Stream mapping:
  Stream #0:1 -> #0:0 (copy)
  Stream #0:2 -> #0:1 (copy)
Press [q] to stop, [?] for help
frame=    0 fps=0.0 q=-1.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=N/[svcd @ 0x15c023e40] Timestamps are unset in a packet for stream 0. This is deprecated and will stop working in the future. Fix your code to set the timestamps properly
frame=17685 fps=0.0 q=-1.0 size=  499968kB time=00:12:16.90 bitrate=5558.0kbits/frame=37385 fps=37385 q=-1.0 size= 1000448kB time=00:25:58.47 bitrate=5258.8kbit[mpeg2video @ 0x15c005d10] Invalid frame dimensions 0x0.
    Last message repeated 9 times
[svcd @ 0x15c023e40] Non-monotonous DTS in output stream 0:0; previous: 144980089, current: 144980089; changing to 144980090. This may result in incorrect timestamps in the output file.
frame=68424 fps=45616 q=-1.0 size= 1065984kB time=00:42:44.01 bitrate=3405.8kbit[mpeg2video @ 0x15c005be0] Invalid frame dimensions 0x0.
    Last message repeated 10 times
[svcd @ 0x15c023e40] Non-monotonous DTS in output stream 0:0; previous: 289151513, current: 289151513; changing to 289151514. This may result in incorrect timestamps in the output file.
frame=98383 fps=49191 q=-1.0 size= 1092608kB time=00:58:42.71 bitrate=2540.8kbitframe=131893 fps=52756 q=-1.0 size= 1122304kB time=01:16:35.18 bitrate=2000.8kbi[mpeg2video @ 0x15c005880] Invalid frame dimensions 0x0.
    Last message repeated 3 times
[svcd @ 0x15c023e40] Non-monotonous DTS in output stream 0:0; previous: 439137237, current: 439137237; changing to 439137238. This may result in incorrect timestamps in the output file.
frame=164495 fps=54830 q=-1.0 size= 1151232kB time=01:33:58.44 bitrate=1672.6kbiframe=182556 fps=55587 q=-1.0 Lsize= 1167534kB time=01:43:36.26 bitrate=1538.6kbits/s speed=1.89e+03x
video:1097216kB audio:55703kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.267720%

The output.vob file is only 1.2gb, where I am expecting it to be close to 4gb, and when I play it, it appears to be missing all the content from VTS_01_2, VTS_01_3, and VTS_01_4.
The source material seems to be fine, if I drag the VIDEO_TS folder containing these files to VLC, or DVD player, it plays fine all the way through.......
What am I doing wrong?

I ended up converting each vob to mp4 and then combined them the same way and it seemed to have solved the problem.

Try to precise output format :
ffmpeg -f concat -safe 0 -i vobs.txt -c copy -f dvd output.vob


text:
after effects 2023 (latest) and deadline
Testing a move to AWS Thinkbox Deadline (10.1.23nnn) for the VFX studio I work at.  Just rolled updates to Adobe After Effects, which moves the version to 2023--causing all manner of references to "23" to fail on my tests.  Is there a straightforward way to "line up" these versions?
Thanks,
PGE


text:
FFMPEG xstack output flickering between inputs
I am leveraging ffmpeg (specifically the python-ffmpeg lib) to take two mp4 inputs, partially overlay them using xstack and output the combined mp4. This is mostly working but I consistently am getting the undesired effect of the overlapping cross-section flickering back and forth between the two inputs.
I first thought this might be happening because the inputs have different bitrate values. I tried to force the bitrates of the individual inputs to be as close as possible using b:v, minrate, maxrate, and bufsize. I have been unable to get identical bitrates this way but got them very close but it did not affect my flickering symptoms.
Does anyone have any suggestions for preventing this flickering side-effect for overlapping inputs?
ffmpeg -f mp4 -rtbufsize 50M -thread_queue_size 512 -i /shared-storage/video/2/2.mp4 -f mp4 -rtbufsize 50M -thread_queue_size 512 -i /shared-storage/video/2/1.mp4 -filter_complex "[0][1]xstack=fill=#171f29:inputs=2:layout=628_172|26_26[s0];[s0]scale=1920:-2[s1];[s1]yadif[s2]" -map "[s2]" -b:v 1200k -bufsize 1200k -c:v libx264 -color_primaries 1 -color_trc iec61966_2_1 -colorspace 1 -maxrate 1200k -minrate 1200k -pix_fmt yuv420p -threads auto -x264opts "keyint_min=1:keyint=1" /shared-storage/video/2/Untitled.mp4 -report -y

[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7686e80] All info found
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7686e80] After avformat_find_stream_info() pos: 136186 bytes read:169955 seeks:2 frames:1
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/shared-storage/video/2/2.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf59.16.100
  Duration: 00:00:54.00, start: 0.000000, bitrate: 1084 kb/s
  Stream #0:0[0x1](und), 1, 1/16384: Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709/bt709/iec61966-2-1, progressive), 864x788, 1084 kb/s, 1 fps, 1 tbr, 16384 tbn (default)
    Metadata:
      handler_name    : VideoHandler
      vendor_id       : [0][0][0][0]
Successfully opened the file.
Parsing a group of options: input url /shared-storage/video/2/1.mp4.
Applying option f (force format) with argument mp4.
Applying option thread_queue_size (set the maximum number of queued packets from the demuxer) with argument 512.
Successfully parsed a group of options.
Opening an input file: /shared-storage/video/2/1.mp4.
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7694940] Opening '/shared-storage/video/2/1.mp4' for reading
[file @ 0x76ffc80] Setting default whitelist 'file,crypto,data'
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7694940] ISO: File Type Major Brand: isom
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7694940] Unknown dref type 0x206c7275 size 12
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7694940] Processing st: 0, edit list 0 - media time: 0, duration: 884736
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7694940] Before avformat_find_stream_info() pos: 7261674 bytes read:33817 seeks:1 nb_streams:1
[h264 @ 0x76af480] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x76af480] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x76af480] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x76af480] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x76af480] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 0x76af480] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x76af480] Format yuv420p chosen by get_format().
[h264 @ 0x76af480] Reinit context to 864x800, pix_fmt: yuv420p
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7694940] All info found
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7694940] After avformat_find_stream_info() pos: 134991 bytes read:168760 seeks:2 frames:1
Input #1, mov,mp4,m4a,3gp,3g2,mj2, from '/shared-storage/video/2/1.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf59.16.100
  Duration: 00:00:54.00, start: 0.000000, bitrate: 1075 kb/s
  Stream #1:0[0x1](und), 1, 1/16384: Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709/bt709/iec61966-2-1, progressive), 864x788, 1075 kb/s, 1 fps, 1 tbr, 16384 tbn (default)
    Metadata:
      handler_name    : VideoHandler
      vendor_id       : [0][0][0][0]
Successfully opened the file.
[Parsed_xstack_0 @ 0x76fec40] Setting 'fill' to value '#171f29'
[Parsed_xstack_0 @ 0x76fec40] Setting 'inputs' to value '2'
[Parsed_xstack_0 @ 0x76fec40] Setting 'layout' to value '628_172|26_26'
[Parsed_scale_1 @ 0x76a3100] Setting 'w' to value '1920'
[Parsed_scale_1 @ 0x76a3100] Setting 'h' to value '-2'
[Parsed_scale_1 @ 0x76a3100] w:1920 h:-2 flags:'' interl:0
Parsing a group of options: output url /shared-storage/video/2/Untitled.mp4.
Applying option map (set input stream mapping) with argument [s2].
Applying option b:v (video bitrate (please use -b:v)) with argument 1200k.
Applying option c:v (codec name) with argument libx264.
Applying option pix_fmt (set pixel format) with argument yuv420p.
Successfully parsed a group of options.

Add option threads=1 to xstack filter, that way overlaps will have consistent output.

I tried this and it seemed to have no effect, doesn't the threads option only affect how many threads FFMPEG uses during execution?

This solution worked perfectly for me.


text:
How to make lights flash like in stranger things
So i have this scene where there's a lot of on tube lights and i wanna dim some of them and turn them back on (replicating the flashing effect in stranger things) so does anyone have an app that can do that? Do make sure to tell me how to do it in said app please.

Can you find a clip of what you are talking about, and add it into your question. If you can, also add a clip of your footage.  When you say tube, do you mean fluorescent lights? Or tube like a metro station? Also add what platform you're working on, what software you have access too, etc.

This is the kind of thing they use these days -

It looks like a 'neon' or fluorescent tube, but it's actually LED driven. They can be remotely controlled or programmed into virtually any pattern, any colour. They drive from a phone/pad app or over DMX.
In the old days, they'd have to use actual fluorescent tubes, individually switched, some with intentionally bad starters to make them flicker. They were horrible to work with because they weren't really very controllable, so it's LED all the way now.
Downside: They're damned expensive - $£€ 650 each - but you can rent them.
Example - https://astera-led.com/products/titan/
& watch the video to really see what they can do -


text:
How to export video in DaVinci Resolve 18 without (!) reencoding?
I need to cut a video in Resolve 18 and export it. The video is already in the format and encoding I want it to have, I just need to cut out  some parts. After that, I want the file to be saved. Quality is not a priority here, speed is! So I want to simply write the cut file back to an mp4-file within a matter of a few minutes on my 2016 macbook pro (i5). The clip is a simple Zoom-recording in a mp4-container.
Whatever I try to do in the Deliver page, Resolve always starts re-encoding the file, taking 1-2 hours for a clip. How to simply export/write out the cut clip?

Sadly, that is a must, you can't just "cut out" a part wihtout reeconding. It is possible to sometimes stitch together parts with tools like ffmpeg, but besides that, you'll always have to reencode.

Thank you, I'm moving to LosslessCut


text:
Choosing the right program for video editing
I've used Premiere and After Effects in the past, but I'm still somewhat unclear as to the different roles and responsibilities of each program in the process. When I need to mix audio, I do everything in SONAR or Garage Band, etc. When I need to do video, I have to figure out whether to use After Effects or Premiere.
It seems that After Effects is more for developing animations, but what's its point then? Can't its functionality be implemented within something like Premiere to make it all accessible from the same place?
Here's my goal. I have a ton of high-resolution images and HD video that I recently shot while on vacation. I'd just like to do simple things like start from black, fade in a SVG image, then fade in a video clip underneath it, all set to music. I'd then like to linearly change from pictures to video, etc. How should I go about doing this? Premiere or After Effects, or both?

Your goal is best accomplished with Premiere Pro!
They are actually completely different, though I didn't see the difference until I learned them both well.
Adobe Premiere Pro:

Clip video and audio together...
(Mix audio, mix video)...
Color Correct
Add nice transitions...
Add many different effects, with animations and keyframes...
easy.

Adobe After Effects:

Add explosions
Add other special effects
Add 3D objects
Add any 2D effect you can imagine
Color Correct to balance your effects (though the last color correction should be done when compositing in Premiere Pro)

Any professional DAW: (Only do this if you are intending to make a blockbuster.)

Make the raw video in a video editing program, and bring it over here to add the audio.
Do all the audio here.

Vegas Pro:

Mix audio (it was originally made as a DAW.)
Do a little bit of Adobe Premiere Pro stuff...
Do a little bit of Adobe After Effects stuff...
Do a little bit of DAW stuff.
easy.

That's it. Do the special effects in After Effects, and all the clipping and color correction in Premiere Pro. If you're new to video, then Vegas Pro is easier to do much of what you can do with Adobe. But when you've learned a bit, Vegas will be a obstacle in your way of creating what your imagination says. And as you already know After Effects and Premiere Pro, then you're good to go!

Vegas is a NLE, the same as Premiere, so I'm confused as to what you think Premiere can do that Vegas can't.

Premiere Pro is better, easier and more capable of doing professional work.

Did you have anything specific in mind? Because all the capabilities you listed for PPro apply to Vegas as well. Till recently, Vegas had limited ability for plugins, but with OFX support, I suspect that will change in a year or two.

@Mulvya I see that you are a Vegas Pro fan... I'd rather not have a discussion here. It's like having a discussion between a Windows guy and a Apple fanatic. None of us are going to switch anyway :P

But, the main reason why I prefer Premiere Pro, is that I like it. The reason is because I think it fits better into my workflow. I especially love the Adobe Dynamic Link feature!

I tried Vegas after a tutorial I saw to be introduced to audio many years ago. Then I stumbled into live mixing, tried to figure out what Auto-tune was, and finally learned my first DAW. The choice felt upon Ableton Live, but I'm probably doing a switch over to Pro Tools now, to do the audio for a new blockbuster.

But, when I tried Vegas Pro, I just didn't like it, because it's so different. It's not based upon the same logic you find in Premiere Pro, After Effects, Final Cut and so on..

Yeah, this is not the place for a discussion. In the answer, your description makes it sound like Vegas is some sort of bizarre hybrid. Just wanted to clarify that it's not. It's a NLE like Premiere, and does everything needed to sequence and stack audio/video/image files. It just happens to provide track-level compositing modes like in AE, and its audio tools are unusually strong for a NLE.

Adobe Premiere Pro and After Effects are very different programs. Premiere Pro (like all other NLE programs) has been designed to edit images together (moving or still). You can add clips to a timeline and play them back in real time with minimal rendering. The features that Premiere Pro has over After Effects makes editing sequences very easy and quick (obviously depending on what you are editing).
After Effects on the other hand is not designed for a video editing. You cant playback videos or sequences in real time and its very time consuming to cut together a long sequence using After Effects. The program is designed specifically for animation.
It would be very silly to use After Effects to edit together anything longer than 1 minute. Edit in Premiere and then Import your edits into After Effects:

Go into your sequence in Premiere
Select All then Copy
Switch to After Effects
Make a new Composition and open it
Paste

Call me partial, but I love Sony Vegas. I'm using the current version 11 now and it's fast and good. It's the closest thing to a serious/uncrippled editor that you'll get to the top tier stuff w/o breaking the bank. There is also a decent size community out here as well to help with the inevitable questions. No good editor will have a shallow learning curve, but once you start to get the hang of it, it's awesome!

After Effects is used for animations but it's WAY more capable than that. It's can do many things that Premiere Pro cannot do (or do nearly as well) such as tracking, 3D layout of layers, pseudo-camera angles, lighting effects, amongst a host of other things. It seems that Premiere Pro isn't particularly highly regarded in cutting video, with the pros using Avid and Final Cut Pro. However, After Effects is very much used by professionals and is used in many movies - it's one of the best tools of it's kind.
I'm just an enthusiast, but I love Premiere Pro and After Effects and it's easily capable of doing everything that you're wanting to do (as described above).

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
What is the point of the ethernet plug: SoundCraft Si Compact 32?
After searching the internet, I can't find out what the ethernet plug for the mixer is for. Can you use it to remote control the mixer from a computer? Or what is it for?

You can use the port in V2 software to trigger HiQnet Venue Presets programmed via London Architect and System Architect; the iPad app to directly control the Si Compact is still in BETA test so it's not a 'product' on the web site but you can register for information at http://www.soundcraft.com/apps/visi-remote.aspx.
If you have further questions please use the Soundcraft web site Facebook pages or contact your distributor to make  enquiries since Soundcraft do not actively participate and monitor any forums.
Regards,
Soundcraft-Studer Product Management Team

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
Can't add Motion Blur to layer imported from Photoshop
I can't enable Motion Blur on this layer:

Any ideas what could be wrong?

Thats because you have the collapse transformations button ticked:

When collapse transformations is ticked After Effects takes the options of the layers inside the 'loader' composition. So you will need to open up the 'loader' composition (double click) and then you can enable motion blur on the layers inside.
When you import Photoshop documents into After Effects as compositions, any groups in the PSD become pre-comps within AE.

If you right click your "loader"-layer and choose Pre-Compose Layer and choose Move all atributes into the new composition, you should be able to put motion blur on it.
And just a tip: If you for some reason in some situations can't use blurs, often because of motion generated by effects, you can use CC Force Motion Blur to force motion blur to your footage.


text:
Audio and Frames Not in Sync in RAM Preview
Asked this question before... having same problem.
When I go to the RAM preview of After Effects, the audio of the video will play on sync for a while, then will get screwy. Sometimes the audio will jump ahead or before it should. It is making the sound choppy and my characters sound stupid.
Please, I need a solution!

Sounds like After Effects is having a problems reading the audio from the file. I'd suggest converting the audio to a separate .wav or .mp3 and importing it back into After Effects:

Open Adobe Media Encoder
Drag the file in question into the que
Under Format select Waveform Audio File
Leave the preset at its default
Click on the yellow text under the Output File column to set the new files destination
Click the Triangle to begin encoding

Then use this new file in After Effects and it should work fine.

How would I go about doing this?

@parioscreations I've added to my answer :)

Great answer! But how do I select Waveform Audio File? I only see MP3.

I always forget which codecs are default and which I installed myself. To be able to export WAV (Waveform Audio Files) you will need Flip4Mac. But you dont have to use WAV. You could just export it as a MP3 which would work just a well

Try to convert your video into ProRes422. I guess the video codec of your source material is using some sort of compression, that After Effects is having problems with and is loosing sync.
On OSX ProRes422 comes with Quicktime or can be downloaded as a free Update for Quicktime. But if you only have a Win7 computer to work with, you can use FFMPEG: it supports ProRes422.


text:
Are there any downloadable samples of 48 fps video?
I would like to compare 24fps to 48fps video, but haven't been able to find any video samples.
Does anyone know of such samples?  Being able to compare the same video at several framerates would be lovely!

You could also make your own in an app like Motion.

Here's a short mov to demonstrate the difference, that's all I've been able to find:
http://www.stopmotionpro.com/media/video/48fps_cameramove2.mov

That's helpful, thanks.  I hope to eventually be able to compare some movie footage, to see what's the big deal about The Hobbit being 48 fps.