[Ffmpeg-devel] Re: dv video format with 32 kHz audio?

Roman Shaposhnick rvs
Fri Jun 2 02:07:38 CEST 2006

On Wed, May 31, 2006 at 11:54:55AM +0300, Mikko Rapeli wrote:
> On Tue, May 30, 2006 at 07:51:19PM -0700, Roman Shaposhnik wrote:
> >   Ok, first of all -- what are you trying to accomplish here ? If you're
> > trying to add native support for 32KHz sound then I'm not against it 
> > in principle (and I will apply a clean patch) but I have no interest
> > in working on it myself. Now here's why the current patch doesn't quite
> > cut it:
> >    
> >   1. I don't want 32kHZ sound to be at a target level. Simply accept
> >      such streams when they are given. Better yet -- issue a warning.
> > 
> >   2. 32kHZ should only be accepted for IEC 61834 profile. It is illegal
> >      for SMPTE profiles.
> True. Current patch is just for testing so I'll fix these after 32kHz
> audio really works. My motivation is just to finish the video editing
> projects on my 250 GB disk without having to buy more disk space :)

  You can actually look at libdv, since I believe it had some code
  for 32kHz. Now, when I used it it produced the popping noise,
  but that was a long time ago.

> >   3. The hardest one: you have to figure out the correct sample
> >      distribution policy akin to what's going on in 
> >      dv_profiles[] .audio_samples_dist. So that there's no popping
> >      sound. AFAIK, the only document that might specify it is a 
> >      IEC DV spec.
> So the popping comes when uninitialized memory is in the audio part of a
> packet after the 32kHz samples. 

  Uninitialized memory is only part of the problem. It also comes from the 
  incorrect # of audio samples as specified in dv_audio_source pack.

> I don't quite understand the difference of audio_min_samples and
> audio_samples_dist[]. I suppose samples_dist is used when samples don't
> distribute evenly to every frame, and perhaps for some kind of padding,
> which eases implementations. Is that it?

  They are never distributed evenly :-( The audio_min_samples is the min.
  amount of samples DV is willing to tolerate in every given frame,
  where audio_samples_dist is the ideal # of samples in every given frame
  calculated as to avoid popping sound.


More information about the ffmpeg-devel mailing list