Psvbi
From M1Research
psvbi - Pseudo VBI
Contents |
Overview
psvbi software complex was developed for trasmitting control commands in TV video signal. Data block coded into some lines of video signal and could be used as marks for remote stations or analytic system. It much easy to implement and control (and diag) instead of real VBI due to high cost of equipment.
How does it works
Base Theory
Data to transmit coded by 14 bytes block. Each block transmitted in one video frame. Data encoded as luminance part of video signal (most stable to MPEG encoding/decoding) in some video lines (in our case we prefer to use top 2..4 lines - not visible on home equipment, only professional monitors with turned on underscan area could be used to SEE if data real present). During coding data used Hamming Error Correction Code and permutations alorithms to make more stable transmitting data, but some times it was noticed false data detection :-(((, use control sum algorithms in analizator to check if it's your real data packed :-))).
Embedding data
Embedding data performed by VirtualDub software (real greate program). Embedding and encoding data performed by our plug-in.
Make sure you have VirtualDub and copied pseudovbi.vdf
to VirtualDub's plugin folder.
Start VirtualDub, open desired video file (in our case we use Matrox Digisuite for capturing and playback). Open Video -> Filters and select pseudovbi plugin. As result you can see plugin dialog window:
Encoding/Embeding parametes:
- Start encoding from - define start frame number of video to insert data;
- Frames to encode - number of frames (duration on frames) of encoded data block;
- Data block - hexadiminal presentation of 14 bytes lenght data block;
- Setup/"Luma" level - defines value is used to encode data (0...255);
- Inserting Position - this blocks define where data will be inserted (position on screen). We prefer use top 2 rows (video lines) to insert;
- BLOCK - enable/disable insert block;
- COLUMN - start position (from left) where data begin to inserts
- ROW - row/line number where data begin to inserts;
Result of plugin: (fragment of VirtualDub program interface)
As result you can see a dot sequence in first 2 lines of frame. Now data block embedded. You can print this video to tape or video server.