[FFmpeg-devel] [PATCH] Fix ljpegenc pix_fmt selection

Jason Garrett-Glaser jason
Tue Jan 4 20:29:21 CET 2011


On Tue, Jan 4, 2011 at 2:13 PM, Michael Niedermayer <michaelni at gmx.at> wrote:
> On Tue, Jan 04, 2011 at 02:00:43PM -0500, Jason Garrett-Glaser wrote:
>> On Tue, Jan 4, 2011 at 1:21 PM, Jason Garrett-Glaser <jason at x264.com> wrote:
>> > On Tue, Jan 4, 2011 at 1:18 PM, Michael Niedermayer <michaelni at gmx.at> wrote:
>> >> On Sun, Jan 02, 2011 at 12:58:30PM -0500, Jason Garrett-Glaser wrote:
>> >>> Previously, if you didn't happen to select the right pix_fmt via
>> >>> pix_fmt, ffmpeg would fail to convert to the pixel formats supported
>> >>> by ljpeg.
>> >>>
>> >>> Jason
>> >>
>> >>> Index: libavcodec/ljpegenc.c
>> >>> ===================================================================
>> >>> --- libavcodec/ljpegenc.c ? ? (revision 26200)
>> >>> +++ libavcodec/ljpegenc.c ? ? (working copy)
>> >>> @@ -194,5 +194,6 @@
>> >>> ? ? ?MPV_encode_init,
>> >>> ? ? ?encode_picture_lossless,
>> >>> ? ? ?MPV_encode_end,
>> >>> + ? ?.pix_fmts= (const enum PixelFormat[]){PIX_FMT_YUVJ420P, PIX_FMT_YUVJ422P, PIX_FMT_BGRA, PIX_FMT_NONE},
>> >>> ? ? ?.long_name = NULL_IF_CONFIG_SMALL("Lossless JPEG"),
>> >>> ?};
>> >>
>> >> that seems not correct
>> >> if i remove all the pix fmt tests yuv444p works too for example
>> >
>> > Yeah, but that should go in a separate patch. ?This patch is just to
>> > fix the current situation: revising the pixfmt checks in mpegvideo is
>> > an unrelated problem.
>> >
>> > Jason
>> >
>>
>> I see you've fixed the yuv444p problem: my next issue I noticed is
>> RGB32 vs BGRA. ?The ljpeg code checks for BGRA, but all the other code
>> looks for RGB32. ?Which is it?
>
> without testing, it looks like bgra to me

Should all related code in mpegvideo_enc.c be changed to an RGBA check then?

Jason



More information about the ffmpeg-devel mailing list