Media (Intel® oneAPI Video Processing Library, Intel Media SDK)
Access community support with transcoding, decoding, and encoding in applications using media tools from Intel. This includes Intel® oneAPI Video Processing Library and Intel® Media SDK.
Announcements
Welcome to the Intel Community. If you get an answer you like, please mark it as an Accepted Solution to help others. Thank you!

how to convert I420 to yv12

china_y_
Beginner
165 Views

hi body

i am using the intel sdk sample .

what i got is I420 but the encode needs yv12 

how can i convert I420 to yv12 without the intel media  sdk

0 Kudos
2 Replies
dr_asik
Beginner
165 Views

ffmpeg's swscale should do the trick. Alternatively, it's very easy to code this yourself. Look at the definitions of the formats:

http://www.fourcc.org/yuv.php#YV12

http://www.fourcc.org/yuv.php#IYUV

I420 is exactly the same as YV12 except that the order of the U and V planes is reversed. Three memcpys are you're done.

Anthony_P_Intel
Employee
165 Views

and, the file writer part of sample code can be changed to write YV12 instead of I420, as the actual MediaSDK API is 3 pointers to the 3 planes (allowing direct support for all YUV420 variants), and the only thing making it a "YV12" file is the code that writes it out in that order.

Reply