[Ffmpeg-devel] Resize on the fly

Ivan Kalvachev ikalvachev
Tue Oct 25 12:39:39 CEST 2005

2005/10/25, Andy Parkins <andyparkins at gmail.com>:
> Hello,
> This question isn't directly about ffmpeg; but would be a nice feature to have
> if it were possible.
> I'd like to be able to resize an mpeg4 stream on the fly.  It wouldn't be an
> arbitrary scale, just half, quarter, eighth, etc.  What I'd like to do is
> keep a master, high-resolution stream on disk, but be able to stream a
> smaller resolution without having to do a full decode-resize-encode cycle.
> I'm curious as to whether this is a crazy thing to even attempt?  For example,
> could one just throw away half the macroblocks, change some numbers in the
> header and get a useable stream?  The little I know about MPEG4 makes me
> think that the answer is "no", but I thought I should ask some people who
> know what they're talking about :-)

There is such feature in MPEG-2 called scalability. You can have an
base stream and scalable stream that uses the base as reference and
extends the dimensions/color/frame rate (not sure for frame rate).
Unfortunately nor FFmpeg, nor libmpeg2 can decode the extended stream.
I think that at least the reference mpeg-2 encoder can produce it.

There are formats support multiple bandwidths, but I am not sure if
they support  multiple resolutions (Real, ASF).

More information about the ffmpeg-devel mailing list