SlideShare a Scribd company logo
1 of 20
Download to read offline
A multimedia project used by
VLC, Youtube, Vimeo, HandBrake
and many others
Carl Eugen Hoyos
FFmpeg
 Fabrice Bellard (QEMU) December 2000
 Michael Niedermayer since 2004
 >1.000.000 LOC, >1000 contributors
 ~200 contributors, 3000 commits per year
 LGPL (optional parts: GPL and proprietary)
 Source code, no “products”
Command line utilities
 ffmpeg
 ffplay
 ffprobe
 qt-faststart
Libraries
 libavformat
 libavcodec
 libavfilter
 libswscale
 libswresample
 libavdevice
 libpostproc
 libavutil
libavformat 1/2
 mov/mp4/isom (Apple QuickTime)
 avi (Microsoft)
 asf/wma/wmv (Microsoft)
 Matroska/WebM
 MPEG-TS (DVB) , MPEG-PS (DVD)
 ogg (Xiph)
libavformat 2/2
 MXF
 HLS / DASH (streaming)
 wav (Microsoft audio)
 caf (Apple audio)
 flv (Macromedia / Adobe)
 nut (FFmpeg)
libavcodec video 1/2
 MPEG Video / H.261 (Encoding & Decoding)
 MPEG-4 ASP / H.263 (Encoding & Decoding)
 MPEG-4 AVC / H.264
 HEVC
 VC-1 (Microsoft)
 Theora
libavcodec video 2/2
 Duck TrueMotion 1.0, 2.0, VP3, VP4, VP5,
VP6, VP7, VP8, VP9 (Google)
 Sorenson Video 1, 3, Spark (Apple, Flash)
 RV10, RV20, RV30, RV40 (RealVideo)
 huffyuv, ffvhuff, Lagarith (lossless)
 DnxHD, ProRes, CineForm (Intermediate)
 FFv1, Snow (FFmpeg)
AV1
 Internal parser
 Two external decoding libraries
 Two external encoding libraries
 no internal decoder (yet?)
libavcodec audio
 MP1, MP2, MP3
 AC-3, E-AC-3, TrueHD (Dolby)
 AAC
 DTS, …, DTS HD-Master
 Vorbis, Opus
 Sonic (FFmpeg)
libavcodec image formats
 jpg / lossless jpeg / jpeg lossless
 bmp
 png
 SGI
 TIFF
 DPX
 JPEG-2000
libavfilter
 Scale, Crop
 Overlay
 Hue
 De-interlacers, Inverse telecine filters
 Framerate interpolation filters
 > 250 Filters
Obsolescence (media formats)
 WMV
 Duck Truemotion (Sega Saturn)
 4xm (Gameboy, Sega, Windows)
 Sega Film
 SNM (LucasArts)
 THP (Nintendo)
Obsolescence (FFmpeg)
 ANSI C, Posix
NIH
 The Ten commandments for C programmers:
 7) Thou shalt study thy libraries and strive not to
reinvent them without cause, that thy code may be
short and readable and thy days pleasant and
productive.
 FFmpeg:
 Our wheels are rounder
Bugs
 FLAC: 2006 – 2015
 Possibly relevant for Archivists
 Produced non-lossless files
 Recoverable
 Reproducible only with FFmpeg, not Xiph's libflac
What’s new
 8-channel E-AC-3 decoding (Paul B Mahol)
 Many new filters (Paul B Mahol)
 Bit-exact vc1 decoding (Jerome Borsboom)
 HLS and DASH improvements
 Improved hardware decoding and encoding for
Nvidia, AMD and Intel
What’s missing
 Removal of an external filter because of
license violations
What is FFmpeg not
 FFmpeg is not a file archiving system
 FFmpeg is not a file validator
 FFmpeg is not bug-free
 FFmpeg is not feature-complete

More Related Content

Similar to NTTW4-FFmpeg.pdf

MARTINEZ KROMER RAWCooked
MARTINEZ KROMER RAWCookedMARTINEZ KROMER RAWCooked
MARTINEZ KROMER RAWCookedFIAT/IFTA
 
