Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
software:feature:video [2019/07/02 13:46] henriksoftware:feature:video [2022/03/28 07:54] (current) torben
Line 1: Line 1:
-====== Video ======+====== Video/camera ======
  
 BBT has built-in support for video recording of important locations, such as the finish line. It is a very effective tool for verifying results and serves as a visual backup in situations like when a participant is racing without his tag or transponder. Video is a valuable tool to resolve many unforeseen circumstances. BBT has built-in support for video recording of important locations, such as the finish line. It is a very effective tool for verifying results and serves as a visual backup in situations like when a participant is racing without his tag or transponder. Video is a valuable tool to resolve many unforeseen circumstances.
  
-//Note: The video feature is work in progress, and is limited and features and options.//+//Note: The video feature is work in progress, and is limited in features and options.//
  
 //Note: You should enable the Video feature on your event to get access to the video functions.// //Note: You should enable the Video feature on your event to get access to the video functions.//
Line 9: Line 9:
  
 ===== Supported cameras ===== ===== Supported cameras =====
-Short answer: Any IP Camera that is able to deliver a MJPEG stream via HTTP or RTSP.+Short answer: Any IP Camera that is able to deliver a H.264 or MJPEG stream via RTSP or a MJPEG stream via HTTP.
  
 Two modes of transportation is supported: RTSP and HTTP (multipart/x-mixed-replace). This can be thought of as the way the images are delivered from the camera and into BBT. Almost every consumer IP camera supports at least one of these. Two modes of transportation is supported: RTSP and HTTP (multipart/x-mixed-replace). This can be thought of as the way the images are delivered from the camera and into BBT. Almost every consumer IP camera supports at least one of these.
- 
-As image codec (the way images are turned into data to be sent on the network), we currently **only support MJPEG** (Motion JPEG). This is an older more simpler protocol than the standard used by most cameras today. We currently **do not support H.264**, although we would like to add this in the future. 
- 
-If your camera does not support MJPEG, see below for a workaround. 
  
 ===== Adding a camera ===== ===== Adding a camera =====
Line 23: Line 19:
   - Add the camera   - Add the camera
  
-Finding the correct URL can be very tricky, since many cameras have very poor documentation, and most are not the same. Often the camera supports multiple streams of different types (on different URLs), so you must select one that outputs a MJPEG stream. Consult your camera provider (or Google) to find out what the URL for your specific camera looks like. +Finding the correct URL can be very tricky, since many cameras have very poor documentation, and most are not the same. Often the camera supports multiple streams of different types (on different URLs), so you must select one that is compatible. Consult your camera provider (or Google) to find out what the URL for your specific camera looks like. In most cases, a default stream of H.264 via RTSP is available, and can be used. 
 + 
 +iSpy has an online camera database that you might use to find the correct URL for your camera: https://www.ispyconnect.com/sources.aspx
  
 Example URLs can look like this (replace IP and username/password to match your camera): Example URLs can look like this (replace IP and username/password to match your camera):
Line 36: Line 34:
  
 ===== Starting and stopping recording ===== ===== Starting and stopping recording =====
-ToDo: Actions, seeing status, each frame is timestamped (if camera supports it)+By default BBT will always connect to the camera and offer a live feed of the camera.
  
-===== Viewing video ===== +A buffer of 2-3 minutes will also be recorded in memoryso you will always be able to go back and watch what happened a small time ago, without actually recording anything.
-ToDo: All clients, live, forward and back +
-ToDo: min cachecan be saved+
  
-Slight delay on live video.+To start and stop recording, use the "Record video" button on the left bottom side of the software (shortcut: F8). This will save the recorded images to disk, so that they can be retrieved a long time after the race.
  
-===== Workaround for non-MJPEG cameras using VLC ===== +Using the Video view you can see which timeslots of the video have been recordedYou can also click the buffer of the last 2-3 minutes buffered video and save that to the permanent recordingfor example if you forgot to start the video when the first finishers come in.
-If your camera does not support MJPEG, or you cannot get it to work properly, you can use the free softwave VLC (https://www.videolan.org) to connect directly to the cameraand send out a video stream:+
  
-So instead of a direct connection:+//Note: BBT is optimized for flexibility and easy-of-use, not space. So be sure to have plently of free disk space when recording for long periods. //
  
-<nowiki>Camera --> BBT</nowiki>+===== Viewing video ===== 
 +All video recording (and the live buffer) is kept on the Timing Master. While wathcing/recording, any of the clients connected to the master will be able to freely jump back and forth in all the recorded video, independently of eachother, going forwards, backwards, freezing the frame etc. 
  
-...you can use VLC to convert the video for you:+This does not impact the recording, that will continue to take placeEven if the camera only allows a single stream open at a time, this is not a problem, as only the Timing Master is directly connected to the camera.
  
-<nowiki>Camera ---> VLC ---> BBT</nowiki>+This does, however, incur a slight delay on the live video feed.
  
-Example:+**Quick jumping**
  
-Your camera stream (for example H.264) might be called  +You often need to jump to a specific time in the video, which you can do directly from the Video window and input a timestamp or scroll back and forth on the timeline.
- http://username:password@192.168.1.227/videostream.cgi+
  
-Using this command you can tell VLC to connect to that cameraand output an MJPEG stream on URL http://localhost:8080+When looking at a specific participant, you can use the participant context menu to quickly jump to the time in the video when the participant crossed the finish linefor photo verification.
  
-<nowiki> 
-vlc.exe -vvv -Idummy  http://username:password@192.168.1.227/videostream.cgi --sout #transcode{vcodec=MJPG,venc=ffmpeg{strict=1}}:standard{access=http{mime=multipart/x-mixed-replace;boundary=--7b3cc56e5f51db803f790dad720ed50a},mux=mpjpeg,dst=:8080/} --run-time= 10 vlc://quit; 
-</nowiki> 
  
-In BBT you can then simply add http://localhost:8080 as the video source.+===== Performance ===== 
 +Many video cameras provide high frame rates and a large image resloution. 
 + 
 +The BBT video feature is not meant for recording nice smooth videos, but rather as a means of having flexible integrated visual verification. Therefore BBT will save resources and disk space by only saving a few frames per second and reducing the image size.