每個視頻Sample都有一幀未壓縮的圖像數據,字符疊加實際上就是將指定位置的圖像的像素值替換爲字符圖像的像素值。
一種直觀的想法是將圖像幀選入GDI的DC中,再使用GDI函數TextOut和DrawText等直接在圖像幀上輸出字符,這種做法效率不理想,很難達到實時渲染。
另一種可選的方法是在內存中創建一個二位位圖,在位圖上畫出字符內容,於是我們就拿到了字符內容的一塊點陣信息。如0表示背景,1表示字符。在疊加的時候,將視頻幀指定位置與點陣進行對應,1的話就替換調視頻幀內容。
每個視頻Sample都有一幀未壓縮的圖像數據,字符疊加實際上就是將指定位置的圖像的像素值替換爲字符圖像的像素值。
一種直觀的想法是將圖像幀選入GDI的DC中,再使用GDI函數TextOut和DrawText等直接在圖像幀上輸出字符,這種做法效率不理想,很難達到實時渲染。
另一種可選的方法是在內存中創建一個二位位圖,在位圖上畫出字符內容,於是我們就拿到了字符內容的一塊點陣信息。如0表示背景,1表示字符。在疊加的時候,將視頻幀指定位置與點陣進行對應,1的話就替換調視頻幀內容。