AC Ryan Play On! HD
AC Ryan Play On! HDAC Ryan Play On! HD
AC Ryan Play On! HDAbe Olandres
 
HTML5 Multimedia Accessibility
HTML5 Multimedia AccessibilityHTML5 Multimedia Accessibility
HTML5 Multimedia Accessibilitybrucelawson
 
Video Streaming: Broadcast quality on a shoe string budget.
Video Streaming: Broadcast quality on a shoe string budget.  Video Streaming: Broadcast quality on a shoe string budget.
Video Streaming: Broadcast quality on a shoe string budget. netc2012
 
10 Cameras 10 Formats - Surviving the Chaos in Post
10 Cameras 10 Formats - Surviving the Chaos in Post 10 Cameras 10 Formats - Surviving the Chaos in Post
10 Cameras 10 Formats - Surviving the Chaos in Post AignerMedia / PilotsEYE.tv
 
【Specification】Geniatech Apc1295 Realtek RTD1295 for Android TV, 4K HDR VP9 o...
【Specification】Geniatech Apc1295 Realtek RTD1295 for Android TV, 4K HDR VP9 o...【Specification】Geniatech Apc1295 Realtek RTD1295 for Android TV, 4K HDR VP9 o...
【Specification】Geniatech Apc1295 Realtek RTD1295 for Android TV, 4K HDR VP9 o...Geniatech
 
Jingle Technology Overview
Jingle Technology OverviewJingle Technology Overview
Jingle Technology Overviewstpeter
 
Video Coding Standard
Video Coding StandardVideo Coding Standard
Video Coding StandardVideoguy
 
Multimedia file formats
Multimedia file formatsMultimedia file formats
Multimedia file formatsShruti Garg
 
Streaming Overview Final.ppt
Streaming Overview Final.pptStreaming Overview Final.ppt
Streaming Overview Final.pptVideoguy
 
Streaming Overview Final.ppt
Streaming Overview Final.pptStreaming Overview Final.ppt
Streaming Overview Final.pptVideoguy
 
Streaming Overview Final.ppt
Streaming Overview Final.pptStreaming Overview Final.ppt
Streaming Overview Final.pptVideoguy
 

Similar to NTTW4-FFmpeg.pdf (20)

MARTINEZ KROMER RAWCooked
MARTINEZ KROMER RAWCookedMARTINEZ KROMER RAWCooked
MARTINEZ KROMER RAWCooked
 
Chap62
Chap62Chap62
Chap62
 
AC Ryan Play On! HD
AC Ryan Play On! HDAC Ryan Play On! HD
AC Ryan Play On! HD
 
HTML5 Multimedia Accessibility
HTML5 Multimedia AccessibilityHTML5 Multimedia Accessibility
HTML5 Multimedia Accessibility
 
Video Streaming: Broadcast quality on a shoe string budget.
Video Streaming: Broadcast quality on a shoe string budget.  Video Streaming: Broadcast quality on a shoe string budget.
Video Streaming: Broadcast quality on a shoe string budget.
 
10 Cameras 10 Formats - Surviving the Chaos in Post
10 Cameras 10 Formats - Surviving the Chaos in Post 10 Cameras 10 Formats - Surviving the Chaos in Post
10 Cameras 10 Formats - Surviving the Chaos in Post
 
【Specification】Geniatech Apc1295 Realtek RTD1295 for Android TV, 4K HDR VP9 o...
【Specification】Geniatech Apc1295 Realtek RTD1295 for Android TV, 4K HDR VP9 o...【Specification】Geniatech Apc1295 Realtek RTD1295 for Android TV, 4K HDR VP9 o...
【Specification】Geniatech Apc1295 Realtek RTD1295 for Android TV, 4K HDR VP9 o...
 
Jingle Technology Overview
Jingle Technology OverviewJingle Technology Overview
Jingle Technology Overview
 
Ig2 task 1 work sheet
Ig2 task 1 work sheetIg2 task 1 work sheet
Ig2 task 1 work sheet
 
News
NewsNews
News
 
Video formats
Video formatsVideo formats
Video formats
 
