[FFmpeg-devel] [Uncompressed MP4] RFC - Draft Encoder
Tomas Härdin
git at haerdin.se
Wed Oct 9 22:31:52 EEST 2024
ons 2024-10-09 klockan 07:38 -0600 skrev Devon Sookhoo:
> With this patch, I was able to use the following command to generate
> an
> uncompressed mp4:
> $ ffmpeg -i input.mp4 -c:v rawvideo -pix_fmt rgb24 -tag:v uncv
> out.mp4
>
> The output file successfully played in GPAC.
>
> My first question is whether to reuse the existing
> AV_CODEC_ID_RAWVIDEO, or
> if a brand new codec should be created specifically for handling
> uncompressed MP4 files. For those not familiar with ISO/IEC 23001-
> 17:2024,
> this uncompressed codec has many input parameters, making it
> configurable
> enough to handle just about any type of data. A complete
> implementation would be quite involved which is why I'm questioning
> if
> "-c:v rawvideo" is the correct choice.
You should add rawvideo to the list of mov codec_tags. That way you
don't have to specify -tag:v
>From a quick glance at the spec it looks like you should be able to
derive the ComponentDefinitionBox from the pixel format descriptor for
whole classes of pixel formats, a task the belongs in the muxer (and
demuxer). There isn't really anything for an encoder to "do".
I see that the spec allows a bunch of different FrameLayouts to use MXF
parlance, or interleave_type in this spec. The issue of how to deal
with for example SEPARATE_FIELDS vs MIXED_FIELDS has been brought up
and, as I recall, no satisfactory solution was found.
I also see complex valued pixel formats are supported. Not sure what
the use of that is, but it certainly is interesting..
/Tomas
More information about the ffmpeg-devel
mailing list