Coding Period Week 14(6th September— 13th September)
2 min readSep 13, 2023
Goals —
- Improve batch job scheduler pipeline
- Schedule Cron job
- Making web-app functional for swapper and hider
Progress —
- This week started off with the multiple job scheduling issue that we were facing last week. This issue arises when the videos in the different batches have the same name. During the anonymization process, certain intermediate files are generated in the home directory, which are subsequently deleted once processing concludes. The problem arises when videos from separate batch jobs share the same name, causing these intermediate files and directories to also have matching names. Given that two different batch jobs cannot start and finish simultaneously, there’s a risk that intermediate files and directories could be deleted by one job while another is still in the midst of processing. To avoid this issue, it is advisable to ensure that videos have distinct filenames
A solution to this problem is to move to the $TMPDIR of each job and do processing there only. - Next step was to set up a cron job. It’s essential to keep in mind that when creating the cron job script, one must include the complete path to all dependencies. Failing to do so could result in the dependencies not being accessible when the cron job runs.
- After the successful implementation scheduling script and cronjob, I tested the complete swapper functionality through the web-app interface. And it worked. Yayyyy!!
- Next thing was to make the Dashboard functional allowing users to view their submitted videos presented in a table format. Additionally, users should have the option to download the processed videos.
To achieve this, I utilized Jinja templates to dynamically display videos as soon as they are submitted. On the backend, I implemented a SQL query using SQLAlchemy to retrieve only the videos belonging to the current user. Moreover, for each project listed on the dashboard, I have provided a convenient link to download the associated files. - In conclusion, our web application is now fully functional, offering two visual anonymization feature — swapper and hider, and the audio anonymization feature has been successfully implemented and completed.
- Next we can work on three main things — making the openpose feature functional, developing a detailed documentation about the work that has been done so far or developing an apache server to deploy the web-app. We have still around a week left until the final submission starts. We will discuss this in upcoming meeting.