summaryrefslogtreecommitdiff
path: root/src/qcam/viewfinder_gl.cpp
AgeCommit message (Expand)Author
2021-09-22qcam: viewfinder_gl: Support configurable stride in shadersLaurent Pinchart
2021-09-22qcam: viewfinder: Pass stride value to viewfinderLaurent Pinchart
2021-09-07qcam: viewfinder_gl: Support multi-planar buffersLaurent Pinchart
2021-09-07qcam: Use Image class to access pixel dataLaurent Pinchart
2021-09-07libcamera: framebuffer: Prevent modifying the number of metadata planesLaurent Pinchart
2021-08-21qcam: Replace MappedBuffer with Span<uint8_t>Laurent Pinchart
2021-08-03qcam: Support OpenGL ES 2.0Laurent Pinchart
2021-06-30qcam: viewfinder_gl: Add support for RAW8 Bayer formatsAndrey Konovalov
2021-06-30qcam: viewfinder_gl: Set the vertex shader file name in selectFormat()Andrey Konovalov
2021-06-30qcam: viewfinder_gl: Add support for RAW12 packed formatsAndrey Konovalov
2021-06-30qcam: viewfinder_gl: Add shader to render packed RAW10 formatsAndrey Konovalov
2021-06-30qcam: viewfinder_gl: Change uniform float tex_stepx to vec2 tex_stepAndrey Konovalov
2020-11-07qcam: viewfinder_gl: Add support for RGB formatsLaurent Pinchart
2020-11-07qcam: viewfinder_gl: Store textures in an arrayLaurent Pinchart
2020-11-07qcam: viewfinder_gl: Rename yuvData_ to data_Laurent Pinchart
2020-11-07qcam: viewfinder_gl: Rename YUV.vert to identity.vertLaurent Pinchart
2020-11-07qcam: viewfinder_gl: Remove unneeded castsLaurent Pinchart
2020-11-07qcam: viewfinder_gl: Keep fragment shader when format doesn't changeLaurent Pinchart
2020-11-07qcam: viewfinder_gl: Fix fragment shader rebuild when setting formatLaurent Pinchart
2020-10-04qcam: viewfinder_gl: Add shader to render packed YUV formatsLaurent Pinchart
2020-10-04qcam: viewfinder_gl: Merge the semi-planar UV and VU shadersLaurent Pinchart
2020-10-04qcam: viewfinder_gl: Support #define in shadersLaurent Pinchart
2020-10-04qcam: viewfinder_gl: Rename shader filesLaurent Pinchart
2020-10-04qcam: viewfinder_gl: Hardcode the vertex shader file nameLaurent Pinchart
2020-10-04qcam: viewfinder_gl: Don't store texture IDs in class membersLaurent Pinchart
2020-09-15qcam: Add ViewFinderGL class to accelerate the format conversionShow Liu
orSpace::Srgb; config.addConfiguration(cfg); StreamConfiguration &streamCfg = config.at(0); /* * YUV pixelformat with sRGB colorspace should have Y'CbCr encoding * adjusted. */ config.validate(); if (streamCfg.colorSpace->ycbcrEncoding == ColorSpace::YcbcrEncoding::None) { cerr << "YUV format must have YCbCr encoding" << endl; return TestFail; } /* * For YUV pixelFormat, encoding should be picked up according * to primaries and transfer function, if 'None' is specified. */ streamCfg.pixelFormat = formats::YUV422; streamCfg.colorSpace = ColorSpace(ColorSpace::Primaries::Rec2020, ColorSpace::TransferFunction::Rec709, ColorSpace::YcbcrEncoding::None, ColorSpace::Range::Limited); config.validate(); if (streamCfg.colorSpace->ycbcrEncoding != ColorSpace::YcbcrEncoding::Rec2020) { cerr << "Failed to adjust colorspace Y'CbCr encoding according" << " to primaries and transfer function" << endl; return TestFail; } /* For RGB pixelFormat, Sycc colorspace should get adjusted to sRGB. */ streamCfg.pixelFormat = formats::RGB888; streamCfg.colorSpace = ColorSpace::Sycc; config.validate(); if (streamCfg.colorSpace != ColorSpace::Srgb) { cerr << "RGB format's colorspace should be set to Srgb" << endl; return TestFail; } /* Raw formats should always set colorspace to ColorSpace::Raw. */ streamCfg.pixelFormat = formats::SBGGR8; streamCfg.colorSpace = ColorSpace::Rec709; config.validate(); if (streamCfg.colorSpace != ColorSpace::Raw) { cerr << "Raw format must always have Raw colorspace" << endl; return TestFail; } return TestPass; } }; TEST_REGISTER(StreamColorSpaceTest)