Jump to content


Dean

Member Since 21 Dec 2015
Offline Last Active 15 Jun 2016 04:14
-----

Posts I've Made

In Topic: aio-grab code frame rate and reliability for VU+ Solo2/Duo2/SE/SE2/4k

11 June 2016 - 22:34

It writes screenshot to /tmp (ram). So much faster than SSD.

 

Is /tmp using ram by default?


In Topic: aio-grab code frame rate and reliability for VU+ Solo2/Duo2/SE/SE2/4k

11 June 2016 - 21:52

It writes to RAM anyway... It can also write to stdout by the way, so you can use the resulting image directly.

I built a grab library for the amBX plugin a few years ago, based on aio-grab code, which was intended to be called from a plugin or so, and it's much faster because it doesn't need to allocate/deallocate resources on each call. Should still be on sourgeforge.

 

By the way allocation and deallocation shouldn't be that much of a bottle neck, malloc is probably reusing the same buffer. Writing to HDD should be a big bottle neck though, HDD and even SSD are many times slower than RAM. athoik do you have SSD by any chance?


In Topic: aio-grab code frame rate and reliability for VU+ Solo2/Duo2/SE/SE2/4k

11 June 2016 - 21:10

I am really interested if 4k is  grabbing framebuffers faster or perhaps athoik just has a faster hard drive. It seems that accessing the video buffer directly has a potential of being faster despite overall hardware being slower.

 

Also does anyone know if it would be be possible to grab only part of the frame with Solo 4k? With other VU+ receivers that is easy since you have a pointer. On 4k one would need to use lseek/fseek, assuming stream supports that.

 

My end goal is to write a plugin that removes static parts of the video to avoid image retention/burn-in on OLED and plasma TVs. I need it for my personal use but I'll of course also share it with everyone else.


In Topic: aio-grab code frame rate and reliability for VU+ Solo2/Duo2/SE/SE2/4k

11 June 2016 - 20:50

I guess it will always be 1920x1080 when grabbing video.
 

	if (stb_type == BRCM7366ARM)
	{
		int fd_video = open("/dev/dvb/adapter0/video0", O_RDONLY);
		if (fd_video < 0)
		{
			fprintf(stderr, "could not open /dev/dvb/adapter0/video0");
			return;
		}

		ssize_t r = read(fd_video, video, 1920 * 1080 * 3);
		close(fd_video);
		*xres = 1920;
		*yres = 1080;
		return;
}
Although grabbing from videoX device seems better way to me.

 

 

Yeah resolution is hardcoded for Solo 4k unlike for some other receivers.


In Topic: aio-grab code frame rate and reliability for VU+ Solo2/Duo2/SE/SE2/4k

11 June 2016 - 20:49

It writes to RAM anyway... It can also write to stdout by the way, so you can use the resulting image directly.

I built a grab library for the amBX plugin a few years ago, based on aio-grab code, which was intended to be called from a plugin or so, and it's much faster because it doesn't need to allocate/deallocate resources on each call. Should still be on sourgeforge.

 

You're right. And my goal is to write a plugin as well. Do you recall aprox. how many frames you could grab per second? And on what hardware.