added display function.
This commit is contained in:
@ -1 +1,3 @@
|
||||
__version__ = '0.6.4'
|
||||
|
||||
from .window_sub.cv_window_sub import display
|
||||
|
@ -5,6 +5,7 @@ import numpy as np
|
||||
|
||||
from .winctrl import WinCtrl
|
||||
from cvpubsubs.webcam_pub.camctrl import CamCtrl
|
||||
from cvpubsubs.webcam_pub.frame_handler import VideoHandlerThread
|
||||
from localpubsub import NoData
|
||||
from cvpubsubs.window_sub.mouse_event import MouseEvent
|
||||
|
||||
@ -112,3 +113,16 @@ class SubscriberWindows(object):
|
||||
sub_cmd.release()
|
||||
WinCtrl.quit(force_all_read=False)
|
||||
self.__stop_all_cams()
|
||||
|
||||
|
||||
def display(*vids, names=[]):
|
||||
vid_threads = [VideoHandlerThread(v) for v in vids]
|
||||
for v in vid_threads:
|
||||
v.start()
|
||||
if len(names) == 0:
|
||||
names = ["window {}".format(i) for i in range(len(vids))]
|
||||
SubscriberWindows(window_names=names,
|
||||
video_sources=vids
|
||||
).loop()
|
||||
for v in vid_threads:
|
||||
v.join()
|
||||
|
@ -4,7 +4,9 @@ import unittest as ut
|
||||
import cvpubsubs.webcam_pub as w
|
||||
from cvpubsubs.window_sub import SubscriberWindows
|
||||
from cvpubsubs.window_sub.winctrl import WinCtrl
|
||||
from cvpubsubs import display
|
||||
from cvpubsubs.input import mouse_loop, key_loop
|
||||
import numpy as np
|
||||
|
||||
if False:
|
||||
import numpy as np
|
||||
@ -159,3 +161,19 @@ class TestSubWin(ut.TestCase):
|
||||
img[mouse_event.y - 5:mouse_event.y + 10, mouse_event.x - 5:mouse_event.x + 10, :] = 1.0
|
||||
|
||||
VideoHandlerThread(video_source=img, callbacks=function_display_callback(conway)).display()
|
||||
|
||||
def test_double_win(self):
|
||||
vid1 = np.ones((100, 100))
|
||||
vid2 = np.zeros((100, 100))
|
||||
t1 = w.VideoHandlerThread(vid1)
|
||||
t2 = w.VideoHandlerThread(vid2)
|
||||
t1.start()
|
||||
t2.start()
|
||||
SubscriberWindows(window_names=['cammy', 'cammy2'],
|
||||
video_sources=[vid1, vid2]
|
||||
).loop()
|
||||
t1.join()
|
||||
t1.join()
|
||||
|
||||
def test_display(self):
|
||||
display(np.ones((100, 100)), np.zeros((100, 100)))
|
||||
|
Reference in New Issue
Block a user