SlideShare a Scribd company logo
1 of 11
Download to read offline
H.264 NAL & RTP




   Fast Forward Your Development   www.dsp-ip.com
H264 Layer Structure

                                Video Coding Layer
      Control Data
                                           Macroblock


                                  Data Partitioning

                                           Slice/Partition


    Network Abstraction Layer

     H.320           H.324      H.323/IP      MPEG2




     Fast Forward Your Development                    www.dsp-ip.com
H264 & NAL
• Motivation
  ▫ Many delivery methods are based on packet
    based networks
  ▫ Its better to do the packetization inside the
    encoder where all coding information than in
    other separate modules
• Architecture: NAL units as the transport entity
  ▫ NAL units may be mapped into a bit stream
  ▫ NAL units are self-contained-independently
    decodable
  ▫ The decoding process assumes NAL units are in
    decoding order


       Fast Forward Your Development         www.dsp-ip.com
Network Abstraction Layer (NAL)
• H.264 encoder is composed of two layers:
• VCL - Video Coding Layer – unit which translates the
  video information into a stream of bits
• NAL - Network Abstraction Layer (NAL). Which maps
  and packetize the VCL biststream into unitsprior to
  transmission or storage
• Each NAL unit contains:
  ▫ Payload – RBSP (Raw Byte Sequence Payload), which
    contains set of data corresponding to coded video data or
    header information
  ▫ NAL Unit Header – which contains the NAL header




        Fast Forward Your Development            www.dsp-ip.com
NAL
• The coded video sequence is represented by a
  sequence of NAL units that can be transmitted
  over a packet-based network or a bitstream
  transmission link or stored in a file
• There are two NAL Types
 ▫ VCL Units – NAL units which represents encoded
   video data
 ▫ Non-VCL Units – Parameters sets




      Fast Forward Your Development   www.dsp-ip.com
NAL Unit Header
NAL unit header         NAL unit payload

 NAL unit header- 1 byte consisting of:
 • Forbidden_bit(1 bit) may be used to signal that a NAL unit is
   corrupt
 • nal_storage_idc(2 bit): signal relative importance, and if the
   picture is stored in the reference picture buffer.
 • nal_unit_type(5 bit): signal 1 of 10 different NAL unit types:
    ▫   Coded slice (regular VCL data)
    ▫   Coded data partition. (DPA,DPB,DPC)
    ▫   Instantaneous decoder refresh (IDR)
    ▫   Supplemental enhancement information (SEI)
    ▫   Sequence and picture parameter sets (SPS,PPS)
    ▫   Picture delimiter (PD) and filler data (FD)




          Fast Forward Your Development                 www.dsp-ip.com
RBSP (NAL Payload) Types
• Parameter Set – global parameters for a sequence
  includes: Resolution, video format, macroblock,
  allocation map
• Supplemental Enhancement Information
• Picture Delimiter – boundary between video pictures
• Coded slice – header and data for a slice, this unit
  contains actual coded video data
• Data Partition A,B or C – Data Partitioned slice layer
  data (A – header data for all MBs in the slice, B – intra
  coded data, C – inter coded data)
• End of sequence
• End of stream
• Filler data

        Fast Forward Your Development          www.dsp-ip.com
RTP payload format for H.264
• Based on IETF RFC 3984, February 2005
• Described how to use H.264 NAL inside RTP with proper
  packetization Employs the native NAL (Network
  Abstraction Layer) interface, based on NAL units (NALUs)
• NALU – byte string of variable length that contains syntax
  elements of a certain class
• NALU header – defines the information within the NAL
  Unit (Corrupted, Type etc)
• There are two basic methods for RTP packetization of NAL
  units:
  ▫ Non fragmented NAL units
  ▫ Fragmented NAL units


        Fast Forward Your Development        www.dsp-ip.com
RTP Payload for H.264 NAL
• The most common method is to configure the
  encoder to output one NAL unit for each RTP
  packet. Each NAL unit is ~1.4KB




