{"id":30595047,"url":"https://github.com/stefan-olt/misrc","last_synced_at":"2026-02-10T22:32:35.979Z","repository":{"id":214543475,"uuid":"736740372","full_name":"Stefan-Olt/MISRC","owner":"Stefan-Olt","description":"MISRC Is a multi channel RF capture device for FM RF, S-Video, CVBS RAW capture and anything else, but intended and supported for the decode family of projects vhs-decode, ld-decode, hifi-decode.","archived":false,"fork":false,"pushed_at":"2025-12-19T11:28:54.000Z","size":201177,"stargazers_count":169,"open_issues_count":2,"forks_count":10,"subscribers_count":18,"default_branch":"main","last_synced_at":"2025-12-21T22:48:29.491Z","etag":null,"topics":["40msps","ad8138","ad9235","adc","analog-videos","cvbs","cvbs-decode","fm-rf-archival","fm-rf-capture","fpga","fx3","hifi-decode","ld-decode","ntsc","pal","s-video","sdr","tang-nano-20k","tape-decode","vhs-decode"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc-by-4.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Stefan-Olt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.CCBYSA","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-12-28T18:31:42.000Z","updated_at":"2025-12-19T11:28:58.000Z","dependencies_parsed_at":null,"dependency_job_id":"9c879364-1edc-4961-93a0-306a6298f55d","html_url":"https://github.com/Stefan-Olt/MISRC","commit_stats":null,"previous_names":["stefan-olt/misrc"],"tags_count":18,"template":false,"template_full_name":null,"purl":"pkg:github/Stefan-Olt/MISRC","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Stefan-Olt%2FMISRC","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Stefan-Olt%2FMISRC/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Stefan-Olt%2FMISRC/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Stefan-Olt%2FMISRC/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Stefan-Olt","download_url":"https://codeload.github.com/Stefan-Olt/MISRC/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Stefan-Olt%2FMISRC/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29319688,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-10T20:44:44.282Z","status":"ssl_error","status_checked_at":"2026-02-10T20:44:43.393Z","response_time":65,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["40msps","ad8138","ad9235","adc","analog-videos","cvbs","cvbs-decode","fm-rf-archival","fm-rf-capture","fpga","fx3","hifi-decode","ld-decode","ntsc","pal","s-video","sdr","tang-nano-20k","tape-decode","vhs-decode"],"created_at":"2025-08-29T20:35:27.415Z","updated_at":"2026-02-10T22:32:35.971Z","avatar_url":"https://github.com/Stefan-Olt.png","language":"HTML","funding_links":["https://ko-fi.com/s/617b72ab2c"],"categories":[],"sub_categories":[],"readme":"# MISRC - Multi Input Simultaneous Raw RF Capture\n\n[Hardware](#hardware-features) - [Firmware](#firmware-tang-nano-20k) - [Software](#software) - [Usage example](#capture--usage-example)\n\n\u003cpicture\u003e\n\u003cimg src=\"assets/hardware-images/MISRC_V1.5_Tang_Nano_20k_Sony_ILCE-7RM3_2024.10.21_03.14.08-Small.png\" width=\"600\" height=\"\" /\u003e\n\u003c/picture\u003e\n\n\u003e V1.5 with Tang Nano 20k on the FX3 to Tang Nano 20k adaptor PCB. \n\n\n## Description\n\n\nMISRC is a device to capture two signals at 12-bit and up to 40 MSPS (20 Mhz bandwith) (This could be extended to 80 MSPS in the future) and an additional 8-bit's (2-bit's for v2.5) of binary (auxiliary data) over USB 3.0.\n\nIt is intended to capture modulated tape deck RF for software demodulation, but also baseband CVBS/S-Video (Composite) video signals for software decoding, and can be used as a direct stream Oscilloscope but limited to 2vpp input voltage.\n\nThe Decode Projects:\n\n- [VHS-Decode](https://github.com/oyvindln/vhs-decode/)\n- [HiFi-Decode](https://github.com/oyvindln/vhs-decode/wiki/hifi-decode)\n- [CVBS-Decode](https://github.com/oyvindln/vhs-decode/wiki/CVBS-Composite-Decode) \n\nProvide decoding for a wide range of videotape formats, HiFi audio and even RAW or Baseband composite decoding with free and powerful software time base correction with full post filtering control over the signal processing.\n\n-----------\n\n| Media RF Type | MISRC Support |\n| ------------- | ------------- |\n| Video FM RF   | Yes           |\n| HiFi FM RF    | Yes           |\n| CVBS RF       | Yes           |\n| S-Video RF    | Yes           |\n\nPossible capture examples:\n\n- Capture 2x CVBS\n- Capture 1x S-Video (Y \u0026 C)\n- Capture Video RF and HiFi RF simultaneously\n- Capture Video RF and CVBS simultaneously\n- Capture 4ch of 24-bit 48khz audio with AUX pins via integrated or external clock-locked ADCs\n\n\u003e [!NOTE]\n\u003e It may be useful for other purposes as well, as it is built as a generic ADC with configurable filtering.\n\n\n## Hardware features\n\n- Duel ADC / Duel Input (BNC Connectors)\n- 6 Extra Aux inputs for audio ADC modules etc\n- Two 12-bit 40msps ADCs: [AD9235](https://www.analog.com/media/en/technical-documentation/data-sheets/AD9235.pdf)\n- Selectable input gain (8 steps) (using [AD8138](https://www.analog.com/media/en/technical-documentation/data-sheets/ad8138.pdf) op-amp)\n- Selectable ADC range (1V or 2V)\n- Selectable input impedance (75, 50, 37.5 and 30 ohms)\n- DC or AC (pre- or post-termination) coupling\n- Zero-adjust to compensate DC offset\n- Latching clipping indicator (automatic resetting on v2.5) \n- Clock source selectable: USB PLL (FX3 setup), crystal or external\n- Clock output SMA for external devices (In/Out for V2.5)\n- Melted PCB Traces\n\n\n## Costs\n\n\u003e [!TIP]  \n\u003e You can support the development and production of the MISRC platform [here](https://github.com/Stefan-Olt/MISRC/wiki/Donations).\n- PCB: 20-30USD\n- Parts 100-150USD\n- Single unit total production cost is currently 260-300USD.\n- [Order a V1.5 Development MISRC](https://github.com/Stefan-Olt/MISRC/wiki/Fabrication)\n\n------\n\n\u003e [!NOTE]  \n\u003e These are off-shelf PCBs and USB 3.0 devices that you add to the MISRC PCB.\n\n- [Tang Nano 20k](https://s.click.aliexpress.com/e/_DcwBOX3) - buffer / data output over HDMI.\n- [MS2130](http://en.macrosilicon.com/info.asp?base_id=2\u0026third_id=75) - [Order Link 1](https://s.click.aliexpress.com/e/_DBaBiOp) / [Order Link 2](https://s.click.aliexpress.com/e/_okDl2Vf) - HDMI raw data stream capture.\n\n\u003e [!TIP]  \n\u003e You can order pre-made [adaptor PCBs here](https://ko-fi.com/s/617b72ab2c) for V1.5 boards with the headders for the FX3.  \n\n## Firmware (Tang Nano 20k)\n\nTo be able to use the [Tang Nano 20k](https://s.click.aliexpress.com/e/_DcwBOX3) to send data over HDMI, it needs to be flashed once via USB connection:\n\n\u003cdetails closed\u003e\n\u003csummary\u003eFirmware Flashing \u003c/summary\u003e\n\u003cbr\u003e\n\n1. Download the firmare, see [releases](https://github.com/Stefan-Olt/MISRC/releases) for the latest version.\n\n2. Install [openFPGALoader](https://github.com/trabucayre/openFPGALoader)\n\n3. Connect your Tang to a USB 3.0 port via its Type-C, it will need this for 5V power after flashing, but not data from the MISRC.\n\n   Run via terminal inside the firmware directory\n\n       openFPGALoader -b tangnano20k -f hsdaoh_nano20k_misrc.fs\n\nYou have flashed your Tang Nano 20k! \n\n\u003c/details\u003e\n\n\n## Software\n\nSupported operating systems with direct links to the latest release (also available on the [releases tab](https://github.com/Stefan-Olt/MISRC/releases)):\n\n| Operating System  | Minimum supported OS version | Download x86_64 (Intel / AMD)                                                                                                                                  | Download arm64 (Apple Silicon / aarch64)                                                                                                                                   |\n| ----------------- | ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| Microsoft Windows | 10 (1803)                    | [misrc_tools-0.5.1-win-x86_64.zip](https://github.com/Stefan-Olt/MISRC/releases/download/misrc_tools-0.5.1/misrc_tools-0.5.1-win-x86_64.zip)                         | [misrc_tools-0.5.1-win-arm64.zip](https://github.com/Stefan-Olt/MISRC/releases/download/misrc_tools-0.5.1/misrc_tools-0.5.1-win-arm64.zip)                                       |\n| Apple macOS       | 10.15                        | [misrc_tools-0.5.1-macos-intel-x86_64.tar.gz](https://github.com/Stefan-Olt/MISRC/releases/download/misrc_tools-0.5.1/misrc_tools-0.5.1-macos-intel-x86_64.tar.gz)   | [misrc_tools-0.5.1-macos-apple-silicon-arm64.tar.gz](https://github.com/Stefan-Olt/MISRC/releases/download/misrc_tools-0.5.1/misrc_tools-0.5.1-macos-apple-silicon-arm64.tar.gz) |\n| Linux             | libc6 2.35 (Ubuntu 22.04)    | [misrc_tools-0.5.1-linux-x86_64.tar.gz](https://github.com/Stefan-Olt/MISRC/releases/download/misrc_tools-0.5.1/misrc_tools-0.5.1-linux-x86_64.tar.gz)               | [misrc_tools-0.5.1-linux-arm64.tar.gz](https://github.com/Stefan-Olt/MISRC/releases/download/misrc_tools-0.5.1/misrc_tools-0.5.1-linux-arm64.tar.gz)                             |\n\n\n\u003e [!NOTE]  \n\u003e The arm64 builds for Windows are untested and considered experimental!\n\nThe packages contain two command-line applications, `misrc_capture` and `misrc_extract`. For detailed usage information see the [misrc_tools readme](/misrc_tools/README.md) and the [usage example](#capture--usage-example) down below.\n\nIf you want to build the tools yourself, see the instructions in the [misrc_tools readme](/misrc_tools/README.md).\n\n\u003cdetails closed\u003e\n\u003csummary\u003eInstall Windows\u003c/summary\u003e\n\u003cbr\u003e\n\nFor `misrc_capture` to be able to access the MS2130 capture device, you need to install a special driver:\n\nFirstly download [Zadig](https://zadig.akeo.ie/)\n\nForce the installation of `WinUSB (v6.1.7600.16385)` or `libusb-win32 (v1.2.6.0)` driver on your MS2130/MS2131 adapter, on `interface 0` leave `interface 4` alone. \n\n```\nInterface 0 - USB Video\nInterface 4 - HIDDevice\n```\n\n\u003c/details\u003e\n\n\u003cdetails closed\u003e\n\u003csummary\u003eInstall macOS\u003c/summary\u003e\n\u003cbr\u003e\n\nFor macOS you do not need to install anything.\n\n- macOS versions 10.15 and 11: You can directly execute `misrc_capture`.\n- macOS 12 and later: You have to run `misrc_capture` as root (sudo). This is a new security feature by Apple, there is currently no way to bypass it. \n\n\u003c/details\u003e\n\n\u003cdetails closed\u003e\n\u003csummary\u003eInstall Linux\u003c/summary\u003e\n\u003cbr\u003e\n\nIf you want to run `misrc_capture` as root, there is no need to install anything on Linux.\n\nBut for `misrc_capture` to be able to access the MS2130 capture device without root privilege (sudo), you need to install a udev-rule and add the user that will use `misrc_capture` to the `plugdev`-group.\nThe pre-build packages contains the script `install-udev-rules.sh`. On execution (double-click the file or run `./install-udev-rules.sh` on the command line) it will install the rule and add the current user to the plugdev group.\n\n\u003c/details\u003e\n\n\n## Capture / Usage example\n\n\n\u003e [!TIP]  \n\u003e Pre-built Binaries is available on the [releases tab](https://github.com/Stefan-Olt/MISRC/releases).\n\n`misrc_capture` is a simple command line interface program to capture from MISRC boards using [hsdaoh](https://github.com/Stefan-Olt/hsdaoh) to which leverages data capture over HDMI with [MS2130](https://s.click.aliexpress.com/e/_DBaBiOp) \"U3\" cheep HDMI capture cards that have YUV support and full-frame signal acesses. \n\nCreate a folder which you wish to capture inside, open it inside terminal and then run `misrc_capture`.\n\nExample with FLAC compression:\n    \n    misrc_capture -p -f -l 8 -a video_rf.flac -b hifi_rf.flac \n\nExample RAW:\n\n    misrc_capture -a video_rf.s16 -b hifi_rf.s16\n\n\nExample with AUX pins capture ([PCM1802 audio example](https://github.com/Stefan-Olt/MISRC/wiki/PCM-Extract))\n\n    misrc_capture -p -f -l 8 -a video_rf.flac -b hifi_rf.flac -x pcm1802.bin\n\nYou can also define its directory path of each RF stream manually: \n\n    misrc_capture -p -f -l 8 -a /mnt/my_video_storrage/video_rf.flac -b ../../this/is/a/relative/path/hifi_rf.flac\n\nPress \u003ckbd\u003eCtrl\u003c/kbd\u003e+\u003ckbd\u003eC\u003c/kbd\u003e to copy and \u003ckbd\u003eCtrl\u003c/kbd\u003e+\u003ckbd\u003eP\u003c/kbd\u003e to past your config from a notepad or txt file.\n\nUse \u003ckbd\u003e\u003c\u003c/kbd\u003e+\u003ckbd\u003e\u003e\u003c/kbd\u003e to move edit position on the command line to edit the name or command while in terminal and \u003ckbd\u003eEnter\u003c/kbd\u003e to run the command.\n\n\u003ckbd\u003eCtrl\u003c/kbd\u003e+\u003ckbd\u003eC\u003c/kbd\u003e Will kill the current process, use this to stop the capture manually.\n\n\n\u003cdetails closed\u003e\n\n\u003csummary\u003eUsage Arguments:\u003c/summary\u003e\n\u003cbr\u003e\n\n\nExample:\n\n    misrc_capture -p -f -l 8 -a video_rf.flac -b hifi_rf.flac -x baseband_audio.bin\n\nUsage:\n\n- `-d` device_index (default: 0) (select target MS21xx device for capture)\n- `-n` number of samples to read (default: 0, infinite)\n- `-t` time to capture (seconds, m:s or h:m:s; -n takes priority, assumes 40msps)\n- `-w` overwrite any files without asking\n- `-a` ADC A output file (use '-' to write on stdout)  \n- `-b` ADC B output file (use '-' to write on stdout)  \n- `-x` AUX output file (use '-' to write on stdout)  \n- `-r` RAW 32-Bit data output file (use '-' to write on stdout)  \n- `-p` pad lower 4 bits of 16 bit output with 0 instead of upper 4\n- `-A` suppress clipping messages for ADC A (need to specify -a or -r as well)\n- `-B` suppress clipping messages for ADC B (need to specify -a or -r as well)\n- `-f` compress ADC output as FLAC  \n- `-l` LEVEL set flac compression level (default: 1) \n- `-v` enable verification of flac encoder output  \n- `-c` number of flac encoding threads per file (default: auto)\n\n\u003c/details\u003e\n\n\n## Setting Up the MISRC\n\n\n- Connect your 5V USB-C to the Tang Nano for power. \n\n- Connect your HDMI cable (copper or fibre) to your Tang Nano for data output to the MS2130 or MS2131. \n\n- Connect the desired sources to the BNC inputs and select suitable impedance and AC or DC coupling.\n\n\u003e [!NOTE]\n\u003e You will want to use 2vpp range rather than 1vpp range to make use of the 12-bits range.\n\nInstall [OCENAudio](https://www.ocenaudio.com/) or alternatives like [Audacity](https://www.audacityteam.org/download/) it will see captures as a `40khz 16-bit` file.\n\nRun a 3-second test capture in FLAC, to be automatically reloaded for viewing. \n\n    misrc_capture -p -f -B -t 3 -a test.flac\n\nStart the capturing process for setting the DC offset then gain:\n    \n    - Reset clipping LEDs (always on after start or major adjustment) \n    - Increase gain during capture until clipping LED lights up\n    - Decrease gain one step and reset clipping LED\n    - Repeat for the second channel if in use.\n\n- Stop capture and verify levels are acceptable in your audio DAW and the signal is centred.\n\nOnce happy, then do a full test capture to verify. \n\n\u003e [!CAUTION]\n\u003e - NEVER use USB for any other heavy-load task (like external HDD/SSD drives, USB network adaptors, YUV capture devices) during capture. \n\u003e - Do not connect/disconnect any other USB device during capture, a dedicated USB 3.0 to 3.2 Gen 2 card is ideal for dedicated capture stations as it ensures dedicated bandwidth/power if you have other items that require USB.\n\n\n## Design\n\n\nMISRC is loosely based on the [Domesday Duplicator (DdD)](https://github.com/simoninns/DomesdayDuplicator) a LaserDisc focused ([ld-decode](https://github.com/happycube/ld-decode)) FM RF Archival device. \n\n\nIt is built around the AD9235 analogue to digital converter by Analog Devices and is heavily based on the evaluation board circuit given in its datasheet with the AD8138 Op-Amp providing adjustable fixed gain.\n\nThe MISRC like the DdD it originally used the [Cypress FX3 SuperSpeed Explorer board](https://www.infineon.com/cms/en/product/evaluation-boards/cyusb3kit-003/) for a USB 3.0 data connection, and using Sigronk for capture, with hopes to not use the DE0 FPGA, this ended with the adoption of the Tang Nano 20k and MS2130 \"data over YUV\" method being used. \n\n\n## License\n\nThe hardware, firmware and software is released under different open-source licenses.\nYou can read the [License here](https://github.com/Stefan-Olt/MISRC/wiki/Licenses)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstefan-olt%2Fmisrc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstefan-olt%2Fmisrc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstefan-olt%2Fmisrc/lists"}