How to Overlay Text or Add Logo Over Videos in VLC

If you want to add a text or a logo over a video that is playing in VLC media Player, then you can simply do it with the Video Effects Overlay feature in the application. It allows you to easily type in something and display it over the video that is currently playing. If you have a logo or graphic then you can also place it on the media that is playing. You can also select the position of the displayed logo or text. Think of it as branding for your media without hard-coding anything in the video file itself. You can use this feature when broadcasting to an audience.

Here is how you overlay text on videos:

  • Go to Tools > Effects and Filters. [Shortcut: CTRL + E or Command + E]
  • Switch over to the Video Effects
  • Under it, choose the Overlay
  • Check the Add text
    Add Text Over Videos
  • Type the Text. It can be anything you want.
  • Choose the position like center, top, bottom-right etc.
  • Hit Close when you are done.

The method to add a logo is similar. It is available under the same options. But you need a graphic image file (*.png, *.jpg) beforehand.

Here are the steps to add logo over videos:

  • Open up Effects and Filters option from the Tools. [Shortcut: CTRL + E or Command + E]
  • Navigate to Video Effects > Overlay
  • Turn on the Add logo checkbox.
    Overlaying Logo over Video
  • Click the three dots button to browse for your graphic logo file in jpg or png.
  • Under it, you can choose the position by specifying the Top and Left
  • Drag the transparency slider towards to left to make sure the graphic doesn’t block the video.
  • Hit on Close when you are done.

13 thoughts to “How to Overlay Text or Add Logo Over Videos in VLC”

  1. When I do this, the text appears on the video when I use VLC Media Player. However, if I open the video file in another program, the text is gone. How can I “burn” the text into the file so that it is seen no matter what media program I use?

  2. How comes the added text on the VLC video applies to all the other videos in that same folder like i inserted the text on video 1 then it applied in video 2 video 3…how do i ensure each video has it’s own text?

  3. How do i get text in each of my mosaic windows: Here is what I am doing:

    #1
    new ch1 broadcast enabled
    setup ch1 input “rtsp://User:[email protected]:yyyyy/stream1”
    setup ch1 output #mosaic-bridge{id=ch1,width=256,height=256}

    #2
    new ch2 broadcast enabled
    setup ch2 input “rtsp://User:[email protected]:yyyyy//stream1”
    setup ch2 output #mosaic-bridge{id=ch2,width=256,height=256}

    setup bg input “Back.png”
    setup bg option image-duration=-1
    setup bg output

    #transcode{vcodec=jpeg,vb=10000,fps=25,acodec=none,channels=16,sfilter=mosaic{alpha=255,width=1024,height=1048,order=”ch1,ch2″, keep-picture=1}}:bridge-in{offset=0}:display

  4. how do I adjust the size of overlay in the video. I am trying to insert a scale in the video as overlay to read data but scale is not accurate. I need to resize the scale so that it reads accuratly.

  5. Is there a way to get an overlay to track with a moving object. For example, can I get an arrow to track above a football player in a scout video?

      1. is there any media player app where i can put the movie title on the screen in every movie playing? Thanks

  6. Is there a way to do what you described in “batch mode” … I have a bunch of “clips” and I want to add a text/image overlay to all of them … e.g., VLC command line mode.

  7. Is there a way to overlay text but change the overlay as the video plays? I.e. the overlay would say one thing for the first 30 seconds, then change to something else from 30 seconds to 2 minutes, then change again, etc.?

    1. Go to Tools > Preferences > Subtitles / OSD > Font size and change the value to Large or Larger. Stop and re-open the video to make the text size increase. It will also impact your subtitle size along with the displayed on-screen text.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.