On Mar 10, 2014, at 4:28 PM, J Decker <[email protected]> wrote: > I would think you would just use 'sws_getContext' and 'sws_scale' > worked good for me...
Thank you for the pointer. May I have a little more info regarding how you used sws_getContext()? I found its API definition as follows: struct SwsContext * sws_getContext (int srcW, int srcH, enum PixelFormat srcFormat, int dstW, int dstH, enum PixelFormat dstFormat, int flags, SwsFilter *srcFilter, SwsFilter *dstFilter, const double *param) and it allocates and returns a struct SwsContext*. In my case I am not modifying anything in my filter, why is this function good for me? (I am assuming this performs some kind of transformation because there's a source and destination). Also in the returned SwsContext struct, I see there are 4 members: int lumXInc int chrXInc int lumYInc int chrYInc perhaps this is where I can get the luminance? In that case, does it mean I have to perform some kind of transformation before even able to get the Context? Thank you for in advance for clarification. > On Mon, Mar 10, 2014 at 4:18 PM, Ricky Huang <[email protected]> wrote: > Hello all, > > I am writing code that extracts the luminance component of an input video > using my own custom filter in libavfilter - specifically I am extracting it > from "PIX_FMT_YUV420P" a video and I am wondering how to go about doing so. > According to the pixfmt.h header: >> >> PIX_FMT_YUV420P, ///< planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y >> samples) > > I am not sure how to interpret that. Assuming I am doing this in my > draw_slice() function. It has the definition of: >> >> static void draw_slice(AVFilterLink *inlink, int y0, int h, int slice_dir) > > I know I can get to the input data plane by: >> >> AVFilterBufferRef *cur_pic = link->cur_buf; >> uint8_t *data = cur_pic->data[0]; > > But there are multiple "planes" in the data. Does data[0], data[1], data[2] > correspond to each of the Y, U, V channels? > > Also, once I am able to point my pointer at the correct coordinate, how > should I interpret the extracted result (float, int, etc)? > > > Thank you in advance. > > _______________________________________________ > Libav-user mailing list > [email protected] > http://ffmpeg.org/mailman/listinfo/libav-user > > > _______________________________________________ > Libav-user mailing list > [email protected] > http://ffmpeg.org/mailman/listinfo/libav-user
_______________________________________________ Libav-user mailing list [email protected] http://ffmpeg.org/mailman/listinfo/libav-user
