Giter VIP home page Giter VIP logo

st2110-toolkit's Introduction

ST 2110 software toolkit

This toolkit aims at capturing, analysing and transcoding SMPTE ST 2110 streams.

Features:

  • capture RTP packets with high precision timestamps
  • transcode ST 2110 essences to h264
  • provide various pcap tools
  • provide a recipe to create a live version of EBU-LIST
  • troubleshoot the network by capturing traffic on remote hosts

Sponsored by:

logo

Tested distros:

  • Centos 7
  • Dockerized Centos 7
  • Ubuntu > 20.04

Install

The repo contains multiple install sub-scripts, use the one in TOP DIRECTORY ONLY.

$ ./install.sh
Usage: ./install.sh <section>
sections are:
    * common:       compile tools, network utilities, config
    * ptp:          linuxptp
    * transcoder:   ffmpeg, x264, mp3 and other codecs
    * capture:      dpdk-based capture engine
    * ebulist:      EBU-LIST pcap analyzer, NOT tested for a while
    * nmos:         Sony nmos-cpp node and scripts for SDP patching

Regardless of your setup, please install 'common' section first.

Configuration

Both capture and transcoder scripts have default parameters but they can be overriden by a config file to be installed as /etc/st2110.conf. See the sample. This config also provisions an EBU-LIST server in live mode, i.e. connected to a ST 2110 network.

Capture

These instructions show how to setup a performant stream capture engine based on Nvidia/Mellanox NIC + DPDK.

rtcdump is standalone remote capture tool for generic network issue.

Transcode

It is required to go through the capture process before in order to validate all the underlying layers forwards a stream to an application. Then one can use our FFmpeg-based transcoder following these instructions.

EBU-LIST

Follow the integration guide for a complete capture and analysis solution.

NMOS

README shows a POC for a NMOSisfied transcoder. And various scripts are propose to get SDP file from source and patch them to destination.

Pcap tools

Pcap folder contains helper scripts which operate on PCAP files:

  • ancillary editor: insert different types of failure in SMPTE ST 291-1 payload
  • RTP pkt drop detector: count packets and drops for every (src/dst) IP pair found in a given pcap file
  • video yuv extractor: convert RFC4175 payload into raw YUV file
  • audio extractor: convert AES 67 payload into raw file

Dependencies:

TODO

  • test the RFC4175 encoder in ffmpeg
  • build a docker image for transcoder
  • test recent version of linux-ptp to validate that pmc no longer needs root permission
  • rework./capture/nic_setup.sh
  • nmos-poller: display ffmpeg status

Additional resources

st2110-toolkit's People

Contributors

pkeroulas avatar blackfoxsar avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.