Parallel Programming Framework for H.264/AVC Video Encoding in Multicore Systems (bibtex)
by Nuno Roma, António Rodrigues and Leonel Sousa
Abstract:
Summary To circumvent the recognized need for a generic and highly modular software (SW) architecture that can be used to efficiently implement H.264/AVC encoders in a vast set of different parallel structures, an innovative parallel programming framework is presented. To ensure the maximum flexibility of the framework, several modules of the encoder were carefully structured and implemented in independent routines. With such approach, it becomes possible to easily exploit functional-level parallelism, by using pipeline or data-flow topologies where each available core/accelerator may implement a different encoder module. In slice-level parallelism, frames are divided in several independent slices, making the processing of macroblocks (MBs) from different slices completely independent. The design principle corresponding to the straight parallel topology is particularly targeted for the exploitation of data-level parallelism, where the slices are assigned to similar concurrent threads that are independently executed.
Reference:
N. Roma, A. Rodrigues and L. Sousa, "Parallel Programming Framework for H.264/AVC Video Encoding in Multicore Systems", in Programming multi‐core and many‐core computing systems, S. Pllana, F. Xhafa, Eds., John Wiley & Sons, Ltd, 2017, pp. 281-300.
Bibtex Entry:
@InCollection{pmmcs11,
  author     = {Nuno Roma and António Rodrigues and Leonel Sousa},
  booktitle  = {Programming multi‐core and many‐core computing systems},
  title      = {Parallel Programming Framework for H.264/AVC Video Encoding in Multicore Systems},
  chapter    = {14},
  doi        = {10.1002/9781119332015.ch14},
  editor     = {Sabri Pllana and Fatos Xhafa},
  eprint     = {https://onlinelibrary.wiley.com/doi/pdf/10.1002/9781119332015.ch14},
  isbn       = {9781119332015},
  pages      = {281-300},
  publisher  = {John Wiley & Sons, Ltd},
  url        = {nfvr_pubs/pmmcs11.pdf},
  abstract   = {Summary To circumvent the recognized need for a generic and highly modular software (SW) architecture that can be used to efficiently implement H.264/AVC encoders in a vast set of different parallel structures, an innovative parallel programming framework is presented. To ensure the maximum flexibility of the framework, several modules of the encoder were carefully structured and implemented in independent routines. With such approach, it becomes possible to easily exploit functional-level parallelism, by using pipeline or data-flow topologies where each available core/accelerator may implement a different encoder module. In slice-level parallelism, frames are divided in several independent slices, making the processing of macroblocks (MBs) from different slices completely independent. The design principle corresponding to the straight parallel topology is particularly targeted for the exploitation of data-level parallelism, where the slices are assigned to similar concurrent threads that are independently executed.},
  keywords   = {data-level parallelism, functional-level parallelism, H.264/AVC video encoding, highly modular software architecture, multicore system, parallel programming framework, slice-level parallelism, read},
  readstatus = {read},
  year       = {2017},
}
Powered by bibtexbrowser