Video Steganography - lets play hide and seek!

Progress on my dissertation this week has undoubtedly left me on a high - I have fixed my issue with audio distortion!

I doubt I would have resolved this issue this quickly without the help of my supervisor, Mike Stannett. We spent an hour this week dissecting my code and the workings of FFmpeg over Skype. At the end of this, we were reasonably confident that we had isolated the problem, which I can now tell you was to do with the sample format of the audio stream. The audio sample format was not correctly deduced from the input file - the audio channel was treated as a 16-bit sample rate instead of 32-bit. Given my experimentation with WAV audio steganography at the start of this project, I was reasonably confident that this was the issue.

Enabling the support of other (non-s16) sample formats in FFmpeg proved to be difficult that needed to be overcome given my recent restructuring of including FFmpeg libraries (avformat, avcodec, ...) directly in my project. However, it is fair to say that several hours later, I resolved this.

I can now transcode a video on any operating system (Windows, Linux, OS X) whereby the audio and video quality persists.

Over the last few days, I have looked into modifying motion vector related values - I have had success with this to an extent, and I am exploring the possible options.

I have also solved my "analysis" issue that I was having where frame pictures were claiming to have a picture size of 0x0. Now, I need to work on embedding and extracting data from video frames.

I have decided to walk before I can run - sticking with a fundamental encoding strategy with the possibility of exploring other methods later. There is also the possibility of taking this further by adding error correction codes and other such enhancements later.

My aims for the next seven days:

  • Finish the first two chapters of my Final Report by the end of Tuesday.
    • Introduction
    • Literatury Review
  • Produce a simple method of embedding and extracting data.