Audio Video Latency Test

Here is new  video test file build with R.

I changed several things from the last version, basically switching to a new layout and going down from 100fps to 60fps as YT can handle this much better.

 

 

Just in case, somebody wants to modify it, here is the script.

vid <- function(nr){
	nr2 = as.integer(nr*60) # total number 1/2s
	nr3 = -600 + (nr*10) # current ms title
	for (ii in 1:60 ){
		fn = paste0(str_pad(nr*60+ii,5,pad = "0"), ".png")
		png(file =  fn, width = 1600, height = 900, units = 'px') # defaults to 300 ppi
		par(mar=c(0,0,0,0),bg="black")	
		plot(c(0, 1), c(0, 1), ann = F, bty = 'n', type = 'n', xaxt = 'n', yaxt = 'n', asp=1)
		color="red"
		rect(xleft=0.5, xright=(nr3+500)/1000, ybottom=0.94, ytop=0.99, col= color)
		color="lightgrey"
		if( (nr<=58 & ii==30+nr/2) | (nr>=60 & ii==-30+nr/2) ) {
			circlize::draw.sector(0, 360, center = c(0.02, 0.01), rou1 = 0.01, col = color, border = color)		
		}	
		circlize::draw.sector(90, 90-ii*6, center = c(0.5, 0.52), rou1 = 0.4, col = color, border = color)
		if (ii<3 | ii>57) {
			color="white"
			circlize::draw.sector(0, 360, center = c(0.5, 0.52), rou1 = 0.4, col = color, border = color)
		}
		tx=paste(nr3,' ms')
		text(x = 0.5, y = 0.85, tx, cex = 6, col = "white", family="Lato", adj=0.5)
		tx=paste0(nr/2,':',str_pad( round(100*ii/60), 2, pad = "0"))
		text(x = 0.5, y = 0.5, tx, cex = 12, col = "white", family="Lato", adj=0.5)
		tx = "play until beep & flash in sync OR take image of source and processed video"
		text(x = 0.5, y = 0.075, tx, cex = 3, col = "grey", family="Lato", adj=0.5)
		par(bg="white")
		dev.off()
	}	
}
for (i in seq(0,120,2) ) {
	vid(i)
}
fn = paste0(list.files('*.png'))
av::av_encode_video(fn, framerate = 60, output = 'video.mp4')

 

CC-BY-NC Science Surf 21.11.2024, access 17.10.2025 VG Wort counter note save PDF