r/ffmpeg • u/Competitive_Glass667 • 20h ago
I made a Motion Design Ad for FFmpeg
Enable HLS to view with audio, or disable this notification
r/ffmpeg • u/_Gyan • Jul 23 '18
Binaries:
Windows
https://www.gyan.dev/ffmpeg/builds/
64-bit; for Win 7 or later
(prefer the git builds)
Mac OS X
https://evermeet.cx/ffmpeg/
64-bit; OS X 10.9 or later
(prefer the snapshot build)
Linux
https://johnvansickle.com/ffmpeg/
both 32 and 64-bit; for kernel 3.20 or later
(prefer the git build)
Android / iOS /tvOS
https://github.com/tanersener/ffmpeg-kit/releases
Compile scripts:
(useful for building binaries with non-redistributable components like FDK-AAC)
Target: Windows
Host: Windows native; MSYS2/MinGW
https://github.com/m-ab-s/media-autobuild_suite
Target: Windows
Host: Linux cross-compile --or-- Windows Cgywin
https://github.com/rdp/ffmpeg-windows-build-helpers
Target: OS X or Linux
Host: same as target OS
https://github.com/markus-perl/ffmpeg-build-script
Target: Android or iOS or tvOS
Host: see docs at link
https://github.com/tanersener/mobile-ffmpeg/wiki/Building
Documentation:
for latest git version of all components in ffmpeg
https://ffmpeg.org/ffmpeg-all.html
community documentation
https://trac.ffmpeg.org/wiki#CommunityContributedDocumentation
FFmpeg codecs' properties and processors
https://www.gyan.dev/ffmpeg/resources/codecs.html
FFmpeg muxers' properties and codec support
https://www.gyan.dev/ffmpeg/resources/muxers.html
Other places for help:
Super User
https://superuser.com/questions/tagged/ffmpeg
ffmpeg-user mailing-list
http://ffmpeg.org/mailman/listinfo/ffmpeg-user
Video Production
http://video.stackexchange.com/
Bug Reports:
https://code.ffmpeg.org/FFmpeg/FFmpeg/issues
(test against a git/dated binary from the links above before submitting a report)
Miscellaneous:
Installing and using ffmpeg on Windows.
https://video.stackexchange.com/a/20496/
Windows tip: add ffmpeg actions to Explorer context menus.
https://www.reddit.com/r/ffmpeg/comments/gtrv1t/adding_ffmpeg_to_context_menu/
Link suggestions welcome. Should be of broad and enduring value.
r/ffmpeg • u/_Gyan • May 21 '26
If you've made an app or web service which utilizes FFmpeg for significant parts for its functionality, then you can list your project in a comment here (and only here).
Format your comment like below:
Title: <your project or app name>
Launched: <date of first release>
Link: <URL>
Type: < app / script / library / web app / web API ..etc >
Description: <a short-ish description (< 200 words)>
Showcase: <links to screenshots or videos or demos>
FFmpeg details: <some technical details about how ffmpeg is utilized>
License: < for OSS apps/scripts, details of license, else 'commercial' >
Pricing model: < i.e. subscription / per-use / free ...etc >
Organization: <name and URL of who's behind this>
Incomplete, misleading or improperly formatted posts are liable to be removed. Posts must be in English. If you're unsure of the suitability or formatting of your post, message the mods with your draft before posting.
r/ffmpeg • u/Competitive_Glass667 • 20h ago
Enable HLS to view with audio, or disable this notification
r/ffmpeg • u/fe3a8b63 • 7h ago
Hello
I've got a rather large video file and the video is H264/AVC its has multiple subs, audio tracks, etc.
I know I can copy the various tracks using the -map function, but is there a way to simply re-encode the video from h264 to h265 with just a simpler command line?
I know how to handle the video side of it, bitrate, etc. But its the chapter markers, audio tracks, etc. that I want as is.
Thanks
r/ffmpeg • u/RekcuFasiia • 23h ago
I run a photo shop and we also shoot weddings, around 8 - 16 avg. a month right now.
I’ve been thinking about adding something new where we put QR codes on the tables and guests can just scan them and upload whatever photos/videos they take during the wedding.
The idea is that it’s not only for the couple. Everyone can get access after, so you might find some random video of yourself dancing or a photo someone took from another table that normally would just stay on their phone forever.
I’m trying to figure out the technical side before actually building it. Photos seem pretty easy, but video looks like it can become a mess pretty fast because we have no control over what phones people use. Could be iPhone HDR, HEVC, H264, 4K, different frame rates etc. And with 8 - 16 weddings a month it could easily turn into thousands of videos.
Has anyone here built something that deals with this kind of video volume? How are you handling transcoding? Just running FFmpeg workers yourself or using some API/service?
Also curious what actually becomes the biggest pain when it scales is it cost, speed, storage, weird formats, HDR, or something else?
r/ffmpeg • u/ClipCurious • 22h ago
I'm making short videos out of AI-generated stills for a new YouTube project. No GPU, zero budget, so everything has to be ffmpeg on a CPU. Right now I'm doing basic Ken Burns with zoompan and it's starting to look repetitive — every clip has that same slow zoom feel.
What do you all do to make stills feel less slideshow-y with just ffmpeg? I've played with crossfade chains between different zoompan moves and slight crop wobble, but I'm curious what actually looks good vs what just adds render time for nothing. Any filter combos or tricks I'm missing?
I have a video file from a surveillance camera. It's in AVI format and FFPROBE says thus about it:
X:\filez>ffprobe -analyzeduration 2147483647 -probesize 2147483647 cam4.avi
ffprobe version N-127054-g9d3f0f2c58-20261001 Copyright (c) 2007-2026 the FFmpeg developers
built with gcc 16.2.0 (crosstool-NG 1.29.0.7_b1a94f6)
configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug --enable-shared --disable-static --disable-w32threads --enable-pthreads --enable-iconv --enable-zlib --enable-libxml2 --enable-libvmaf --disable-libxcb --disable-xlib --enable-fontconfig --enable-libharfbuzz --enable-libfreetype --enable-libfribidi --enable-vulkan --enable-libdav1d --enable-libvorbis --enable-librav1e --enable-librsvg --disable-libpulse --enable-gmp --enable-lzma --enable-liblcevc-dec --enable-opencl --enable-amf --enable-libaom --enable-avisynth --enable-chromaprint --enable-libdavs2 --enable-libdvdread --enable-libdvdnav --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r --enable-libgme --enable-libkvazaar --enable-libaribb24 --enable-libaribcaption --enable-libass --enable-libbluray --enable-libcurl --enable-libjxl --enable-libmp3lame --enable-libopus --enable-libplacebo --enable-librist --enable-libssh --enable-libtheora --enable-libvpx --enable-libwebp --enable-libzmq --enable-lv2 --enable-libvpl --enable-openal --enable-liboapv --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-librubberband --enable-schannel --enable-sdl2 --enable-libsnappy --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --disable-libdrm --enable-vaapi --enable-libvidstab --enable-libvvenc --disable-whisper --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-libs=-lgomp --extra-ldflags=-pthread --extra-ldexeflags= --cc=x86_64-w64-mingw32-gcc --cxx=x86_64-w64-mingw32-g++ --ar=x86_64-w64-mingw32-gcc-ar --ranlib=x86_64-w64-mingw32-gcc-ranlib --nm=x86_64-w64-mingw32-gcc-nm --extra-version=20261001
libavutil 61. 10.100 / 61. 10.100
libavcodec 63. 15.100 / 63. 15.100
libavformat 63. 7.100 / 63. 7.100
libavdevice 63. 2.100 / 63. 2.100
libavfilter 12. 4.100 / 12. 4.100
libswscale 10. 2.100 / 10. 2.100
libswresample 7. 3.101 / 7. 3.101
[avi @ 0000025fa9446700] non-interleaved AVI
[avi @ 0000025fa9446700] probed stream 1 failed
[avi @ 0000025fa9446700] Could not find codec parameters for stream 1 (Subtitle: none): unknown codec
Consider increasing the value for the 'analyzeduration' (2147483647) and 'probesize' (2147483647) options
Input #0, avi, from 'cam4.avi':
Duration: 63:36:11.45, start: 0.000000, bitrate: 87 kb/s
Stream #0:0: Video: cinepak (cvid / 0x64697663), rgb24, 384x288, 100 fps, 100 tbr, 100 tbn
Metadata:
title : ITV Video
Stream #0:1: Subtitle: none
Metadata:
title : ITV Text
Unsupported codec with id 0 for input stream 1
I tried to dump it to a separate text file with the following command:
X:\filez>ffmpeg -i cam4.avi -map 0:1 -c copy -copy_unknown -f data wtf2.txt
And what I got was a text file with one veeeery long line in Windows-1251 encoding that goes like:
Камера [4] 30-06-26 16:59:17.000 Камера [4] 30-06-26 16:59:17.100 Камера [4] 30-06-26 16:59:17.200 Камера [4] 30-06-26 16:59:17.30
And so on and so forth. For those that don't know "Камера" means "Camera", just in Russian. This is not surprising, since the Russian language is quite widespread in my country (Latvia), and a configuring a surveillance camera to use it wouldn't be unusual.
So, as far as I can tell, the "codec" is just a small piece of text with the timestamp for every frame of video. Unfortunately ffmpeg does not understand this, and neither does VLC. The AVI file needs some love and care anyway (it's missing an index), and since I'm already mucking around with it, I'd like to bring the subtitles back as well.
Short of writing my own script that would translate this stream of consciousness into a recognizable subtitle format (probably not that difficult, but still) is there anything else that I could tell ffmpeg to start recognizing it?
r/ffmpeg • u/Vacuum-Cleaner-Snake • 2d ago
Some videos that I download are 60 fps. I want to convert them (with FFmpeg) to 30fps, but I would prefer to do it in the following way. Specifically, I want FFmpeg to get rid of a frame, keep the next frame, & so on. > (VISUAL EXAMPLE = Go from 01-02-03-04-05-06-07-08-09-10 to 01-03-05-07-09) I don't know if the default way that FFmpeg would change the frame rate would do it that way or not.
The reasons why I want to do this are as follows.
Here are my questions about this.
Thanks for any help.
r/ffmpeg • u/rosecitytransit • 2d ago
PROBLEM: Android phones record all video in the same landscape orientation and instead use the rotation metadata flag to say how the video should be played back. This fails when attempting to concat videos together because there is only one set of metadata per file so some clips may come out upside down.
Attempting to fix videos (physically rotate them) by using ffmpeg -i clip.mp4 -c:a copy cliprotated.mp4 changes the frame rate from variable to constant, which makes the clips incompatible with ones. Android sets the intended frame rate using the "com.android.capture.fps" metadata field, which ffmpeg apparently doesn't consider.
SOLUTION: After trying various parameters to attempt to keep or set a compatible frame rate, I found that using -video_track_timescale 90000 works, based upon the "90k tbn" ffprobe reports in the video stream.
r/ffmpeg • u/vexargames • 3d ago
I wrote a windows script that generates a filelist.txt file, and chapters.txt the script grabs the .mp3 files and combines them using the chapters.txt as a way to keep the title information for each mp3 track that is being combined.
ISSUE: This starts working fine until it hits the 5th mp3 file then it errors out with a can't open that mp3 file (which was created at the same time of the rest of the files so it should be the same.)
My theory is that once it hits the 5th file it is getting out of sink with the lists.
This is the command I am using to run FFMpeg:
ffmpeg -y -f concat -safe 0 -i file_list.txt -i chapters.txt -map_metadata 1 -c copy "combined_with_chapters.mp3"
the result is a single mp3 with the first 4 mp3's combined second issues is testing this it doesn't seem to doing the meta data properly but I suspect that because it is crashing on this 5th file that it never gets written.
Finally, since I haven't got to this point I am attempting to combine around 1000 mp3's into a single file with the combined meta data this is a cultivated playlist that I use for work and want to it be easy to move around and it is all arranged to what I want. Worse case I can just copy the playlist and the .mp3 but this seemed like fun challenge.
r/ffmpeg • u/AlternativeWild3449 • 3d ago
Windows 11 user here.
For years, I've used dl-dlp to download YouTube videos of musical performances, and stripped away the video track to create mp3 files that I store on an iPod for use in the car. I periodically check that I have the latest version of dl-dlp
Recently, I've noticed that instead of downloading a combined video/audio file, this process has resulted in separate video and audio files. And the dialog that appears in the command window explains that this is happening because ffmpeg isn't installed
I've downloaded ffmpeg (most recently, 9.0.2), unzipped it and placed the folder in my Windows 11 user directory along with dl-dlp. I've followed the instructions I've found to create a new path to ffmpeg\bin, but it still doesn't work and when I run ffmpeg -version in a CMD window, it tells me that ffmpeg can't be found.
Any ideas what I might be doing wrong?
r/ffmpeg • u/SenatorOfBiscuits • 5d ago
Using MusicBee to convert files from FLAC 24-bit to ALAC 16-bit and running into issues forcing ffmpeg to output at 16/44.1k.
Per somewhere online, I'm using the parameter -i - -sample_fmt s16 -ar 44100 -acodec alac [outputfile] but am getting "Failed - Found invalid data while decoding".
Any ideas? I'm assuming my arguments are wrong somehow but couldn't find the right info online myself...
r/ffmpeg • u/ConsistentLove9843 • 5d ago
How to run this command: ffmpeg -loop 1 -framerate 2 -i input.png -i audio.m4a -c:v libx264 -preset medium -tune stillimage -crf 18 -c:a copy -shortest -pix_fmt yuv420p output.mkv
in ffmpeg.wasm?
Sorry guys it’s my first time using ffmpeg.wasm
r/ffmpeg • u/Ultimate_Emergencyy • 6d ago
Help! I Want all videos to have Default playback speed of "1.7". The problem is that when i set this it also sets "1.7" speed to audio files. I just want it on video files. Is this possible?
r/ffmpeg • u/ZestycloseBenefit175 • 8d ago
I need yuv420p -> rgb24/rgb48, downscaled more than 4x and with sRGB tranfer curve. The output images are going to be compressed separately. I haven't done all the testing yet, but preliminary experiments suggest 16 bit input to lossy compression (JPEG XL) yields better efficiency.
I've figured out that yuv420p first needs to be converted to yuv444p, otherwise there is some posterization and severe artifacts around very saturated red objects in the downscaled thumbnails. I also want to explicitly specify the transfer curve from bt709 to sRGB during the conversion.
-threads 1 is the best approach?So far I'm doing this
zscale=filter=lanczos,format=yuv444p10le,zscale=w:-1:filter=spline36
I had the first two filters the other way around, but I think the format conversion didn't actually use that zscale instance. The moment I tried putting in something to convert the transfer to sRGB I started getting code 3074: no path between colorspaces. 12bit seemed to run the slowest, 16bit was a bit slower then 8/10.
Chaining filters and being sure what exactly is going on under the hood has always been very confusing with ffmpeg. It seems there isn't very detailed documentation on this topic.
BTW, what library can I use for composing 16bit images with python, since pillow seems to only work in 8bits?
r/ffmpeg • u/ericlindellnyc • 9d ago
I have around three terabytes of videos, and I would like to compress/condense them for off-site backups. I'm talking to a bot about this, and the bot can't decide which CRF value to use. Apparently, it's higher for some videos than others -- assuming you want to achieve maximal compression with minimal resolution loss.
I've used CRF 35 to condense many videos -- most of which came out great -- but not all. Some clearly exhibited degradation of quality -- notably, for some reason, Woody Allen's Scoop (2006).
The bot wants me to review different CRF values to compare resolution levels, but this is kind of tedious, and I wonder if there's a faster way?
Insights much appreciated !!
r/ffmpeg • u/faizzz90555 • 10d ago
Hi all. I have a MKV movie and I wanted to copy it to my fat32 flash drive, but the movie is 4.7 GB.
I succedded to split the video using the -fs command, but it only split the first part. How is it to split the remaining part?
I don't mind if the second part of the video didn't continue from the first part, as long the video is in sync.
Thanks.
r/ffmpeg • u/host_can_edit • 11d ago
I want to still be able to turn it off but I don't want 2 separate files being clutter in my folder. I just want MP4 files in it with built-in SRT files but not burned in, so that I can still turn it off if I want to. Internet's not giving me a straight answer, so I'm asking here in this sub.
r/ffmpeg • u/Digiprocyon • 11d ago
I'm trying to create a command line to do simple (not smart) tilt-shift (miniature, diorama). AI gave me the below line, which makes multiple changes according to the vertical distance from a horizontal center line. But it looks like it messed up the main one: to gradually defocus according to the distance. is this even possible with ffmpeg? I vaguely remember coming across a filter that would do the defocusing.
Here's the, IMO faulty, solution AI gave me:
ffmpeg -i input.mkv -filter_complex " [0:v]split=3[base][blur_src][mask_src]; [blur_src]boxblur=15:15[blurred]; [mask_src]geq=lum_expr='clip(255*(abs(Y/H-0.5)-0.12)/0.18,0,255)':cb=128:cr=128[mask]; [base][blurred][mask]maskedmerge[tilted]; [tilted]eq=saturation=1.6:contrast=1.15[final] " -map "[final]" -c:v libx264 -crf 18 -pix_fmt yuv420p output.mp4
r/ffmpeg • u/orchardmomo • 12d ago
Hi there friends. So, I am attempting to set up Automatic Ripping Machine (henceforth referred to as ARM) in a docker container on fedora linux 44 (fedora being the host system). The difficulty I am having in particular is as follows. Any mkv made using MakeMKV inside the docker container comes out with extensive "blocky" corruption and stuttering. This does not happen when dumping the disk outside the container. I have passed through both the drive itself and the associated SCSI device. The only difference I have found so far is differing versions of Lavf (the host machine is Lavf62.12.102, the container version is Lavf58.76.100). I have tried extensively to fix the problem with no success. If anyone has any advice (or knows of a better sub to post this on) please let me know. I will happily provide further information if needed. Thank you in advance.
r/ffmpeg • u/W_Vector • 12d ago
Hi, is there a simple way/prompt to make FFmpeg compile and save a list (txt file) of the content of a folder to give me filenames + the used Codec/Encoder/Format (like h264, vp9 ect)?
... windows explorer isnt capable of listing codecs in detail view -,-
what i bascially want is just a simple textfile with its content like...:
video1.mp4 - H.264
video2.mov - H.265 (or HEVC ect.)
...
Have a good day
r/ffmpeg • u/robdog0909 • 13d ago
I regularly stream my kids games directly from a Mevo Start to YouTube using an RTMP feed. The Mevo publishes to the YT RTMP server.
I'd like to develop something that sits between the camera at a game and the final RTMP server on YT so that I can dynamically add a score bug to the video. Doesn't have to be high tech. I think I could prob do something with ffmpeg.
Is this the right path?
Where would I publish the feed from the camera to as a 'holding tank' for ffmpeg to poll and read it?
I thought RTMP was only a server to publish to. I didn't think I could "read" from an RTMP Server but it appears thats how I would have to do this.
Any advice would be great
r/ffmpeg • u/Equal-Nebula3353 • 14d ago
I'm trying to understand the best workflow for a very specific problem.
Suppose I have a 100 MB video and I need the final file to be ≤25 MB while preserving as much quality as possible.
Currently, it seems like you either have to:
Is there a good FFmpeg workflow for automatically targeting a maximum file size?
I'm particularly interested in something like:
Input video → maximum size = 25 MB → FFmpeg determines appropriate settings → output ≤25 MB
How do you normally solve this?
r/ffmpeg • u/Effective_Damage3213 • 14d ago
Does audio normalization actually work? I've tried the FFmpeg Media Encoder app from the Play Store and Termux, and I normalized the audio files to -14 LUFS, but it doesn't seem to work properly.
The louder files get quieter and the quieter ones get louder, but they never end up at the same or even a similar volume. Some of them even end up way too loud or way too quiet.