Coding Challenge for ParadoxCat

Related tags

App WavDecoder
Overview

WavDecoder

Coding Challenge for ParadoxCat

WavHeaderReader

This class takes the ByteArray which supposed to be a 44 bytes length array from the very start of the WAV file. Then WavHeaderReader parses every header field into a corresponding class field.

WavDataDecoder

In this file all the work is done. The decoding process is:

  1. reading WAV data section bytes.
  2. transforming those bytes into a samples (blocks of size of number of channels) and normalize them. Since the samples data might not be an ideal rectangle those samples should be normalized by fitting them to the maximum or minimum value.
  3. transforming the normalized samples to rectangle signals. The resulted rectangle signals should also be normalized by the similar mechanism as at point 2.
  4. the resulted list of rectangle signals could be transformed into the bits string according to the modulation system given.
  5. from the resulted bits string encrypted bytes could be extracted (for this purpose the Regex pattern matching on the bits string is used).
  6. from the resulted list of encrypted bytes the real bytes should be extracted. It means to drop one first (start) and two last (stop) bits, and reverse the remaining bits string to get the byte representation in MSBF system.
  7. from the resulted list of decrypted bytes the data message could be found by dropping first 0xFF bytes, then "ID" section containing 0x42 and 0x03 bytes and taking all the bytes until the 0x00 byte was reached. The resulted amount of bytes should be equal to 1984.
  8. these bytes could be mapped into a tone data chunks with 30 bytes of data and 1 check sum byte.
  9. as the final step the checksum of 30 bytes of each tone data chunk is calculated and compared to the parsed check sum byte. The program returns true if only every of calculated check sum byte equal to the corresponding parsed one.
You might also like...
Fourthwall Android Challenge

Fourthwall Android Challenge This is the implementation of Fourthwall Android Coding Challenge Technologies used: Kotlin + Android Studio This project

A template for Advent of Code challenge with input downloading and prepared test classes
A template for Advent of Code challenge with input downloading and prepared test classes

Advent of Code Kotlin Template A template which will help you concentrate on the puzzle solutions. It brings Downloading and caching of the puzzle inp

Advent of Code in Kotlin. Jetbrains challenge.

aoc-kotlin-2021 Welcome to the Advent of Code1 Kotlin project created by xreaper95 using the Advent of Code Kotlin Template delivered by JetBrains. In

Veo App Challenge - David Hagen
Veo App Challenge - David Hagen

VeoAppChallenge - David Hagen App Capabilities: MapsActivity On launch the app loads a Google Maps fragment and will request the user for location per

Solution to the 2021 Advent of code challenge in Kotlin. aoc-2021-in-kotlin

advent-of-code-2021 Welcome to the Advent of Code1 Kotlin project created by aniobistanley using the Advent of Code Kotlin Template delivered by JetBr

PopularMovieApp - A simple project to Chiper challenge taken data from The Movie DB based on Kotlin MVVM clean architecture
PopularMovieApp - A simple project to Chiper challenge taken data from The Movie DB based on Kotlin MVVM clean architecture

A simple project to Chiper challenge taken data from The Movie DB based on Kotli

YelpAndroidChallenge - Yelp Android Challenge

Weedmaps Android Code Challenge! Hi there! Thank you for taking the time to cond

Google Developer Student Clubs 2022 Solution Challenge - Team East River's Android Application
Google Developer Student Clubs 2022 Solution Challenge - Team East River's Android Application

Solution-Challenge-2022-VEGATHER Google Developer Student Clubs 2022 Solution Challenge - Team East River's Android Application VEGATHER is an app ser

Android-coding-challenge - Vien Health Android coding challenge

Vien Health Android coding challenge Tasks There's a series of tasks to complete

Trade Republic Coding Challenge
Trade Republic Coding Challenge

Trade Republic Coding Challenge Challenge Your task is to build a system that enables users to view price histories. It will receive updates from a pa

The coding challenge elbotola android test
The coding challenge elbotola android test

Introduction The coding challenge(s) below will be used to assess your familiarity with the Android development environment, relevant Android related

An Android application sample for ClearScore coding challenge

ClearScoreChallenge An Android application sample for ClearScore coding challenge Libraries Coroutines for managing background threads. (A coroutine i

Backend coding challenge using Kotlin and Ktor

Backend Coding Challenge We appreciate you taking the time to participate and su

UP42 backend coding challenge

UP42 backend coding challenge by Paweł Radecki Build and deploy locally ./gradle

Crypto-candlestick-service - Crypto candlestick service Coding Challenge
Crypto-candlestick-service - Crypto candlestick service Coding Challenge

Coding Challenge Your task is to build a system that enables users to view price

Nab-challenge - Take home challenge from NAB in partnership with Positive Thinking Company

nab-challenge Take home challenge from NAB in partnership with Positive Thinking

An open source application to make your own android applications without coding!
An open source application to make your own android applications without coding!

Stif An Open source project for building Android Application at a go both with and without coding. This project was inspired from Scratch and Sketchwa

This is a practical project for Professional Android Developers that covers clean Architecture basics using the following: skills: Real-like coding with Kotlin, MVVM Design pattern, Kotlin Coroutines, Room database, Navigation Controller, Jetpack compose, Use cases, and Dependency injection using Dagger-Hilt.
Owner
Alexander Styagov
Android developer at Saint-Petersburg, Russia.
Alexander Styagov
An Android application sample for ClearScore coding challenge

ClearScoreChallenge An Android application sample for ClearScore coding challenge Libraries Coroutines for managing background threads. (A coroutine i

Ozan Topuz 1 Nov 18, 2021
UP42 backend coding challenge

UP42 backend coding challenge by Paweł Radecki Build and deploy locally ./gradle

Paweł Radecki 0 Jan 10, 2022
Nab-challenge - Take home challenge from NAB in partnership with Positive Thinking Company

nab-challenge Take home challenge from NAB in partnership with Positive Thinking

Hieu Vu 0 Dec 30, 2021
An open source application to make your own android applications without coding!

Stif An Open source project for building Android Application at a go both with and without coding. This project was inspired from Scratch and Sketchwa

Nethical org 5 Aug 28, 2021
Help users of coding platforms to create findable, well documented, secure and offering good quality projects

The Ambassador The Ambassador will help users of coding platforms to create findable, well documented and offering good quality projects. It measures

F. Hoffmann-La Roche 15 Nov 7, 2022
Simple Android app during a coding night. Just Learning Firebase and Android

KUI-App Simple Android app during a coding night. Just Learning Firebase and Android What we learned: Some basics of Android Basic setup of Firebase:

Kibabii University Informatics Club (KUI) 7 Aug 28, 2022
Android Clone Coding Project #11 알람

Android Clone Coding Project #11 알람 지정된 시간에 알람이 울리게 할 수 있음 지정된 시간 이후에는 매일 같은 시간에 반복되게 알람이 울리게 할 수 있음 결과화면 Screenshot1 Screenshot2 배운 내용 정리 AlarmManage

Kim Si Jin 0 Dec 24, 2021
remote technical interview Android challenge app

Android challenge We would like to learn more about how you approach a challenge as an Android Engineer. There is a simple app that isn’t made with be

GetYourGuide 0 Jan 9, 2023
code for the Mobiquity QA challenge assignment

MOBIQUITY QA CODE CHALLENGE This repository contains the code for Mobiquity code assignment for the Senior QA engineer position. Tech Stack the tools

ricardo larrahondo 1 Jan 3, 2022