How to overlay a graphic onto one frame of MPEG-2 video
December 4, 2007 1:14 PM   Subscribe

Is there a video editing tool that can overlay a graphic onto a single frame of an MPEG-2 video?

I need to take a graphic (still picture) and overlay it onto the first frame of an existing MPEG-2 video (or just graft it on as the first frame of the video, if that's significantly easier). The graphic has not been generated yet, so the format can be pretty flexible, although I imagine it would be a .gif or .bmp, or something similar.

I'd be amazed if there's not some video editor that can "just do it". But I don't know which editor(s) and I need to do it very soon. I'd prefer something free that runs on MS Windows, but don't hesitate to mention commercial software as well. If there's a simple Linux command-line program that would do it, I could probably use it. If you can tell me how to do it step-by-step for the software you recommend, I'd appreciate that, too. (I could probably figure it out eventually, but time is of the essence.)
posted by Crabby Appleton to Computers & Internet (10 answers total)
womble's mpeg video editor might be able to do it. free download here. it's a non-destructive editor with a timeline. but i can't promise anything.
posted by ascullion at 1:19 PM on December 4, 2007

I can only recommend commercial software like Adobe After Effects, but that's obviously far from free. I'm curious exactly why you are trying to edit only the first frame of video. Can you tell me how the video will be used?
posted by itchylick at 1:23 PM on December 4, 2007

Also, working with transcoded video can be unpredictable in my experience.
posted by itchylick at 1:25 PM on December 4, 2007

Quicktime pro will do it open your mpeg layer 2 file with quicktime. Open graphic file in another quicktime player.
Drag drop save done.

This is all in Mac land so YMMV
posted by jade east at 1:36 PM on December 4, 2007

itchylick: We're working with a video player that we can't modify. In its playlist, it displays the first frame as a thumbnail. We want it to display some metadata about the video in that thumbnail (and the metadata is not plain text). I.e., this is a hack.

I appreciate all the responses so far, and I might end up going with one of them, but so far they seem to fall into the categories of "expensive" and "dubious", so please don't hesitate to suggest more alternatives. Thanks.
posted by Crabby Appleton at 2:25 PM on December 4, 2007

Maybe a simple program like VideoReDo would work.
They have a free trial.
I have a client who has worked with mpg2 files in adobe premiere with no problems on a PC but its a bit of coin.
posted by jade east at 3:13 PM on December 4, 2007

Is it an MPEG-2 PS stream (and not a TS stream)? In that case, you might be able to create a single frame MPEG-2 stream using your image and simply join the two files together (copy /b file1.mpg file2.mpg joined.mpg in cmd.exe for example).

See these questions in the ffmpeg faq: 1.2 How do I encode single pictures to movies? (although you need to change the parameters to create an MPEG-2 file instead of an MPEG-1 file if I remember correctly) and 1.24 How can I join video files?

You can get a windows binary of ffmpeg from e.g
here, but any program that can create MPEG-2 files from images should work.
posted by rpn at 3:22 PM on December 4, 2007

Adobe Premier Elements can do this by importing the video and the image and then dragging and dropping onto the timeline, you could even do a transition if you'd like. Not free though.
posted by Craig at 3:45 PM on December 4, 2007

What Craig said.

Just put the video on video layer 1, and the graphic on video layer 2. I've done this many times.

You can even move the graphic around to create simple animation.
posted by Artifice_Eternity at 7:14 PM on December 4, 2007

On the off chance that you're embedding Windows Media player, there is a parameter that allows you to set the first frame of your movie to transparent. You can then nest your movie code in div tags with a background using the image you want to show. This may not be possible with your player, but it's worth looking into.

Windows media parameter:
transparentatStart" value="1"

Email me if you want the code.
posted by itchylick at 7:24 AM on December 5, 2007

« Older Sharpening my pruning katana as we speak   |   I NEEEEEEEEEEED this bikini! Newer »
This thread is closed to new comments.