• Fragment a large NAL unit (Frame) into many
  RTP Packets. The difference is in the RTP
  Header information



      Fast Forward Your Development   www.dsp-ip.com
RTP and H.264
• RTP Packetization of NAL allows both
  aggregation of many NAL units into one RTP
  Packet and fragmentation of one NAL units into
  many RTP packets




      Fast Forward Your Development   www.dsp-ip.com
DSP-IP Contact information
Download slides at: www.dsp-ip.com
                    www.dsp-

Course materials & lecture request
    Adi Yakov
    Training Manager
    adi@dsp-
    adi@dsp-ip.com
    +972-9-8651933
     972-

Projects development services:
    Alona Ashkenazi
    Development Services            www.dsp-ip.
                                    www.dsp-ip.com
    alona@dsp-
    alona@dsp-ip.com                Mail : info@dsp-ip.com
                                           info@dsp-ip.
    +972-9-8850956
     972-                           Phone: 972- 8850956,
                                    Phone: +972-9-8850956,
                                    Fax : +972-50- 8962910
                                            972-50-


        Fast Forward Your Development             www.dsp-ip.com

More Related Content

What's hot

What's hot (20)

Virtual Machines - Virtual Box
Virtual Machines  - Virtual BoxVirtual Machines  - Virtual Box
Virtual Machines - Virtual Box
 
VMWARE VS MS-HYPER-V
VMWARE VS MS-HYPER-VVMWARE VS MS-HYPER-V
VMWARE VS MS-HYPER-V
 
Intel DPDK Step by Step instructions
Intel DPDK Step by Step instructionsIntel DPDK Step by Step instructions
Intel DPDK Step by Step instructions
 
Real Time Operating System
Real Time Operating SystemReal Time Operating System
Real Time Operating System
 
kali linux
kali linux kali linux
kali linux
 
Foreman presentation
Foreman presentationForeman presentation
Foreman presentation
 
Virtualization Architecture & KVM
Virtualization Architecture & KVMVirtualization Architecture & KVM
Virtualization Architecture & KVM
 
Linux SMEP bypass techniques
Linux SMEP bypass techniquesLinux SMEP bypass techniques
Linux SMEP bypass techniques
 
Introduction and history of linux
Introduction and history of linuxIntroduction and history of linux
Introduction and history of linux
 
[2018] NHN 모니터링의 현재와 미래 for 인프라 엔지니어
[2018] NHN 모니터링의 현재와 미래 for 인프라 엔지니어[2018] NHN 모니터링의 현재와 미래 for 인프라 엔지니어
[2018] NHN 모니터링의 현재와 미래 for 인프라 엔지니어
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
 
Introduction to docker
Introduction to dockerIntroduction to docker
Introduction to docker
 
Andes RISC-V vector extension demystified-tutorial
Andes RISC-V vector extension demystified-tutorialAndes RISC-V vector extension demystified-tutorial
Andes RISC-V vector extension demystified-tutorial
 
Serverless - When to FaaS?
Serverless - When to FaaS?Serverless - When to FaaS?
Serverless - When to FaaS?
 
What is Kernel, basic idea of kernel
What is Kernel, basic idea of kernelWhat is Kernel, basic idea of kernel
What is Kernel, basic idea of kernel
 
eBPF - Observability In Deep
eBPF - Observability In DeepeBPF - Observability In Deep
eBPF - Observability In Deep
 
F9: A Secure and Efficient Microkernel Built for Deeply Embedded Systems
F9: A Secure and Efficient Microkernel Built for Deeply Embedded SystemsF9: A Secure and Efficient Microkernel Built for Deeply Embedded Systems
F9: A Secure and Efficient Microkernel Built for Deeply Embedded Systems
 
KVM tools and enterprise usage
KVM tools and enterprise usageKVM tools and enterprise usage
KVM tools and enterprise usage
 
