What does the debug look like? It might be that the capture card is capturing frames faster that the video actually changes, i.e. video is 25fps and your capturing faster than that. this means the motion detection algorithm will be analysing what it this are consecutive but are actually the *same* frame, thus not detecting motion. The debug output will look something like:
- Found motion
- Didn't find motion
- Found motion
- Didn't find motion
In which case, the solution is to force the framerate in your pipeline.