MASTER THESIS Video Watermarking - Computer Graphics Group ...
MASTER THESIS Video Watermarking - Computer Graphics Group ...
MASTER THESIS Video Watermarking - Computer Graphics Group ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Chapter 4<br />
Implementation Details<br />
This chapter deals with implementation details of the software framework<br />
for watermark embedding and detection.<br />
A partial decoder / encoder (codec), as mentioned in Section 2.2, of H.264<br />
video streams has been implemented in order to obtain transform coefficients for<br />
direct watermark embedding in frequency domain and further processing for<br />
embedding in spatial domain.<br />
Further, a generic framework for watermarking of H.264 streams in both<br />
spatial and frequency domains has been designed and implemented. In this<br />
framework, three different watermarking methods have been written. The<br />
practical comparison of these methods is presented in Chapter 5.<br />
4.1 The H.264 Codec<br />
The partially decoding part of the codec is implemented according to the<br />
H.264 standard [9]. Of course, there are free implementations of the standard but<br />
writing an own helps to deeply understand the standard and video compression<br />
at all. Moreover, the transform coefficients are needed only, not fully decoded<br />
visible pictures.<br />
The decoder produces all syntactical elements of a stream which are<br />
relevant for watermarking. In particular, it decodes and parses SPSs, PPSs, slices<br />
and macroblocks up to transform coefficients. During the process, it checks<br />
whether the decoded elements and the whole stream are correct. When an error<br />
occurs, it is reported by a message of particular severity level (critical error, error,<br />
warning etc.) and decoding of the current NAL unit ends immediately.<br />
The encoding part of the codec is written as an inverse process to decoding<br />
because the standard contains only fragment information about the process. The<br />
19