Thank you Alex!
You made my day. Using your suggestion the video is playing more smoothly.
Better than that, I've managed the C library to get the frame data from OpenCV in BGRA format in order to be able to use the BlExternalForm, but now I can use directly BGR and save all those alpha bytes.
However, I've noticed that if I try to update my custom Bloc element each time a new detected frame is available I get an empty window. Only when I force a small delay (like 5 milliseconds) between frames I can see the video playing in the window.
An example of the code I'm running on a Playground would be like the following:
detector := OCVBlobDetector createOn: 0.
aSpace := BlSpace new
�� ��extent: 740@580;
�� ��title: 'OpenCV Frame'.
aSpace root background: Color gray asBlBackground.
frameElement := (OCVBlocDetectionElement on: detector detect)
�� �� relocate: 50@50; yourself.
aSpace root addChild: frameElement.
aSpace show.
detector live: [ :detection |
�� �� frameElement detection: detection.
�� �� frameElement invalidate.
�� �� 5 milliSeconds wait.
].
Thank you!