2015-10-08 2 views
0

Я пишу код, который YUV отформатировал видеокассету с OpenGL ES.Шиндер OpenGL ES для рисования видеокадров

Возврат библиотеки декодера видеофрагмента имеет больший размер, сравниваемый с оригинальным размером, потому что у него есть шаг.

Поэтому, когда рамка преобразуется в RGB, она станет подобна этому изображению, а зеленая рамка рисуется в углу текстуры.

RGB video frame

Моя текущая вершина sharder это. Пожалуйста, научите меня рисовать текстуру чисто.

void main() { 
    vec3 yuv = get_yuv(nUV) - vec3(0.0625, 0.5, 0.5); 
    yuv *= mat3(
    1.16438356, 0.0, 1.59602679, 
    1.16438356, -0.391762290, -0.812967647, 
    1.16438356, 2.01723214, 0.0); 
    gl_FragColor.rgb = yuv; 
    gl_FragColor.a = 1.0; 
}; 

ответ

Смежные вопросы