"Pied Piper" A New Compression Algorithm Developed By Dropbox Engineers

A team of ten dropbox engineers have developed a new compression algorithm called pied piper which achieve 13% compression on Mobile-recorded H.264 videos and 22% on JPEG files.

A Dropbox is a company providing the cloud service,pied piper algorithm help dropbox to compress the file size which would be beneficial  for company in term of long term prospective.

Main feature of pied piper algorithm is to compress and decompress the file without compromising the quility of video and jpeg.It compress and decompress the file Without changing the bit value.On top of developer built a recompression layer that can get additional win on top of CAVLC and other algorithms.It support almost all the popular Operating system like Windows,mac,android etc...

Pied Piper came out of a "Hack Week" Program held at Dropbox, where Horn works as an infrastructure engineer. Piper is one in all dozens of comes being worked on throughout the long event, where staffers are motivated to  build products and features outside of the traditional scope of the company's mission. 

Some of the Encoding and decoding features of Pied Piper

Encoder Features

  • Constrained Baseline Profile up to Level 5.2 (4096x2304)
  • Arbitrary resolution, not constrained to multiples of 16x16
  • Rate control with adaptive quantization, or constant quantization
  • Slice options: 1 slice per frame, N slices per frame, N macroblocks per slice, or N bytes per slice
  • Multiple threads automatically used for multiple slices
  • Temporal scalability up to 4 layers in a dyadic hierarchy
  • Spatial simulcast up to 4 resolutions from a single input
  • Long Term Reference (LTR) frames
  • Memory Management Control Operation (MMCO)
  • Reference picture list modification
  • Single reference frame for inter prediction
  • Multiple reference frames when using LTR and/or 3-4 temporal layers
  • Periodic and on-demand Instantaneous Decoder Refresh (IDR) frame insertion
  • Dynamic changes to bit rate, frame rate, and resolution
  • Annex B byte stream output
  • YUV 4:2:0 planar input

Decoder Features

  • Constrained Baseline Profile up to Level 5.2 (4096x2304)
  • Arbitrary resolution, not constrained to multiples of 16x16
  • Single thread for all slices
  • Long Term Reference (LTR) frames
  • Memory Management Control Operation (MMCO)
  • Reference picture list modification
  • Multiple reference frames when specified in Sequence Parameter Set (SPS)
  • Annex B byte stream input
  • YUV 4:2:0 planar output

How to Build Pied Piper library for All OS

  • make for automatically detecting architecture and building accordingly
  • make ARCH=i386 for x86 32bit builds
  • make ARCH=x86_64 for x86 64bit builds
  • make V=No for a silent build (not showing the actual compiler commands)

The command line programs h264enc and h264dec will appear in the main project directory.
A shell script to run the command-line apps is in testbin/CmdLineExample.sh
Usage information can be found in testbin/CmdLineReadMe
The Source code of Pied Piper Is Open Source and available on github.

Post a Comment

0 Comments