FFmpeg (and codecs like x264) will compile and run on nearly anything (it's written in fairly portable C), it's just a question of how fast it will be.
If you're just decoding and running a filter or something, you might be fine, especially if real-time playback of high-rez video isn't necessary.
If you just need audio, that's not very computationally intensive compared to video and should be fine for most things.
Video encode / decode performance on old CPUs:
Video quality (bitrate) isn't the key point, it's resolution (how much RAM an uncompressed frame takes). Also, having 2x as many pixels to process simply takes more CPU time for more macroblocks to decode. You might find that 720p is much faster than 1080p.
If you truly don't have enough RAM to keep a few dozen or hundred frames in memory, decoding / encoding speed will fall off a cliff as you hit swap space. Especially encoding where you want the encoder to have some lookahead for good decisions on where to spend bits.
Another softer threshold is L3 cache size, especially given the relatively lower memory bandwidth of old CPUs.
Centrino is like Pentium-M era. That predate SSSE3, so you don't have a SIMD byte shuffle (pshufb
), and the SIMD execution units are only 64-bits wide. (Instructions like psadbw xmm0, xmm1
to calculate Sum of Absolute differences for 2 sets of 8 bytes in parallel will decode as 2 separate uops.)
So h.264 decode / encode speeds will be significantly worse, clock for clock, than on a Nehalem or Sandybridge CPU from a few years later. And much worse clock for clock than on a modern core like Haswell or Skylake with AVX2 and very efficient unaligned vector loads, or Zen / Zen 2.
Your Centrino 2 is probably also only single-core, and encoding speed scales nearly linearly with core count, at least for the first few cores. If you're used to a quad-core system, that's another factor of 4 slower on top of the very large per-core performance dropoff.
And h.265 encoding will be almost a lost cause. e.g. I played around some with x265 on my old Core 2 (E6600 2.4GHz dual-core Conroe with DDR2-566) system before getting a quad-core Skylake (i7-6700k with DDR4-2666). x265 -preset slower was about 40x faster on the Skylake, IIRC, for 1920x1080 encoding at like crf 25.
But x265 doesn't have nearly as good support for old CPUs; it started development after Core 2 was obsolete, unlike x264. For x264, Core 2 was once the top-of-the-line so x264 has good optimizations for old CPUs. It should have hand-written asm tuned for CPUs of Centrino 2 vintage, there's just not as much that CPU can do. So "the best it can do" is still not great.