FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro FUD FFmpeg’s FFV1 lossless video codec Challenges
FS Super Powers A Free Software success story
Romance
Conclusions Happy End Peter Bubestinger
09. May, 2015
1 / 40 We needed something that works. . .
How did all this begin. . . ?
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro
FUD
Challenges
FS Super Powers
Romance
Conclusions
Happy End
2 / 40 How did all this begin. . . ?
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro
FUD
Challenges
FS Super Powers Romance We needed something Conclusions Happy End that works. . .
3 / 40 At the end of 2009
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger Who is “we”? Intro The Austrian National A/V Archive (Osterreichische¨ Mediathek) a FUD wanted to digitize video for long-term preservation. Challenges a FS Super Powers http://www.mediathek.at/
Romance Conclusions For audio it’s clear: Happy End Format is uncompressed(=lossless) PCM (WAV). We just applied the same requirements to video. But uncompressed was not an option (too huge!)
4 / 40 At the end of 2009
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro So how do others archive video professionally?
FUD The situation we found: Challenges
FS Super Powers Majority uses lossy codecs: Romance IMX, ProRes, MPEG-2, MPEG-4 Conclusions Industry proposed format: JPEG2000-lossless/PCM in MXF Happy End One existing product: FrontPorch Digital ”Samma” Issues with: Access, interoperabilty and transcoding of produced files (Even between different versions of same vendor)
5 / 40 JPEG2000 A jack-of-all-trades video codec
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger The industry proposed format: Intro Official ISO standard (lossy and lossless) FUD
Challenges Very few, but “maybe-compatible” implementations. FS Super Powers (Except for ”libopenjpeg” all are proprietary) Romance Industry focus on “lossy” mode Conclusions
Happy End Required special hardware for realtime with SD (Imagine HD-and-beyond...) Very small userbase Very few transcoder options: expensive, limited and slow Difficult to open/use/transcode the videos. Even now.
6 / 40 FFV1 Something that works. . . ?
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro FUD What we found “on the street”: Challenges Similar compression to JPEG2000-lossless. FS Super Powers
Romance Faster than JPEG2000-lossless. Conclusions Only lossless. By design. Happy End Reference implementation as Free Software. Included in any application using FFmpeg by default.
7 / 40 FFV1 Almost perfect. Almost. . .
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro FFV1’s properties in 2009: FUD Marked as “experimental” Challenges FS Super Powers Only single-threading Romance No bit-error tolerance/awareness Conclusions
Happy End Not standardized or documented Not known at all by professionals in A/V industry Even worse: It originated in the “Open Source community”. Yikes!
8 / 40 Only single-threading: We funded improvement No bit-error tolerance/awareness: We funded improvement Not standardized or documented: Funded work in progress. . . (PREFORMA/MediaArea/IETF) It originated in the “Open Source community”: Actually, that’s a feature :)
FFV1 Almost perfect. Almost. . .
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger So the Mediathek got active: Intro Marked as “experimental”: FUD Contacting developer: He simply forgot to remove that remark :) Challenges
FS Super Powers
Romance
Conclusions
Happy End
9 / 40 No bit-error tolerance/awareness: We funded improvement Not standardized or documented: Funded work in progress. . . (PREFORMA/MediaArea/IETF) It originated in the “Open Source community”: Actually, that’s a feature :)
FFV1 Almost perfect. Almost. . .
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger So the Mediathek got active: Intro Marked as “experimental”: FUD Contacting developer: He simply forgot to remove that remark :) Challenges
FS Super Powers Only single-threading:
Romance We funded improvement
Conclusions
Happy End
10 / 40 Not standardized or documented: Funded work in progress. . . (PREFORMA/MediaArea/IETF) It originated in the “Open Source community”: Actually, that’s a feature :)
FFV1 Almost perfect. Almost. . .
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger So the Mediathek got active: Intro Marked as “experimental”: FUD Contacting developer: He simply forgot to remove that remark :) Challenges
FS Super Powers Only single-threading:
Romance We funded improvement Conclusions No bit-error tolerance/awareness: Happy End We funded improvement
11 / 40 It originated in the “Open Source community”: Actually, that’s a feature :)
FFV1 Almost perfect. Almost. . .
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger So the Mediathek got active: Intro Marked as “experimental”: FUD Contacting developer: He simply forgot to remove that remark :) Challenges
FS Super Powers Only single-threading:
Romance We funded improvement Conclusions No bit-error tolerance/awareness: Happy End We funded improvement Not standardized or documented: Funded work in progress. . . (PREFORMA/MediaArea/IETF)
12 / 40 FFV1 Almost perfect. Almost. . .
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger So the Mediathek got active: Intro Marked as “experimental”: FUD Contacting developer: He simply forgot to remove that remark :) Challenges
FS Super Powers Only single-threading:
Romance We funded improvement Conclusions No bit-error tolerance/awareness: Happy End We funded improvement Not standardized or documented: Funded work in progress. . . (PREFORMA/MediaArea/IETF) It originated in the “Open Source community”: Actually, that’s a feature :)
13 / 40 FFV1 as preservation codec Are we alone. . . ?
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro Of course, we had fears, uncertainties and doubts ourselves. . . FUD
Challenges So, here’s what we did: FS Super Powers Double checked FFV1’s long-term sustainability Romance Tested its implementation. Big time! Conclusions Happy End Documented its usage Organized and funded improvement Started using it in-house
14 / 40 FFV1 So we “outed” ourselves and told others. . .
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro
FUD
Challenges
FS Super Powers
Romance What we encountered was:
Conclusions Happy End Fear, Uncertainty and Doubt. . .
15 / 40 FUD Fear, Uncertainty and Doubt.
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro
FUD
Challenges Fear: FS Super Powers Can it be any good if no professionals are using it yet? Romance Is it really mathematically lossless? Conclusions
Happy End Will I be able to open it in the future? Will we be alone when we use it?
16 / 40 FUD Fear, Uncertainty and Doubt.
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro
FUD
Challenges Uncertainty: FS Super Powers Why didn’t the “big players” pick it up? Romance It’s not an official standard. Conclusions
Happy End Which applications support it - now and in the future? OpenSource is nice Freeware, but what about its quality?
17 / 40 FUD Fear, Uncertainty and Doubt.
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro
FUD Doubt: Challenges Open Source community can’t come up with something FS Super Powers as-good-as, or even better than “The Industry”. Romance Most production- and broadcasting facilities do lossy (IMX, Conclusions
Happy End ProRes, etc) - or use JPEG2000-lossless. “If it’s free, it can’t be any good” It’s too cheap. We want the expensive/limited stuff!
18 / 40 Challenges
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro Perception and politics: FUD Image and “word on the street” more important for Challenges decision-makers than technical proof/properties. FS Super Powers
Romance Any proprietary solution preferred if professional, big institutions
Conclusions use it - even if “problematic”. Happy End Preservability “promised” by paper more important than “guaranteed” by Free Software licensing. Preferred to have companies behind it. “Nobody ever got fired for buying IBM”
19 / 40 Challenges
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro FUD The FFmpeg/LibAV fork: Challenges
FS Super Powers FFV1 originated as in FFmpeg, invented by its project leader
Romance ”Michael Niedermayer”. Conclusions Slight ”stress” between these 2 projects. Happy End Support of new versions of FFV1 in LibAV? Disastrous if FFmpeg/LibAV had been proprietary competitors.
20 / 40 Free Software Giving super-powers to ordinary human beings since 1989!
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger Classical user perception: Intro Use as-is and wait/hope for vendor to implement things. . . FUD Challenges The “4 Freedoms”: to use, study, share and improve: FS Super Powers
Romance Picked up FFV1, nourished and charished it:
Conclusions Mediathek using FFV1.1 for preservation/production since 2011
Happy End FFV1.3 released in August 2013 Solved our problem = Result is free for everyone else to use! Collaboration rather than competition FFV1: Another proof what Free Software makes possible
21 / 40 Free Software Giving super-powers to ordinary human beings since 1989!
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger Incredibly effective use of resources: Intro FUD Now anyone is able to digitize and archive video at same (or Challenges better) quality, previously only available to large-budget FS Super Powers institutions. Romance A handful of decentralized developers created a solution Conclusions
Happy End matching or outperforming a million-dollar industry. Pay for what you actually need. No business investment overhead. Now, lossless video playback/editing possible on off-the-shelf consumer PC hardware.
22 / 40 Free Software 4 freedoms = virtual immortality
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro Free Software guarantees access and preservability: FUD
Challenges No forced format obsolescence FS Super Powers Preserving actual source code of tools used to open/create Romance formats Conclusions = archiving schematics and parts of recording/replayer unit. Happy End (Interoperability) issues can be fixed. No black-box reverse-engineering + workarounds necessary. Tech-internals and development transparent and accountable
23 / 40 TM Even with “Unknown Future Technology 3000 ” Or alien hardware ;) Or just other CPU-architectures, compilers or programming languages.
Free Software 4 freedoms = virtual immortality
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro Even if source won’t compile “as-is” in the future, making it work is
FUD possible without artificial restrictions.
Challenges Access/transcode formats: FS Super Powers Romance Regardless of user-base size or market interests. Conclusions
Happy End
24 / 40 Or alien hardware ;) Or just other CPU-architectures, compilers or programming languages.
Free Software 4 freedoms = virtual immortality
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro Even if source won’t compile “as-is” in the future, making it work is
FUD possible without artificial restrictions.
Challenges Access/transcode formats: FS Super Powers Romance Regardless of user-base size or market interests. Conclusions TM Even with “Unknown Future Technology 3000 ” Happy End
25 / 40 Or just other CPU-architectures, compilers or programming languages.
Free Software 4 freedoms = virtual immortality
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro Even if source won’t compile “as-is” in the future, making it work is
FUD possible without artificial restrictions.
Challenges Access/transcode formats: FS Super Powers Romance Regardless of user-base size or market interests. Conclusions TM Even with “Unknown Future Technology 3000 ” Happy End Or alien hardware ;)
26 / 40 Free Software 4 freedoms = virtual immortality
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro Even if source won’t compile “as-is” in the future, making it work is
FUD possible without artificial restrictions.
Challenges Access/transcode formats: FS Super Powers Romance Regardless of user-base size or market interests. Conclusions TM Even with “Unknown Future Technology 3000 ” Happy End Or alien hardware ;) Or just other CPU-architectures, compilers or programming languages.
27 / 40 btw: Even proprietary vendors can benefit from that.
FFV1 success story How Free Software made this possible
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger To name just a few:
Intro Without the “4 freedoms”, using FFV1 for preservation would FUD be a no-go. Challenges Improvements and usage possible without artificial restrictions. FS Super Powers
Romance No vendor dependence. Free choice of (local) developers. Conclusions Automatically supported by other applications using Free Happy End Software libraries (FFmpeg, LibAV) Adaptations to local environment possible. . . . and many more!
28 / 40 FFV1 success story How Free Software made this possible
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger To name just a few:
Intro Without the “4 freedoms”, using FFV1 for preservation would FUD be a no-go. Challenges Improvements and usage possible without artificial restrictions. FS Super Powers
Romance No vendor dependence. Free choice of (local) developers. Conclusions Automatically supported by other applications using Free Happy End Software libraries (FFmpeg, LibAV) Adaptations to local environment possible. . . . and many more!
btw: Even proprietary vendors can benefit from that.
29 / 40 So far, so good. . .
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro
FUD
Challenges
FS Super Powers
Romance Conclusions But: Where’s the romance? Happy End
30 / 40 Well, I’d say that’s pretty romantic ;)
Romantic aspects Just like in the good old days. . .
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger Developers are proud of their work: Intro
FUD Personal engagement in supporting and improving their creation. Challenges Creating solutions for people, rather than “the market”. FS Super Powers
Romance You can talk with the actual persons creating the product. Conclusions It makes using and dealing with software products more personal. Happy End Professional, handmade quality
31 / 40 Romantic aspects Just like in the good old days. . .
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger Developers are proud of their work: Intro
FUD Personal engagement in supporting and improving their creation. Challenges Creating solutions for people, rather than “the market”. FS Super Powers
Romance You can talk with the actual persons creating the product. Conclusions It makes using and dealing with software products more personal. Happy End Professional, handmade quality
Well, I’d say that’s pretty romantic ;)
32 / 40 Romantic aspects Open collaboration rather than competition
FFmpeg’s FFV1 lossless video codec Innovation powered by humans, rather than faceless corporations. Peter Bubestinger Who made lossless video as awesome as it is now: Intro Michael Niedermayer FUD Challenges Hermann Lewetz FS Super Powers Dave Rice Romance
Conclusions Carl-Eugen Hoyos Happy End J´erˆomeMartinez Luca Barbato Georg Lippitsch Christophe Kummer Christoph Gerstbauer and others of course. . .
33 / 40 FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro
FUD
Challenges
FS Super Powers Romance Lessons learned Conclusions
Happy End
34 / 40 Things we’ve learned That also apply to other Free Software solutions
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger User perception is of great importance: Intro Graphical UI tools / Fear of commandline FUD Challenges Noone wants to be “The First” FS Super Powers Layout/sexyness of a website is important: Romance Cheap looking website = impression of low quality product Conclusions
Happy End Documentation: “Use the force, read the source” equals “No documentation” Ease of access (Make a huge ”Download!” button :)) Option of support and setup as paid service. Public funding: Commercially focused innovation preferred.
35 / 40 FFmpeg’s FFV1 lossless video codec A Free Software success story
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro
FUD Success of FFV1 contributed to: Challenges Improved image of Free Software (Open Source) for professional FS Super Powers use-cases. Romance Increased awareness of benefits of Free Software. Conclusions Happy End Increased sensibility for vendor lock-in. Less FUD when choosing Free and Open solutions. And many more. . .
36 / 40 This is just one example. . . The role of the FSFE
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro The FSFE is enabling others to do the same, by: FUD Challenges . . . decreasing FUD regarding Free Software. FS Super Powers . . . encouraging others to develop and use Free Software. Romance
Conclusions . . . talking to decision makers. Happy End . . . providing legal advice. . . . promoting importance of Free Software & Open Formats. . . . etc.
37 / 40 FFmpeg’s FFV1 lossless video codec
Peter Bubestinger
Intro
FUD
Challenges
FS Super Powers Romance - Fin - Conclusions
Happy End
38 / 40 About FSFE
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger The “Free Software Foundation Europe” is an independent, non-profit organisation which is actively Intro
FUD supporting Free Software mainly in Europe, but also worldwide.
Challenges FS Super Powers In order to secure fair and equal access for anyone to the Romance information-society, it is important that everyone has the freedom to Conclusions
Happy End use, study, share and improve software.
FSFE’s goal is, to improve the understanding and support for Free Software by being getting active in public, politics and laws.
www.fsfeurope.org
39 / 40 License
FFmpeg’s FFV1 lossless video codec
Peter Bubestinger Thanks a lot for your attention! Intro
FUD
Challenges This presentation is available under a Free license:
FS Super Powers Romance Some rights reserved... Conclusions
Happy End Creative Commons Attribution Share-Alike (CC-BY-SA)
. . . so, you can use, study, share and improve this presentation, if you want to ;)
40 / 40