Introduction to H.264: (1) NAL Unit

H.264 / MPEG-4 Part 10, Advanced Video Coding (MPEG-4 AVC) is a common video compression format developed by ITU-T Video Coding Experts Group (VCEG) and ISO/IEC JTC1 Moving Picture Experts Group (MPEG). Network Abstraction Layer (NAL) and Video Coding Layer (VCL) are the two main concepts in H.264. A H.264 file consists of a number of NAL units (NALU) and each NALU can be classified as VCL or non-VCL. Video data is processed by the codec and packed into NAL units.

NALU in Packet-Transport Protocol V.S. Byte-Stream Format

There are two ways to pack a NAL unit for different systems, Packet-Transport System and Byte-Stream Format. For Packet-Transport systems like RTP, the transport system protocol frames the coded data into different pieces. Hence, the system can easily identify the boundaries of NAL units and we don’t need to add extra start code, which is a waste of resources. This method is usually used in streaming.


Free Download: H.264 and MP4 file format Standard / Specification

Studying the standard is very important for learning H.264 and MP4 container format. Here are the download links of the free official documents.

H.264 (MPEG-4 Part 10 / MPEG-4 AVC), Advanced Video Coding

It is available on both ITU-T and ISO website. H.264 is in Series H: Audiovisual and multimedia systems in ITU-T while it is in Part 10 of ISO/IEC 14496 (MPEG-4) in ISO. If you need to study the relationship between H.264 and MP4 container, you should also refer to Part 15 (not free).


Free online Youtube video downloader –

Home Page of

I started downloading videos online, 8 or 9 years ago. I used to study the website source code and found out the direct link of the video. I saved lots of videos successfully. But it’s hard to do the same thing on Youtube (at least for me at that time.. when I was in secondary 1…). I looked for online downloader then and tried several sites. Yet, most of them are not available anymore, like kissyoutube. Some time later, I used JDownloader instead. Over the years, Youtube also keeps changing the video retrieving method and I doubt it brings some challenges to those downloaders. Recently, I reset my computer and I am lazy to reinstall JDownloader. So I look for online application again. I found then. It’s good because many online video downloaders only provide downloading video (without sound) or audio only. But helps you to combine both tracks so that you can download the video with sound directly. You can also choose the resolution of a video clip.

Explanation of Descriptors in the ITU-T Publication on H.264 Coding Standard / Recommendation (with example)

This text will be displayed in English

I have started to learn H.264 for a week. My job required me to decode some H.264 video clips streamed from a media processor Hi3518 manufactured by Hisilicon. Yet, I have no background in video coding and it is a hard time for me now. I will keep writing and organizing the related materials for my revision and also for your reference. In this section, I am going to explain the descriptors used in the ITU-T official Publication on H.264 Coding Recommendation: Advanced video coding for generic audiovisual services and illustrate with some example. It is the basic thing you need to understand first before you could understand how to decode a H.264 video clip. There are 10 main descriptors, which are as follows (extracted from the document, edition 2013):

The following descriptors specify the parsing process of each syntax element. For some syntax elements, two descriptors, separated by a vertical bar, are used. In these cases, the left descriptors apply when entropy_coding_mode_flag is equal to 0 and the right descriptor applies when entropy_coding_mode_flag is equal to 1.


How to Read/Write External Hard Drive / USB with NTFS on Mac OS X? (with Troubleshooting)

NTFS (New Technology File System) is a file system developed by Microsoft. FAT32, which is also commonly used, is another example of file system. They define and control how the data, or files, are stored and retrieved from a storage drive. However, Mac OS X supports NTFS read only, but not write, by default. There are software that can enable NTFS write. Yet, it is easy and free to enable the access by a few steps. Here is a complete guide.

1. Open “Terminal“.

There are 3 ways to open terminal.

  1. Open it via “Spotlight” on the top-right comer or “Cmd + Space” (default short-cut key), and type “Terminal“.
  2. Another way is to open “Finder“, “Go to Folder…”/Applications/Utilitiesand you should find “Terminal” there.
  3. Press “F4″ >> open folder “Other” >> click the icon of Terminal

A new Terminal window should be prompted out. If you are a geek, I believe you need it quite often, keep it in Dock now~


Hello world!

Welcome to my new WordPress.

I’ll keep writing articles here and share my experience, as long as knowledge, that I gained during study or work. The posts will be mainly about Computer Engineering / Computer Science and IT-related information, including Programming / Building Website, Embedded System, Image Processing / Image Analysis, Linux, some exciting news about technology / IT Industry, some useful softwares and some basic knowledge of computer and electronic device (like smart phone and tablet). I hope you will come back frequently to check out my new posts and leave your comments, not only for feedback, but also for exchanging ideas.

If you wanna learn me more, you might also read “About Me…“.
If you like this blog, you might also like my Facebook Page.

Yumi Chan