VLC's H.264 + AAC (MP4) Profile: What It Is and How to Use It
VLC's 'Video - H.264 + AAC (MP4)' profile explained: what it does, when to use it, step-by-step conversion in VLC's Convert/Save dialog, quality settings, and common problems to avoid.

VLC's 'Video - H.264 + AAC (MP4)' profile explained: what it does, when to use it, step-by-step conversion in VLC's Convert/Save dialog, quality settings, and common problems to avoid.

When you open VLC's Convert/Save dialog, the profile dropdown shows a list of presets. Near the top is Video - H.264 + AAC (MP4). This is the most widely compatible general-purpose conversion preset VLC ships with, and it is the right starting point for most format conversion tasks.
Let's break down each component of the name:
H.264 (also called AVC, Advanced Video Coding) is the video codec. It encodes the picture stream using a compression algorithm that has been the universal standard since around 2004. Every smartphone, browser, TV, game console, and media player released in the past fifteen years can decode H.264 without extra software. It is not the most efficient codec — H.265 achieves similar quality at half the file size — but it is the most compatible.
AAC (Advanced Audio Coding) is the audio codec. It replaced MP3 as the default audio format for most digital distribution. AAC at 128 kbps is audibly equivalent to MP3 at 192 kbps. Like H.264, AAC is supported natively on every major platform.
MP4 is the container format (technically MPEG-4 Part 14). It is the wrapper that holds the H.264 video stream and the AAC audio stream together in a single file. MP4 is not a codec; it is the box that carries both streams plus timing, chapter, and metadata information.
Together, H.264 video + AAC audio wrapped in an MP4 container is the most universally playable combination in digital video. If you need a file that "just works" everywhere — email attachments, USB drives, website uploads, social media, TV sticks — this profile produces it.
.flv, .avi, .wmv, .rmvb, .ts, .m2ts)VLC's conversion feature is buried under a misleading menu item — it says "Convert/Save" which sounds like a file manager operation. Here is the full walkthrough.
Ctrl+R)..mp4.VLC will show a progress bar in the main window. The video playback controls will move as the conversion processes. Do not close VLC until it finishes.
The steps are identical but the menu path is slightly different:
When you click the wrench/edit icon next to the profile in VLC, the profile editor shows three tabs: Encapsulation, Video codec, and Audio codec.
This sets the container. For this profile it is MP4/MOV — do not change it for this workflow.
Key settings:
| Setting | Default | What It Does |
|---|---|---|
| Codec | H.264 (MPEG-4 AVC) | The compression algorithm |
| Bitrate (kb/s) | 0 (auto) | Target bitrate; 0 means VLC auto-decides |
| Quality | 0–51 scale (RF/CRF) | Lower = better quality (use 18–24 for most content) |
| Frame rate | Same as source | Leave at 0 to preserve source frame rate |
| Resolution | Same as source | Leave blank to preserve source resolution |
Bitrate vs quality: The default "0" in the bitrate field means VLC uses a constant rate factor (CRF) approach where quality is the primary target and file size varies. If you need a specific file size (e.g., email attachment limits), set a target bitrate instead. For 1080p content, typical bitrates are:
| Setting | Default | Notes |
|---|---|---|
| Codec | AAC | Leave as-is |
| Bitrate (kb/s) | 128 | Good for stereo; raise to 192 for music |
| Channels | Same as source | Leave at 0 to preserve source |
| Sample rate | Same as source | Leave at 0 to preserve source |
128 kb/s AAC is transparent for speech and most music. If your source is a music video or you notice audio quality loss, raise to 192.
VLC's built-in profiles are read-only, but you can duplicate them. In the Convert dialog, click the duplicate icon (two pages) next to the profile name. This creates an editable copy. Give it a name like "H.264 + AAC 720p" or "H.264 + AAC High Quality" and adjust the settings. Your custom profiles persist across VLC restarts.
Useful custom profile variations:
720p downscale:
High-quality archive:
Small-file social media:
This almost always means the output path had a problem — the destination folder does not exist, or VLC does not have write permission. Fix:
C:\Users\YourName\Desktop\output.mp4 (Windows) or ~/Desktop/output.mp4 (Linux/macOS)The source file uses an audio codec that VLC's AAC encoder could not transcode from. Check the source audio codec (Media → Codec Information in VLC during playback). If the source is DTS, Dolby TrueHD, or certain PCM variants, VLC may fail silently. Try setting the audio codec in the profile to MP3 first to confirm the audio path works, then switch back to AAC.
VLC's software H.264 encoder does not use GPU acceleration by default. On older hardware, 1080p encoding may take 3–5× real-time (a 10-minute video takes 30–50 minutes). To speed up:
h264_nvenc (Nvidia) or h264_vaapi (Intel/AMD on Linux) to enable hardware encoding. These accelerated encoders encode at real-time or faster but VLC's codec name must match what your hardware supports.Some MP4 files produced by VLC place the moov atom (the file's index) at the end rather than the beginning. Some players and streaming services expect it at the start for fast start / progressive download. Fix by running ffmpeg or a similar tool on the output file:
ffmpeg -i input.mp4 -c copy -movflags +faststart output.mp4
The -c copy flag remuxes without re-encoding; -movflags +faststart moves the moov atom to the front. This is a quick post-process step, not a full re-encode.
Sync drift is common when the source file has variable frame rates (VFR) — common with screen recordings and content captured by smartphones. VLC does not handle VFR well in the H.264 encoder. For VFR sources, use FFmpeg directly:
ffmpeg -i input.mp4 -vf fps=30 -c:v libx264 -c:a aac output.mp4
The -vf fps=30 filter normalises to constant 30 fps, which eliminates the sync drift.
VLC's Convert/Save is designed as a convenience feature, not a professional transcoder. It works well for occasional single-file conversions. For anything more complex, dedicated tools produce better results.
FFmpeg (command line) gives you full control over every encoding parameter — bitrate modes, filter chains, metadata, hardware acceleration, and batch processing. See FFmpeg advanced filters guide for examples.
Online converter — if you need to convert one or two files and do not want to configure any tool, ConvertIntoMP4 handles MOV to MP4, AVI to MP4, MKV to MP4, and dozens of other combinations in the browser. The converter automatically detects whether a stream-copy (lossless remux) is possible and avoids unnecessary re-encoding — something VLC always re-encodes even when unnecessary. For one-off conversions where file quality matters, this is often the faster option.
The video converter hub lists all supported input and output formats if you need something outside the common H.264 + AAC + MP4 combination.
Yes, any lossy-to-lossy transcode degrades quality. The degree depends on the bitrate you set. If your source is already H.264 + AAC in an MP4 container, avoid re-encoding entirely — just copy the file or use a remux tool to change the container without touching the streams.
The MPEG4 720p device profile uses the older MPEG-4 Part 2 video codec (sometimes called "XviD" or "DivX" quality), not H.264. "Video - H.264 + AAC (MP4)" uses the more modern and efficient H.264 codec. For everything except very old devices that only support MPEG-4 Part 2, use the H.264 profile.
You can, but it is not ideal. For audio-only output, use the "Audio - MP3" or "Audio - AAC" profiles in VLC's profile list. Using the video profile on an audio source creates an MP4 with a video stream of 0 bytes, which some players handle poorly.
VLC's Convert/Save dialog handles one file at a time. For batch conversion, use FFmpeg in a shell loop (see the batch processing files guide) or ConvertIntoMP4's API for programmatic batch jobs.
Samsung Smart TVs support H.264 Baseline and Main profiles up to a certain level. VLC's H.264 encoder defaults to High profile, which some older Samsung TVs reject. In the profile editor, under Video codec → Advanced settings, set Profile to baseline or main and Level to 4.0. This maximises compatibility with older TV hardware.
Not exactly. "MP4" describes the container only. A file can be MP4 container with HEVC video, or MP4 with MPEG-4 Part 2 video. "Video - H.264 + AAC (MP4)" specifically means the H.264 video codec and AAC audio codec inside an MP4 container — which is indeed the most common and compatible combination, but not the only way to make an MP4 file.
VLC's Video - H.264 + AAC (MP4) profile converts nearly any video format into the most universally playable output: H.264 video codec, AAC audio codec, MP4 container. Use it through Media → Convert/Save (Windows/Linux) or File → Convert / Stream (macOS). Set a target bitrate in the profile editor if you need size control; otherwise leave the defaults for automatic quality. For batch work or more precise control over encoding parameters, FFmpeg or an online converter will serve you better.
Michael Rodriguez
Video production expert covering codec standards, streaming formats, and professional post-production pipelines.