GPAC 2.0

We are happy to announce the release GPAC 2.0, packed with new features!

This release brings support for Python and NodeJS: you can now interact with GPAC media pipelines using these languages, from basic session processing down to packet-level manipulations.

A new JSON-based video editor called avmix has landed in GPAC: it is designed for typical live processing tasks (scheduling, animations and transitions, graphics/text insertion) running from command line with or without GPU.

A lot of work has been put on HLS support for both client and packager, with support for low latency HLS.

MP4Box has been improved as well and is now capable of in-place rewrite, resulting in much faster IOs when editing files.

As usual, installers are available on gpac.io for most common platforms.

Enjoy, give us feedback and spread the news!

Continue reading GPAC 2.0

ISOBMFF, the technology at the heart of GPAC, awarded a Technology Engineering Emmy®

Today, the National Academy of Television Arts and Sciences announced that it decided to honor the File Format subgroup under MPEG for the ISOBMFF technology.

We, the GPAC contributors and community, are proud to have been part of the development of this awarded technology from its beginning. GPAC started more than 20 years ago to demonstrate the features of the MPEG-4 Standard which includes ISOBMFF. Soon, GPAC’s MP4Box became the MP4 swiss-army knife used worldwide by MP4 aficionados, by multimedia researchers and by media companies in production.

In GPAC, we always strive to be amongst the first tools to implement the new ISOBMFF features. Movie fragments (required for adaptive streaming), Common Encryption, the Image file format (IFFs such as HEIF or AVIF), … the support of the GPAC open-source tooling and community proved crucial to create correct and effective standards.

In 20 years we made hundreds of contributions to the awarded MPEG File format Subgroup (and still counting!). We hope to continue to offer that level of innovation and commitment to you for the next 20 years. In 2020 we released GPAC 1.0 (filters) to make sure we’re technically on track for the future.

We would like to congratulate all contributors to this technology and thank our user base for feature requests and bug reports which helped us contribute and improve the ISOBMFF technology and our support of it.

GPAC 1.0.0 public release

After almost 20 years of development, GPAC reaches yet another milestone. As the major number increment suggests, this GPAC version offers significant changes over previous releases.

Among the video community GPAC was known for its wide capabilities. Unfortunately these capabilities came with maintenance and usability challenges. This new version addresses these challenges by leveraging a new modular system called “filters”.

Filters make GPAC easier to use thanks to a unified API. Filters make GPAC easier to test, document, and maintain. Filters make GPAC more efficient thanks to a highly configurable resource manager. Filters make GPAC 1.0 the best GPAC ever. The multimedia ecosystem is very innovative and so is GPAC, now ready for the next 20 years!

This release comes with many new features thanks to the rearchitecture.

A special focus was made to make the transition as transparent as possible for our users. The APIs and the tool (MP4Box, MP4Client, …) are fully compatible to make the transition as smooth as possible.

For the last year we have maintained both the legacy and the new versions with both new features and bug fixes. From now on, the legacy version is marked LTS and will only receive bug fixes.

As usual pre-built installers are available for simplicity.

We strongly encourage users to update their codebase.

Of course there is still much to be done. Please help us and get in contact using our issue tracker.

We’d like to thank our community for the warm welcome of all these changes. You have been so patient and supportive during this transition period. Thank you.

Towards GPAC 0.9.0

We are thrilled to announce the public release of the development branch of GPAC 0.9.0.

This branch is very special to us. It took us almost two years to re-architect GPAC to make it more powerful and easier for you to use.

GPAC takes roots in research and visionary innovations of the late 1990s. Started as a start-up in 2000, GPAC gained traction from research and a nascent multimedia community as it was open-sourced in 2003. Since then we never stopped transforming GPAC into a useful and up-to-date project, with many industrial R&D collaborations and a community of tens of thousands of users. This makes GPAC one of the few open-source multimedia projects that gathers so much diversity.

This diversity is also the result of GPAC’s two core concepts: each media is an object that lives on its own, combined by a presentation layer presenting these objects as part of an experience. This vision has proven incredibly successful in Flash and then HTML5. Although GPAC was based on MPEG-4 and SVG Tiny 1.2 technologies that never massively took off, its broad set of technologies for building rich multimedia applications (packaging, streaming, interactive playback) with limited resources makes GPAC quite unique.

After 15 years of R&D developments, the time had come to expose more of this modularity to our users, as explained here. To get details on the result of this work, go to our wiki. This work was also the opportunity to:

  • clean up unused code accumulated over the years and improve our test suite, and the test coverage on this branch is already excellent.
  • revise GPAC documentation, using auto-generation to always stay up-to-date  and move all existing documentation (post and pages of this site) to GPAC wiki.

We encourage all GPAC users to try this new version, give us feedback, feature requests and bug reports (hopefully not too many) on our issue tracker.

We will keep the master on the old architecture until end of October 2019 before switching to the new architecture. Note that the master branch is merged into the new arch branch almost daily.

Both branches are available as pre-built installers for simplicity.

The branch can be browsed online here and can be checkout as usual:

$ git checkout filters

Enjoy!