1. 10 Dec, 2019 1 commit
  2. 03 Jul, 2019 1 commit
    • Andre Guedes's avatar
      avtp: Introduce AVTP sink element · 37550226
      Andre Guedes authored
      This patch introduces the avtpsink elements which implements a typical
      network sink. Implementation is pretty straightforward since the burden
      is implemented by GstBaseSink class.
      
      The avtpsink element defines three new properties: 1) network interface
      from where AVTPDU should be transmitted, 2) destination MAC address
      (usually a multicast address), and 3) socket priority (SO_PRIORITY).
      
      Socket setup and teardown are done in start/stop virtual methods while
      AVTPDU transmission is carried out by render(). AVTPDUs are encapsulated
      into Ethernet frames and transmitted to the network via AF_PACKET socket
      domain.  Linux requires CAP_NET_RAW capability in order to open an
      AF_PACKET socket so the application that utilize this element must have
      it. For further info about AF_PACKET socket domain see packet(7).
      
      Finally, AVTPDUs are expected to be transmitted at specific times -
      according to the GstBuffer presentation timestamp - so the 'sync'
      property from GstBaseSink is set to TRUE by default.
      37550226