---
title: "AviWatermark Class"
canonical: https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_Codecs_AviWatermark.htm
product: "Graphics Mill 5.5 for .NET"
---

This documentation is for the old version. [Go to the latest Graphics Mill docs](https://www.graphicsmill.com/docs/gm/)

# AviWatermark Class
 
This class enables you to put a watermark on each frame when creating new AVI file.
 
**Namespace:** [Aurigma.GraphicsMill.Codecs](https://www.graphicsmill.com/docs/gm5/N_Aurigma_GraphicsMill_Codecs.htm.md)
 **Assembly:** Aurigma.GraphicsMill.Codecs.AviProcessor (in Aurigma.GraphicsMill.Codecs.AviProcessor.dll)
 
## Syntax
  
```
Public NotInheritable Class AviWatermark _Inherits LockableObject
```
 
```csharp
public sealed class AviWatermark : LockableObject
```
 
## Remarks
  
*Watermark* is some imagery which is drawn on video frames. For example, it can be a logo of your company, timer, timestamp, video movie caption, subtitles, etc.
 
Each watermark object is always associated with a [AviWriter](https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_Codecs_AviWriter.htm.md) object. Whenever a frame is added into the writer, the watermark is automatically drawn on this frame.
 
The only way to get an instance of the AviWatermark class is to retrieve it via the [Watermark](https://www.graphicsmill.com/docs/gm5/P_Aurigma_GraphicsMill_Codecs_AviWriter_Watermark.htm.md) property of the writer.
 
AviWatermark supports two kinds of watermarks: *bitmap watermark* and *timer watermark*:
 
1. Bitmap watermark is represented the static raster image drawn on each frame. To enable it, set the [BitmapVisible](https://www.graphicsmill.com/docs/gm5/P_Aurigma_GraphicsMill_Codecs_AviWatermark_BitmapVisible.htm.md) property to **true** and put the bitmap you want to draw on the video to the [Bitmap](https://www.graphicsmill.com/docs/gm5/P_Aurigma_GraphicsMill_Codecs_AviWatermark_Bitmap.htm.md) property.
2. Timer watermark displays the time-related information on the video. This class supports three kinds of timer watermarks (described by the [AviTimerStyle](https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_Codecs_AviTimerStyle.htm.md) enumeration):

    - [CurrentDateTime](https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_Codecs_AviTimerStyle.htm.md) - date/time of movie creation.
    - [VideoTime](https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_Codecs_AviTimerStyle.htm.md) - video timer (displays hours, minutes, and seconds of the current frame).
    - [VideoTimeAndFrame](https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_Codecs_AviTimerStyle.htm.md) - the same as previous point, but in addition to timer it displays the current frame number.

    To enable the timer watermark, set the [TimerVisible](https://www.graphicsmill.com/docs/gm5/P_Aurigma_GraphicsMill_Codecs_AviWatermark_TimerVisible.htm.md) property to **true** and select the necessary timer style using the [TimerStyle](https://www.graphicsmill.com/docs/gm5/P_Aurigma_GraphicsMill_Codecs_AviWatermark_TimerStyle.htm.md) property. There are also other **TimerXXX** properties which adjusts the apperarance of this watermark, etc.

These two options cover most watermarking needs. However if it is not flexible enough for you, you can use [DrawingWatermark](https://www.graphicsmill.com/docs/gm5/E_Aurigma_GraphicsMill_Codecs_AviWatermark_DrawingWatermark.htm.md) and [DrawnWatermark](https://www.graphicsmill.com/docs/gm5/E_Aurigma_GraphicsMill_Codecs_AviWatermark_DrawnWatermark.htm.md) events. These events are raised for each frame to be watermarked, and you can draw any watermark you need. As usual it is handy when the watermark should be variable (e.g. display first 10 seconds and hide it for the rest of the movie).
 
You can combine all these kinds of watermarking. In particular, you can set both [BitmapVisible](https://www.graphicsmill.com/docs/gm5/P_Aurigma_GraphicsMill_Codecs_AviWatermark_BitmapVisible.htm.md) and [TimerVisible](https://www.graphicsmill.com/docs/gm5/P_Aurigma_GraphicsMill_Codecs_AviWatermark_TimerVisible.htm.md) properties to **true** and additionally draw the watermark using events.
 
## Inheritance Hierarchy
  
- [System.Object](http://msdn2.microsoft.com/en-us/e5kfa45b)
    - [Aurigma.GraphicsMill.LockableObject](https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_LockableObject.htm.md)
        - Aurigma.GraphicsMill.Codecs.AviWatermark
 
## Thread Safety
 Static members of this type are safe for multi-threaded operations. Instance members of this type are safe for multi-threaded operations.
 
## Object Model

[![](https://www.graphicsmill.com/docs/gm5/Aurigma.GraphicsMill.Codecs.AviProcessor_ObjectModel_11.png)](https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_Codecs_AviWatermark.htm.md)
![](https://www.graphicsmill.com/docs/gm5/ObjectModel2.png)[![](https://www.graphicsmill.com/docs/gm5/Aurigma.GraphicsMill.Codecs.AviProcessor_ObjectModel_10.png)](https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_Bitmap.htm.md)
![](https://www.graphicsmill.com/docs/gm5/ObjectModel2.png)[![](https://www.graphicsmill.com/docs/gm5/Aurigma.GraphicsMill.Codecs.AviProcessor_ObjectModel_13.png)](https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_Drawing_Font.htm.md)
![](https://www.graphicsmill.com/docs/gm5/ObjectModel2.png)[![](https://www.graphicsmill.com/docs/gm5/Aurigma.GraphicsMill.Codecs.AviProcessor_ObjectModel_14.png)](https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_Drawing_SolidBrush.htm.md)
![](https://www.graphicsmill.com/docs/gm5/ObjectModel1.png)![](https://www.graphicsmill.com/docs/gm5/Aurigma.GraphicsMill.Codecs.AviProcessor_ObjectModel_15.png)
  
## See Also

### Reference

- [AviWatermark Members](https://www.graphicsmill.com/docs/gm5/AllMembers_T_Aurigma_GraphicsMill_Codecs_AviWatermark.htm.md)
- [Aurigma.GraphicsMill.Codecs Namespace](https://www.graphicsmill.com/docs/gm5/N_Aurigma_GraphicsMill_Codecs.htm.md)
