[vorbis] Detecting silence

spase pumpkinz99_list_recieving at hotmail.com
Sat Jan 20 17:29:30 PST 2001



you might want to send this comment/suggestion to vorbis-dev at xiph.org so the
developers can get the idea of what you mean!

(spase)

----- Original Message -----
From: "craig duncan" <duncan at nycap.rr.com>
To: <vorbis at xiph.org>
Sent: Friday, January 19, 2001 8:27 AM
Subject: [vorbis] Detecting silence

> Completely new topic, and perhaps more important than it might appear
> just at a casual glance, if one hasn't been thinking about -- and
> really wanting to write -- some possible future (istic?)
> applications (as i have . . . and do).
>
> What i would like to have, which would _very_ much simplify what's
> involved in writing the code for certain things i have in mind, is
> (let me just say this and clarify it afterward) a callback mechanism
> (perhaps) that notifies me whenever a period of (relative) silence
> begins . . . or ends.  I'm thinking about multiplexing different
> content streams that aren't really generated together in real time but
> that i want to "produce" (time-delayed) to sound as if they were
> (taking out the silences introduced by the time-delay involved in the
> propagation of signals over the internet).  I want to be able to do
> this automatically, programatically, in real-time.
>
> The requirement is actually a little tricky, and so i don't know
> exactly how i'd implement it -- thus i'm not saying that a callback
> mechanism is specifically what is needed.  I'd rather just try to
> convey the requirement. . . which is . . . being able to have your
> program suddenly have the "beginning of substream" available, at a
> point when the underlying streaming mechanism has detected a change
> between "silence" and signal.  And vice versa (which is probably
> easier . . . but very much related) . . . discontinuing the delivery
> of data at the point (or shortly -- up to a second? -- thereafter)
> where the silence began.
>
> Does this make any sense?  Is it even possible?  My basic thought is
> that putting some mechanism that gives me this capability into the
> underlying streaming layer would mean that an application that might
> otherwise be very tricky to write, with all sorts of timing issues
> that needed to be handled manually, would be quite easy . . . with the
> right underlying mechanism available.
>
> On further thought, what i really had in mind in writing this (other
> than to actually try to present my idea clearly enough so that someone
> with some knowledge of ogg streaming internals could tell me what was
> [potentially] achievable and what was just too pie in the sky) is that
> the probable (realistic) answer to providing something that would work
> well for me along these lines is something somewhere in the middle,
> that tells me about where "silence" exists and doesn't (i don't want
> to constantly have to be doing FFT's on the stream data*) but that
> doesn't relieve me of worrying about all the timing issues (i.e. i'll
> have to buffer stuff up myself and then, having some indication from
> the stream about where silence exists or not, retransmit the data with
> streams multiplexed/sequenced and gaps removed).
>
> So my thought was, that providing this sort of mechanism (although i'm
> unsure of exactly what would be the best way to implement it) would
> probably be relatively easy to do, and therefore (at least from my
> perspective :) worth doing, even if no one (so far) has seemed to have
> any particular need for doing it (although i can't really say about
> that).  Making the mechanism available, if it wasn't too much work
> (it's probably more work to figure out the right mechanism, than to
> actually implement it), could turn out to be quite useful and save
> more than just me a lot of trouble if others ever want to do anything
> similar (often people never have a thought about doing certain things
> until they see someone else actually doing it!)
>
> craig
>
> * I left this comment in so that you'd know that i'm really not sure
>   what i'm talking about.  How do you detect "silence"?  Is there a
>   distinction that can be made between "content silence" and silence
>   introduced by propagation delays (lack of signal)?  Is automated
>   production over the internet not too difficult or creeping into
>   the area of being an AI problem?  For what kind of "production"?
>   My interest (to answer this last question) is in grass-roots
>   (what we _used_ to think of as radio) journalism and the development
>   of decentralized means of producing and distributing it (otherwise,
>   corporate media is going to control everything we hear, see and
> think).
>
> --- >8 ----
> List archives:  http://www.xiph.org/archives/
> Ogg project homepage: http://www.xiph.org/ogg/
> To unsubscribe from this list, send a message to 'vorbis-request at xiph.org'
> containing only the word 'unsubscribe' in the body.  No subject is needed.
> Unsubscribe messages sent to the list will be ignored/filtered.
>

--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'vorbis-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.



More information about the Vorbis mailing list