2014-09-09 7 views
0

Я бы хотел проанализировать потоковое видео процесса, периодического, но медленно меняющегося в течение нескольких часов. Есть ли простой способ в Mac OS X 10.7 напрямую записывать, что происходит с одним пикселем с течением времени?простой способ записи видео для одного пикселя на экране?

(Под «простой» Я хочу сказать, не делая обычную запись экрана, разделяя видео на кадры, и принимать пиксельные данные из каждого кадра.)

ответ

1

Вы можете сделать это, используя команду screencapture в ОС X. Используя параметр -Rx,y,w,h, вы можете указать раздел экрана. Используемый в сценарии bash, вы можете сохранять инкрементные снимки screencapture в бесконечном цикле.

Например, следующий сценарий будет захватывать пиксель в X:100, Y:200 и сохранять его как screenshot_#.png раз в секунду.

#!/bin/bash 

counter=1 
while true; do 
    #Create output file name. 
    output="screenshot_$counter.png" 
    echo "Capturing: $output" 
    #Screen capture a section of the screen x,y,w,h. 
    screencapture -R100,200,1,1 "$output" 
    #Increment counter. 
    counter=$(($counter + 1)) 
    #Number of second to wait between taking screenshots. 
    sleep 1 
done 

Чтобы остановить его от работы, просто нажмите Ctrl + C.

UPDATE:

К сожалению, -R аргумент является новым в любой OS X 10.8 или 10.9, Он не доступен в 10.7 и ниже.

+0

В моей версии OS X (10.7) отсутствует опция -R для команды screencapture. – user1704042