# Data Embedding in SHVC Video Using Threshold-Controlled Block Splitting
## 3 Proposed Data Embedding Method
### Data Embedding  
To embed data, the payload bits are associated with the intra prediction modes of intra-coded blocks, as well as the MVP of the inter-coded blocks during intra and inter picture predictions, respectively. Let \(M=\{m_{i}\}_{1}^{N}\) be the payload, where \(m_{i}\in\{0,1\}\) and let \(N\) denote the length of \(M\). The process in threshold guided block splitting and data embedding is shown in Algorithm 1. The RDC comparison process (i.e., line 19 to 22 in Algorithm 1) is performed for each partitioning depth level, and the process is repeated until all blocks are compared. Here, the intra prediction mode and MVP candidate selection decision in all scalable coded layers are manipulated to realize data embedding. Without  
Figure 3: Example of threshold guided block splitting. Figure 2: Example of block splitting. loss of generality, the descriptions for data embedding are based on a two-layer setting in a scalable coded video. Let \(\theta\) denote the intra prediction mode, and let \(p\) denote the parity of the intra prediction mode, i.e., \(p=f(\theta)\). When coding in intra mode, the RDO determines the best intra prediction mode to be coded. When the payload bit to be embedded differs from the parity of the best prediction mode (i.e., \(m_{i}\
eq p\)) in the smallest PB, viz., \(4\times 4\), the intra prediction mode with the opposite parity bit with the best \(RDC\) from the candidate list is selected in place of the originally recommended one. In most cases, the second best prediction direction deviates slightly from the best intra prediction mode \(\theta_{best}\), viz., either \(\theta_{best}+1\) or \(\theta_{best}-1\). For example, when a payload bit \(m_{i}\) to be embedded in BL differs from the parity bit of the intra prediction mode \(p\), the intra prediction direction angle is either increased or decreased to the next angle. The selection of optimum mode \(\theta_{\text{Best}}\) is formulated below:  
\[\theta_{\text{Best}}=\underset{p=m_{i}}{\arg\min}\{\text{RDC}(\theta,p)\}. \tag{2}\]  
To facilitate further presentation, let the term _spatially co-located blocks_ refer to two or more groups of blocks in different (resolutions) layers encoding the same visual information, but each in different resolution. Inter-layer prediction in SHVC uses the reconstructed video signal from a reference layer (denoted by EL\({}_{k}\), for \(k<c\) where BL = EL\({}_{0}\)) to improve the coding efficiency of the current enhancement layer EL\({}_{c}\). During inter-layer prediction, the co-located reconstructed blocks (viz., the visual information) from the reference layer EL\({}_{k}\) are tagged with reference indices in the reference picture lists in addition to other prediction information in the current encoding layer EL\({}_{c}\). In order to achieve inter-layer prediction, EL requires the reconstructed pictures from the BL decoded picture buffer, which includes the reconstructed texture samples, and other prediction information [10]. Therefore, the intra prediction mode of the spatially co-located reconstructed block in the reference layer EL\({}_{k}\) can be included as a candidate for the intra prediction mode in EL\({}_{i}\) to improve the coding efficiency. When a block is selected for data embedding, the inter-layer intra prediction mode is set to the highest priority and labelled as the top performer in the candidate list so that it is selected for coding. Recall that the intra prediction mode assumes an integer value in the interval of \([0,34]\), hence up to five bits (i.e., \(\lfloor\log_{2}(35)\rfloor=5\)) can be embedded. Here, a threshold parameter \(\xi\) can be introduced to limit the number of bits to be embedded. To embed data, the sequence of bits induced by the intra prediction mode, namely \(p_{\xi-1}p_{\xi-2}\cdots p_{0}\), is utilized to perform the bitwise-XOR operation with the payload bits \(m_{i}\), i.e., \(p_{i}^{\prime}=p_{i}\oplus m_{i}\). The resulting sequence \(\{p_{i}^{\prime}\}\) is converted into a decimal value.