Collect video files from different sources and store them in one format.
Platform: Desktop (PC)
Kraftway manufactures personal computers for business and home, workstations, terminal systems, servers, storage systems, active cash registers, monitors, computer peripherals. It has direct agreements with global manufacturers of computer component and software. Thus Kraftway integrates the latest technological achievements into its products. The company's network has over 200 customer services centers across the country.
The customer asked Citronium to develop video surveillance software. The project is being developed for the Moscow government.
There are numerous video cameras installed in various places of Moscow. The camera owners are not connected to each other, each of them has their own goals. Of course, video surveillance is mainly used for security.
The aim of the project was to collect videos from various sources recorded in different formats and to decode/encode them into one format. Hence the tasks to save the incoming video:
The main challenge for the customer was the encoder/decoder development. We faceв the problem of poor documentation on the libraries we worked with (libx, libav), as well as poor documentation on using hardware acceleration for Intel video cards. Well, actually, to solve this problem, we did not reinvent the wheel. We looked through the whole Stack Overflow, YouTube, translated the documentation from Chinese (it was not the first time we did so). We tried a billion variants and finally got a ready solution. Everything was as we love and know how!
Two developers worked on the project and in a short period of time they refreshed their knowledge of C++ they hadn’t used after graduation. Glory to the excellent educational system of our region, where perfect IT specialists are trained. Our developers quickly grasped the essence of the project and overcame all the difficulties in the development process.
Line manager of CCTV monitoring and analytics, Kraftway company
We thank Citronium for developing software for hardware video decoding. The company did their best in solving a non-standard task, performed great development, taking chances and responsibility in working with non-standard equipment and software with scarce documentation.