Multimediafileformats
MultimediafileformatsMultimediafileformats
Multimediafileformats
 
Multimediafileformats
MultimediafileformatsMultimediafileformats
Multimediafileformats
 
Video Coding Standard
Video Coding StandardVideo Coding Standard
Video Coding Standard
 
Multimedia file formats
Multimedia file formatsMultimedia file formats
Multimedia file formats
 
Technology Update: MPEG-Dash
Technology Update: MPEG-DashTechnology Update: MPEG-Dash
Technology Update: MPEG-Dash
 
gstreamer.ppt
gstreamer.pptgstreamer.ppt
gstreamer.ppt
 
Streaming Overview Final.ppt
Streaming Overview Final.pptStreaming Overview Final.ppt
Streaming Overview Final.ppt
 
Streaming Overview Final.ppt
Streaming Overview Final.pptStreaming Overview Final.ppt
Streaming Overview Final.ppt
 
Streaming Overview Final.ppt
Streaming Overview Final.pptStreaming Overview Final.ppt
Streaming Overview Final.ppt
 

More from JunZhao68

1-MIV-tutorial-part-1.pdf
1-MIV-tutorial-part-1.pdf1-MIV-tutorial-part-1.pdf
1-MIV-tutorial-part-1.pdfJunZhao68
 
GOP-Size_report_11_16.pdf
GOP-Size_report_11_16.pdfGOP-Size_report_11_16.pdf
GOP-Size_report_11_16.pdfJunZhao68
 
02-VariableLengthCodes_pres.pdf
02-VariableLengthCodes_pres.pdf02-VariableLengthCodes_pres.pdf
02-VariableLengthCodes_pres.pdfJunZhao68
 
MHV-Presentation-Forman (1).pdf
MHV-Presentation-Forman (1).pdfMHV-Presentation-Forman (1).pdf
MHV-Presentation-Forman (1).pdfJunZhao68
 
CODA_presentation.pdf
CODA_presentation.pdfCODA_presentation.pdf
CODA_presentation.pdfJunZhao68
 
http3-quic-streaming-2020-200121234036.pdf
http3-quic-streaming-2020-200121234036.pdfhttp3-quic-streaming-2020-200121234036.pdf
http3-quic-streaming-2020-200121234036.pdfJunZhao68
 
03-Reznik-DASH-IF-workshop-2019-CAE.pdf
03-Reznik-DASH-IF-workshop-2019-CAE.pdf03-Reznik-DASH-IF-workshop-2019-CAE.pdf
03-Reznik-DASH-IF-workshop-2019-CAE.pdfJunZhao68
 
Practical Programming.pdf
Practical Programming.pdfPractical Programming.pdf
Practical Programming.pdfJunZhao68
 
Overview_of_H.264.pdf
Overview_of_H.264.pdfOverview_of_H.264.pdf
Overview_of_H.264.pdfJunZhao68
 
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdfJunZhao68
 
Wojciech Przybyl - Efficient Trick Modes with MPEG-DASH.pdf
Wojciech Przybyl - Efficient Trick Modes with MPEG-DASH.pdfWojciech Przybyl - Efficient Trick Modes with MPEG-DASH.pdf
Wojciech Przybyl - Efficient Trick Modes with MPEG-DASH.pdfJunZhao68
 
100G Networking Berlin.pdf
100G Networking Berlin.pdf100G Networking Berlin.pdf
100G Networking Berlin.pdfJunZhao68
 
20230320-信息技术-人工智能系列深度报告:AIGC行业综述篇——开启AI新篇章-国海证券.pdf
20230320-信息技术-人工智能系列深度报告:AIGC行业综述篇——开启AI新篇章-国海证券.pdf20230320-信息技术-人工智能系列深度报告:AIGC行业综述篇——开启AI新篇章-国海证券.pdf
20230320-信息技术-人工智能系列深度报告:AIGC行业综述篇——开启AI新篇章-国海证券.pdfJunZhao68
 
3 Open-Source-SYCL-Intel-Khronos-EVS-Workshop_May19.pdf
3 Open-Source-SYCL-Intel-Khronos-EVS-Workshop_May19.pdf3 Open-Source-SYCL-Intel-Khronos-EVS-Workshop_May19.pdf
3 Open-Source-SYCL-Intel-Khronos-EVS-Workshop_May19.pdfJunZhao68
 
2020+HESP+Technical+Deck+-+HESP+Alliance.pdf
2020+HESP+Technical+Deck+-+HESP+Alliance.pdf2020+HESP+Technical+Deck+-+HESP+Alliance.pdf
2020+HESP+Technical+Deck+-+HESP+Alliance.pdfJunZhao68
 
5 - Advanced SVE.pdf
5 - Advanced SVE.pdf5 - Advanced SVE.pdf
5 - Advanced SVE.pdfJunZhao68
 

More from JunZhao68 (16)

1-MIV-tutorial-part-1.pdf
1-MIV-tutorial-part-1.pdf1-MIV-tutorial-part-1.pdf
1-MIV-tutorial-part-1.pdf
 
GOP-Size_report_11_16.pdf
GOP-Size_report_11_16.pdfGOP-Size_report_11_16.pdf
GOP-Size_report_11_16.pdf
 
02-VariableLengthCodes_pres.pdf
02-VariableLengthCodes_pres.pdf02-VariableLengthCodes_pres.pdf
02-VariableLengthCodes_pres.pdf
 
MHV-Presentation-Forman (1).pdf
MHV-Presentation-Forman (1).pdfMHV-Presentation-Forman (1).pdf
MHV-Presentation-Forman (1).pdf
 
CODA_presentation.pdf
CODA_presentation.pdfCODA_presentation.pdf
CODA_presentation.pdf
 
http3-quic-streaming-2020-200121234036.pdf
http3-quic-streaming-2020-200121234036.pdfhttp3-quic-streaming-2020-200121234036.pdf
http3-quic-streaming-2020-200121234036.pdf
 
03-Reznik-DASH-IF-workshop-2019-CAE.pdf
03-Reznik-DASH-IF-workshop-2019-CAE.pdf03-Reznik-DASH-IF-workshop-2019-CAE.pdf
03-Reznik-DASH-IF-workshop-2019-CAE.pdf
 
Practical Programming.pdf
Practical Programming.pdfPractical Programming.pdf
Practical Programming.pdf
 
Overview_of_H.264.pdf
Overview_of_H.264.pdfOverview_of_H.264.pdf
Overview_of_H.264.pdf
 
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf
 
Wojciech Przybyl - Efficient Trick Modes with MPEG-DASH.pdf
Wojciech Przybyl - Efficient Trick Modes with MPEG-DASH.pdfWojciech Przybyl - Efficient Trick Modes with MPEG-DASH.pdf
Wojciech Przybyl - Efficient Trick Modes with MPEG-DASH.pdf
 
100G Networking Berlin.pdf
100G Networking Berlin.pdf100G Networking Berlin.pdf
100G Networking Berlin.pdf
 
20230320-信息技术-人工智能系列深度报告:AIGC行业综述篇——开启AI新篇章-国海证券.pdf
20230320-信息技术-人工智能系列深度报告:AIGC行业综述篇——开启AI新篇章-国海证券.pdf20230320-信息技术-人工智能系列深度报告:AIGC行业综述篇——开启AI新篇章-国海证券.pdf
20230320-信息技术-人工智能系列深度报告:AIGC行业综述篇——开启AI新篇章-国海证券.pdf
 
3 Open-Source-SYCL-Intel-Khronos-EVS-Workshop_May19.pdf
3 Open-Source-SYCL-Intel-Khronos-EVS-Workshop_May19.pdf3 Open-Source-SYCL-Intel-Khronos-EVS-Workshop_May19.pdf
3 Open-Source-SYCL-Intel-Khronos-EVS-Workshop_May19.pdf
 
2020+HESP+Technical+Deck+-+HESP+Alliance.pdf
2020+HESP+Technical+Deck+-+HESP+Alliance.pdf2020+HESP+Technical+Deck+-+HESP+Alliance.pdf
2020+HESP+Technical+Deck+-+HESP+Alliance.pdf
 
5 - Advanced SVE.pdf
5 - Advanced SVE.pdf5 - Advanced SVE.pdf
5 - Advanced SVE.pdf
 

Recently uploaded

Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....ShaimaaMohamedGalal
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 

Recently uploaded (20)

Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 

NTTW4-FFmpeg.pdf

  • 1. A multimedia project used by VLC, Youtube, Vimeo, HandBrake and many others Carl Eugen Hoyos
  • 2. FFmpeg  Fabrice Bellard (QEMU) December 2000  Michael Niedermayer since 2004  >1.000.000 LOC, >1000 contributors  ~200 contributors, 3000 commits per year  LGPL (optional parts: GPL and proprietary)  Source code, no “products”
  • 3. Command line utilities  ffmpeg  ffplay  ffprobe  qt-faststart
  • 4. Libraries  libavformat  libavcodec  libavfilter  libswscale  libswresample  libavdevice  libpostproc  libavutil
  • 5. libavformat 1/2  mov/mp4/isom (Apple QuickTime)  avi (Microsoft)  asf/wma/wmv (Microsoft)  Matroska/WebM  MPEG-TS (DVB) , MPEG-PS (DVD)  ogg (Xiph)
  • 6. libavformat 2/2  MXF  HLS / DASH (streaming)  wav (Microsoft audio)  caf (Apple audio)  flv (Macromedia / Adobe)  nut (FFmpeg)
  • 7.
  • 8. libavcodec video 1/2  MPEG Video / H.261 (Encoding & Decoding)  MPEG-4 ASP / H.263 (Encoding & Decoding)  MPEG-4 AVC / H.264  HEVC  VC-1 (Microsoft)  Theora
  • 9. libavcodec video 2/2  Duck TrueMotion 1.0, 2.0, VP3, VP4, VP5, VP6, VP7, VP8, VP9 (Google)  Sorenson Video 1, 3, Spark (Apple, Flash)  RV10, RV20, RV30, RV40 (RealVideo)  huffyuv, ffvhuff, Lagarith (lossless)  DnxHD, ProRes, CineForm (Intermediate)  FFv1, Snow (FFmpeg)
  • 10. AV1  Internal parser  Two external decoding libraries  Two external encoding libraries  no internal decoder (yet?)
  • 11. libavcodec audio  MP1, MP2, MP3  AC-3, E-AC-3, TrueHD (Dolby)  AAC  DTS, …, DTS HD-Master  Vorbis, Opus  Sonic (FFmpeg)
  • 12. libavcodec image formats  jpg / lossless jpeg / jpeg lossless  bmp  png  SGI  TIFF  DPX  JPEG-2000
  • 13. libavfilter  Scale, Crop  Overlay  Hue  De-interlacers, Inverse telecine filters  Framerate interpolation filters  > 250 Filters
  • 14. Obsolescence (media formats)  WMV  Duck Truemotion (Sega Saturn)  4xm (Gameboy, Sega, Windows)  Sega Film  SNM (LucasArts)  THP (Nintendo)
  • 16. NIH  The Ten commandments for C programmers:  7) Thou shalt study thy libraries and strive not to reinvent them without cause, that thy code may be short and readable and thy days pleasant and productive.  FFmpeg:  Our wheels are rounder
  • 17. Bugs  FLAC: 2006 – 2015  Possibly relevant for Archivists  Produced non-lossless files  Recoverable  Reproducible only with FFmpeg, not Xiph's libflac
  • 18. What’s new  8-channel E-AC-3 decoding (Paul B Mahol)  Many new filters (Paul B Mahol)  Bit-exact vc1 decoding (Jerome Borsboom)  HLS and DASH improvements  Improved hardware decoding and encoding for Nvidia, AMD and Intel
  • 19. What’s missing  Removal of an external filter because of license violations
  • 20. What is FFmpeg not  FFmpeg is not a file archiving system  FFmpeg is not a file validator  FFmpeg is not bug-free  FFmpeg is not feature-complete