ALSS14: Xen Project Automotive Hypervisor (Demo)
ALSS14: Xen Project Automotive Hypervisor (Demo)ALSS14: Xen Project Automotive Hypervisor (Demo)
ALSS14: Xen Project Automotive Hypervisor (Demo)
 
Microsoft Hyper-V
Microsoft Hyper-VMicrosoft Hyper-V
Microsoft Hyper-V
 

Viewers also liked

Cisco Video Data Explosion
Cisco Video Data ExplosionCisco Video Data Explosion
Cisco Video Data Explosion
menkento
 
IPTV, Internet Video and Adaptive Streaming Technologies
IPTV, Internet Video and Adaptive Streaming TechnologiesIPTV, Internet Video and Adaptive Streaming Technologies
IPTV, Internet Video and Adaptive Streaming Technologies
Cisco Canada
 
INTERNET PROTOCOL TELEVISION SEMINAR PPT
INTERNET PROTOCOL TELEVISION SEMINAR PPTINTERNET PROTOCOL TELEVISION SEMINAR PPT
INTERNET PROTOCOL TELEVISION SEMINAR PPT
Anil Mahapatra
 
H264 on rtp
H264 on rtpH264 on rtp
H264 on rtp
scmky
 

Viewers also liked (20)

RTP
RTPRTP
RTP
 
Cisco Video Data Explosion
Cisco Video Data ExplosionCisco Video Data Explosion
Cisco Video Data Explosion
 
IPTV lecture
IPTV lectureIPTV lecture
IPTV lecture
 
IPTV, Internet Video and Adaptive Streaming Technologies
IPTV, Internet Video and Adaptive Streaming TechnologiesIPTV, Internet Video and Adaptive Streaming Technologies
IPTV, Internet Video and Adaptive Streaming Technologies
 
HEVC Definitions and high-level syntax
HEVC Definitions and high-level syntaxHEVC Definitions and high-level syntax
HEVC Definitions and high-level syntax
 
H.264 Encoder Nal Packet Formation By Sbs
H.264 Encoder Nal Packet Formation By SbsH.264 Encoder Nal Packet Formation By Sbs
H.264 Encoder Nal Packet Formation By Sbs
 
Video streaming on e-lab
Video streaming on e-labVideo streaming on e-lab
Video streaming on e-lab
 
Computer Vision - Image Filters
Computer Vision - Image FiltersComputer Vision - Image Filters
Computer Vision - Image Filters
 
IPTV Architecture and Challenges
IPTV  Architecture and ChallengesIPTV  Architecture and Challenges
IPTV Architecture and Challenges
 
Introduction to IPTV
Introduction to IPTVIntroduction to IPTV
Introduction to IPTV
 
The Future of IPTV
The Future of IPTVThe Future of IPTV
The Future of IPTV
 
INTERNET PROTOCOL TELEVISION SEMINAR PPT
INTERNET PROTOCOL TELEVISION SEMINAR PPTINTERNET PROTOCOL TELEVISION SEMINAR PPT
INTERNET PROTOCOL TELEVISION SEMINAR PPT
 
H264 on rtp
H264 on rtpH264 on rtp
H264 on rtp
 
H.264 video compression standard.
H.264 video compression standard.H.264 video compression standard.
H.264 video compression standard.
 
WiFi Display
WiFi DisplayWiFi Display
WiFi Display
 
DVB_Arch
DVB_ArchDVB_Arch
DVB_Arch
 
Flv for H.264
Flv for H.264Flv for H.264
Flv for H.264
 
MPEG-21-based Cross-Layer Optimization Techniques for enabling Quality of Exp...
MPEG-21-based Cross-Layer Optimization Techniques for enabling Quality of Exp...MPEG-21-based Cross-Layer Optimization Techniques for enabling Quality of Exp...
MPEG-21-based Cross-Layer Optimization Techniques for enabling Quality of Exp...
 
29 Multimedia
29 Multimedia29 Multimedia
29 Multimedia
 
