It was always in my TODO list but with this scaler it may become reality: I want to add screen grabber from Linux side. Since it's DDR3 which is shared with linux, it will be relatively easy.Grabulosaure wrote:which other important part is missing ?
I see current implementation uses floating size of buffer depending on input frame size. I suggest to simplify it with max size defined in module parameter. Basically 1920x1080 is absolute maximum of input frame. So it can be even hardcoded. And every line would be better to start from fixed address regardless the frame size - it will also simplify the scaler calculations ind decrease its complexity.
0x800000 (8MB) would be a single buffer size, with 24MB for triple buffering. At the last 2 words of buffer i suggest to write width and length of current frame in pixel.
Linux will grab these values from the fixed address and then save the snapshot with easy layout.