forked from FFmpeg/FFmpeg
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathREADME
72 lines (52 loc) · 2.33 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
This is a final course project in Information Security.
It is a about steganography in video.
We are modifying ffmpeg for these purposes.
Contribution:
Pavel Zaichenkov <[email protected]>
Arseniy Zaostrovnikh <[email protected]>
Rustem Feyzkhanov <[email protected]>
####### FFMPEG BUNDLE INSTALL #######
To build development version run from the project's directory:
$ ./configure --disable-optimizations --enable-debug
$ make ffmpeg
In case using gdb for debugging, please run <prefix>_g executables for these
purposes (i.e. ffplay_g, ffmpeg_g, etc.). They contain debugging information.
############## ENCODER ##############
Steganography encoder is implemented in file 'libavcodec/mpeg12enc.c' (only
MPEG1 version is implemented by now.)
------------------------------------
Encoding parameters are defined in lines 74-79.
bound_level -- level's lower boundary in range about of [4..64].
bits_num -- number of *encoded* bits in a byte. Range {1, 2}.
enable_log -- enable/disable logging.
The default ffmpeg is used for encoding. Typical command looks like
./ffmpeg -i source.avi dest.mpg <-- to encode in default quality
A usefult options is '-sameq' as well. Then the destination video is encoded in
original quality.
./ffmpeg -i source.avi -sameq dest.mpg
------------------------------------
A secret message is stored in file 'secret.txt'.
A destination video *must* be wih 'mpg' extension.
############## DECODER ##############
in order to build myplay steganography decoder command:
$ touch libavcodec/get_bits.h
$ sh myplay-make.sh
to use it write:
$./myplay <"your coded video file"> 2> <"your log file">
After that, there will be created file buga.t containing all coded information.
log file will contain additional information
Valuable macro-constants in the file mplay.c:
NUMBER_BITS_PER_LEVEL -- number of bits, encoded in each apropriate level
LEVEL_TRESHOLD -- treshold, used to determind apropriate levels
LOG_ENABLE -- enable/disable logging unimportant stuff, put 0
in order to update myplay binary file, after changing a constant, write just:
$ sh myplay-make.sh
-------------------------------------------------------------------------------
FFmpeg README
-------------
1) Documentation
----------------
* Read the documentation in the doc/ directory.
2) Licensing
------------
* See the LICENSE file.