[Speex-dev] Steganographic extension to Speex

Jean-Marc Valin Jean-Marc.Valin at USherbrooke.ca
Wed Oct 26 02:54:29 PDT 2005


Actually, my best bet for where to include steganographic information
would be in the innovation codebook entries. It will likely cause less
distortion than injecting noise in the LSPs or in the pitch predictor.
For that, you'd need to "steal" one bit/subframe or something like that.
I'm not sure what's the best way of doing that, but it would most likely
involve tweaking the codebook search to generate some kind of pattern
when quantizing (e.g. whether some of the entries are allowed).


> Of course, I cannot blindly change bits. But everywhere, where
> truncation is done, one can change things to embed data.
> Besides, even if I find no good possibility to embed data in the
> CELP encoding process, that would still be an ok result for this work.
> At this time, I see the possibility to hide data in the process of
> mapping the residues onto codebook entries, in the LPC to LSP
> conversion and in the comfort noise generation (I guess a more
> commonly used term for this is "noise shaping").
> >>- which bits of a transmitted frame are the two filters, which are
> >>codebook keys?
> > 
> > what do you mean?
> I mean, that we send the speech frame by frame. So a frame needs to
> contain the two filters (pitch and formants), the first couple of
> values (raw, now we can apply the filter to predict the rest of the
> frame), and then the codebook keys of which the corresponding
> entries are added to get raw speech data back.
> Ciao,
> Björn
> -- 
> You are a bundle of energy, always on the go.

More information about the Speex-dev mailing list