• This repository has been archived on 06/Mar/2022
  • Stars
    star
    433
  • Rank 100,464 (Top 2 %)
  • Language
    Python
  • License
    MIT License
  • Created over 6 years ago
  • Updated almost 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Extract firmware images from an Android OTA payload.bin file

extract_android_ota_payload.py

Extract Android firmware images from an OTA payload.bin file.

With the introduction of the A/B system update, the OTA file format changed. This tool allows to extract and decompress the firmware images packed using the 'brillo' toolset.

Incremental firmware images are not supported (source_copy, source_bsdiff operations).

Usage

$ extract_android_ota_payload.py <payload.bin> [target_dir]
  <payload.bin> : file extracted from the OTA zip file or the OTA zip file
  <target_dir>  : output directory for the extracted file

Example

$ python3 extract_android_ota_payload.py marlin-ota-opm4.171019.021.d1-fd6998a5.zip /tmp/
Extracting 'boot.img'
Extracting 'system.img'
Extracting 'vendor.img'
...
Extracting 'modem.img'

Dependencies

python-protobuf,bzcat,xzcat