An Efficient Reactive Model for Resource Discovery in DHT-Based Peer-to-Peer ...
An Efficient Reactive Model for Resource Discovery in DHT-Based Peer-to-Peer ...An Efficient Reactive Model for Resource Discovery in DHT-Based Peer-to-Peer ...
An Efficient Reactive Model for Resource Discovery in DHT-Based Peer-to-Peer ...
 

Similar to H.264 nal and RTP

Production high-performance networking with Snabb and LuaJIT (Linux.conf.au 2...
Production high-performance networking with Snabb and LuaJIT (Linux.conf.au 2...Production high-performance networking with Snabb and LuaJIT (Linux.conf.au 2...
Production high-performance networking with Snabb and LuaJIT (Linux.conf.au 2...
Igalia
 
QNAP Surveillance Solutions
QNAP Surveillance SolutionsQNAP Surveillance Solutions
QNAP Surveillance Solutions
CK Chen
 

Similar to H.264 nal and RTP (20)

A comparison of Segment Routing Data-Plane encodings
A comparison of Segment Routing Data-Plane encodingsA comparison of Segment Routing Data-Plane encodings
A comparison of Segment Routing Data-Plane encodings
 
A comparison of segment routing data-plane encodings
A comparison of segment routing data-plane encodingsA comparison of segment routing data-plane encodings
A comparison of segment routing data-plane encodings
 
Qnap Surveillance Solutions
Qnap Surveillance Solutions Qnap Surveillance Solutions
Qnap Surveillance Solutions
 
Panel with IPv6 CE Vendors
Panel with IPv6 CE VendorsPanel with IPv6 CE Vendors
Panel with IPv6 CE Vendors
 
Voice coding trends
Voice coding trendsVoice coding trends
Voice coding trends
 
Qnap iei partners_day_2016 1108
Qnap iei partners_day_2016 1108Qnap iei partners_day_2016 1108
Qnap iei partners_day_2016 1108
 
Production high-performance networking with Snabb and LuaJIT (Linux.conf.au 2...
Production high-performance networking with Snabb and LuaJIT (Linux.conf.au 2...Production high-performance networking with Snabb and LuaJIT (Linux.conf.au 2...
Production high-performance networking with Snabb and LuaJIT (Linux.conf.au 2...
 
IPv6 - A Real World Deployment for Mobiles
IPv6 - A Real World Deployment for MobilesIPv6 - A Real World Deployment for Mobiles
IPv6 - A Real World Deployment for Mobiles
 
Extending Hadoop for Fun & Profit
Extending Hadoop for Fun & ProfitExtending Hadoop for Fun & Profit
Extending Hadoop for Fun & Profit
 
VVC HLS overview .pdf
VVC HLS overview .pdfVVC HLS overview .pdf
VVC HLS overview .pdf
 
Videoconference
VideoconferenceVideoconference
Videoconference
 
Data Plane Evolution: Towards Openness and Flexibility
Data Plane Evolution: Towards Openness and FlexibilityData Plane Evolution: Towards Openness and Flexibility
Data Plane Evolution: Towards Openness and Flexibility
 
Outsourcing SDWorx Mainframe environment - Lily Craps
Outsourcing SDWorx Mainframe environment - Lily CrapsOutsourcing SDWorx Mainframe environment - Lily Craps
Outsourcing SDWorx Mainframe environment - Lily Craps
 
QNAP Surveillance Solutions
QNAP Surveillance SolutionsQNAP Surveillance Solutions
QNAP Surveillance Solutions
 
IPv6 translation methods
IPv6 translation methodsIPv6 translation methods
IPv6 translation methods
 
Robert Raszuk - Technologies for IPv4/IPv6 coexistance
Robert Raszuk - Technologies for IPv4/IPv6 coexistanceRobert Raszuk - Technologies for IPv4/IPv6 coexistance
Robert Raszuk - Technologies for IPv4/IPv6 coexistance
 
FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)
 
FD.IO Vector Packet Processing
FD.IO Vector Packet ProcessingFD.IO Vector Packet Processing
FD.IO Vector Packet Processing
 
MAGPI: Advanced Services: IPv6, Multicast, DNSSEC
MAGPI: Advanced Services: IPv6, Multicast, DNSSECMAGPI: Advanced Services: IPv6, Multicast, DNSSEC
MAGPI: Advanced Services: IPv6, Multicast, DNSSEC
 
Internet Week 2018: 1.1.1.0/24 A report from the (anycast) trenches
Internet Week 2018: 1.1.1.0/24 A report from the (anycast) trenchesInternet Week 2018: 1.1.1.0/24 A report from the (anycast) trenches
Internet Week 2018: 1.1.1.0/24 A report from the (anycast) trenches
 

More from Yoss Cohen

Product wise computer vision development
Product wise computer vision developmentProduct wise computer vision development
Product wise computer vision development
Yoss Cohen
 

More from Yoss Cohen (20)

Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
 
open platform for swarm training
open platform for swarm training open platform for swarm training
open platform for swarm training
 
Deep Learning - system view
Deep Learning - system viewDeep Learning - system view
Deep Learning - system view
 
Dspip deep learning syllabus
Dspip deep learning syllabusDspip deep learning syllabus
Dspip deep learning syllabus
 
IoT consideration selection
IoT consideration selectionIoT consideration selection
IoT consideration selection
 
IoT evolution
IoT evolutionIoT evolution
IoT evolution
 
Nvidia jetson nano bringup
Nvidia jetson nano bringupNvidia jetson nano bringup
Nvidia jetson nano bringup
 
Autonomous car teleportation architecture
Autonomous car teleportation architectureAutonomous car teleportation architecture
Autonomous car teleportation architecture
 
Motion estimation overview
Motion estimation overviewMotion estimation overview
Motion estimation overview
 
Intro to machine learning with scikit learn
Intro to machine learning with scikit learnIntro to machine learning with scikit learn
Intro to machine learning with scikit learn
 
DASH and HTTP2.0
DASH and HTTP2.0DASH and HTTP2.0
DASH and HTTP2.0
 
Introduction to HEVC
Introduction to HEVCIntroduction to HEVC
Introduction to HEVC
 
FFMPEG on android
FFMPEG on androidFFMPEG on android
FFMPEG on android
 
Hands-on Video Course - "RAW Video"
Hands-on Video Course - "RAW Video" Hands-on Video Course - "RAW Video"
Hands-on Video Course - "RAW Video"
 
Video quality testing
Video quality testingVideo quality testing
Video quality testing
 
HEVC / H265 Hands-On course
HEVC / H265 Hands-On courseHEVC / H265 Hands-On course
HEVC / H265 Hands-On course
 
Web video standards
Web video standardsWeb video standards
Web video standards
 
Product wise computer vision development
Product wise computer vision developmentProduct wise computer vision development
Product wise computer vision development
 
3D Video Programming for Android
3D Video Programming for Android3D Video Programming for Android
3D Video Programming for Android
 
Analog Video
Analog Video Analog Video
Analog Video
 

Recently uploaded

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Recently uploaded (20)

[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

H.264 nal and RTP

  • 1. H.264 NAL & RTP Fast Forward Your Development www.dsp-ip.com
  • 2. H264 Layer Structure Video Coding Layer Control Data Macroblock Data Partitioning Slice/Partition Network Abstraction Layer H.320 H.324 H.323/IP MPEG2 Fast Forward Your Development www.dsp-ip.com
  • 3. H264 & NAL • Motivation ▫ Many delivery methods are based on packet based networks ▫ Its better to do the packetization inside the encoder where all coding information than in other separate modules • Architecture: NAL units as the transport entity ▫ NAL units may be mapped into a bit stream ▫ NAL units are self-contained-independently decodable ▫ The decoding process assumes NAL units are in decoding order Fast Forward Your Development www.dsp-ip.com
  • 4. Network Abstraction Layer (NAL) • H.264 encoder is composed of two layers: • VCL - Video Coding Layer – unit which translates the video information into a stream of bits • NAL - Network Abstraction Layer (NAL). Which maps and packetize the VCL biststream into unitsprior to transmission or storage • Each NAL unit contains: ▫ Payload – RBSP (Raw Byte Sequence Payload), which contains set of data corresponding to coded video data or header information ▫ NAL Unit Header – which contains the NAL header Fast Forward Your Development www.dsp-ip.com
  • 5. NAL • The coded video sequence is represented by a sequence of NAL units that can be transmitted over a packet-based network or a bitstream transmission link or stored in a file • There are two NAL Types ▫ VCL Units – NAL units which represents encoded video data ▫ Non-VCL Units – Parameters sets Fast Forward Your Development www.dsp-ip.com
  • 6. NAL Unit Header NAL unit header NAL unit payload NAL unit header- 1 byte consisting of: • Forbidden_bit(1 bit) may be used to signal that a NAL unit is corrupt • nal_storage_idc(2 bit): signal relative importance, and if the picture is stored in the reference picture buffer. • nal_unit_type(5 bit): signal 1 of 10 different NAL unit types: ▫ Coded slice (regular VCL data) ▫ Coded data partition. (DPA,DPB,DPC) ▫ Instantaneous decoder refresh (IDR) ▫ Supplemental enhancement information (SEI) ▫ Sequence and picture parameter sets (SPS,PPS) ▫ Picture delimiter (PD) and filler data (FD) Fast Forward Your Development www.dsp-ip.com
  • 7. RBSP (NAL Payload) Types • Parameter Set – global parameters for a sequence includes: Resolution, video format, macroblock, allocation map • Supplemental Enhancement Information • Picture Delimiter – boundary between video pictures • Coded slice – header and data for a slice, this unit contains actual coded video data • Data Partition A,B or C – Data Partitioned slice layer data (A – header data for all MBs in the slice, B – intra coded data, C – inter coded data) • End of sequence • End of stream • Filler data Fast Forward Your Development www.dsp-ip.com
  • 8. RTP payload format for H.264 • Based on IETF RFC 3984, February 2005 • Described how to use H.264 NAL inside RTP with proper packetization Employs the native NAL (Network Abstraction Layer) interface, based on NAL units (NALUs) • NALU – byte string of variable length that contains syntax elements of a certain class • NALU header – defines the information within the NAL Unit (Corrupted, Type etc) • There are two basic methods for RTP packetization of NAL units: ▫ Non fragmented NAL units ▫ Fragmented NAL units Fast Forward Your Development www.dsp-ip.com
  • 9. RTP Payload for H.264 NAL • The most common method is to configure the encoder to output one NAL unit for each RTP packet. Each NAL unit is ~1.4KB • Fragment a large NAL unit (Frame) into many RTP Packets. The difference is in the RTP Header information Fast Forward Your Development www.dsp-ip.com
  • 10. RTP and H.264 • RTP Packetization of NAL allows both aggregation of many NAL units into one RTP Packet and fragmentation of one NAL units into many RTP packets Fast Forward Your Development www.dsp-ip.com
  • 11. DSP-IP Contact information Download slides at: www.dsp-ip.com www.dsp- Course materials & lecture request Adi Yakov Training Manager adi@dsp- adi@dsp-ip.com +972-9-8651933 972- Projects development services: Alona Ashkenazi Development Services www.dsp-ip. www.dsp-ip.com alona@dsp- alona@dsp-ip.com Mail : info@dsp-ip.com info@dsp-ip. +972-9-8850956 972- Phone: 972- 8850956, Phone: +972-9-8850956, Fax : +972-50- 8962910 972-50- Fast Forward Your Development www.dsp-ip.com