User Tools

Site Tools


duga:programmer

Architecture, hacking

Branch “refactor”:

  • Multi-threaded application using C++11 threads.
  • CmdParser class that eats commands and executes various things (updates Gconf_s/Compose_s)
  • spawns other threads and passes three parameters to them:
    • Gconf_s - contains variables like framerate and resolution
    • compose - vector of pointers to Compose_s, each element describes one signal source
    • compose_mtx - mutex to protect that vector
  • data:
    • audio samples are read into queue
    • video samples into preallocated vector, because there are 100 MB/s of it and I don't want to have allocations and deallocations in queue
  • AudioReader.cpp, VideoReader.cpp - reads audio/video into “compose”
    • each signal source has one reader thread
  • AudioStreamer.cpp, VideoStreamer.cpp - reads “compose”, combines frames and outputs them
duga/programmer.txt · Last modified: 2016-05-18 01:37:11 by 127.0.0.1

Except where otherwise noted, content on this wiki is licensed under the following license: Public Domain
Public Domain Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki