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

GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfLivetecs LLC
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 

Recently uploaded (20)

GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdf
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 

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