On 4/25/13, Brad O'Hearne <[email protected]> wrote: > On Apr 24, 2013, at 4:54 PM, Paul B Mahol <[email protected]> wrote: > >> You call av_samples_alloc_array_and_samples() with align set to 0, which >> means >> channel data planes are aligned along 32 byte boundary. Is this really the >> case? >> >> Set align argument to 1 if to make them aligned along 1 byte boundary. > > Here is the information on the sample buffer received from QTKit which is > being used to fill the source data array: > > 2013-04-24 17:06:58.653 QTFFmpeg[2732:d407] Linear PCM, 32 bit little-endian > floating point, 2 channels, 44100 Hz > 2013-04-24 17:06:58.654 QTFFmpeg[2732:d407] Bytes per frame: 4 > 2013-04-24 17:06:58.654 QTFFmpeg[2732:d407] Frames per packet: 1 > 2013-04-24 17:06:58.655 QTFFmpeg[2732:d407] Bits per channel: 32 > 2013-04-24 17:06:58.655 QTFFmpeg[2732:d407] Is packed? YES > 2013-04-24 17:06:58.655 QTFFmpeg[2732:d407] Is high aligned? NO > 2013-04-24 17:06:58.656 QTFFmpeg[2732:d407] Channels per frame: 2 > > So to answer your question, provided that I've understood it correctly, > samples are packed, therefore should be aligned on the full 32-bit boundary,
Its byte and not bit. Another thing, you overwrite sourceData[x] pointers, causing memory leak. > and thus align should be set to 0. But for the sake of curiosity, I changed > align to 1 (for all functions with align) and it made no difference in the > audio distortion...same as before. I then tried setting the align parameter > to 1 on only the filling of the source data array -- distorted audio still, > but seemed to cut the whole track short. > > To the best of my knowledge, a packed sample buffer should not need high > alignment (which I presume is what you mean by the 1 byte boundary). If I've > misunderstood your question, let me know. > > Thanks, > > Brad > _______________________________________________ > Libav-user mailing list > [email protected] > http://ffmpeg.org/mailman/listinfo/libav-user > _______________________________________________ Libav-user mailing list [email protected] http://ffmpeg.org/mailman/listinfo/libav-user
