[FFmpeg-devel] [PATCH 4/4] lavd/oss: implement surround playback.

Nicolas George nicolas.george at normalesup.org
Sun Feb 3 23:09:12 CET 2013


Le quintidi 15 pluviôse, an CCXXI, Michael Niedermayer a écrit :
> I think the docs state that no flushing or delay happens if theres
> no resampling and sufficient output bufferf size

I had missed that, that is very good news.

> can you provide a testcase for reordering of S32 that gets converted
> to float ?
> this should be easy to fix

I used the following command line:

./ffmpeg_g -f s32le -ac 2 -i /dev/zero -af pan=2:c0=c1:c1=c0 -f null -t 1 -

after adding a debug av_log() in swresample.c just after the two calls to
swri_audio_convert_alloc to dump the selected formats.

> about reordering packed->packed, code could be added to swr to handle
> this case
> Thats not meant to be an argument about doing it in alsa specific
> code vs swr. Just that it would make sense to optimize it in swr

You know the code better than me, you are the one capable to tell whether it
would integrate well in the code flow.

If this implemented, I see no reason not to use lswr to do the work.

More precisely, there were three arguments: First, the latency and flushing,
and you corrected me on that one. Second, the performance hit due to planar
conversion, and I do not consider it a problem, speed can always be improved
later. Third, the possible conversion to internal format: this one is
blocking, because the samples for ALSA or OSS must be handled as opaque
binary data.

But do not consider that a high priority task: the code is already working
for ALSA, and this small patch series makes it work for OSS too, any
simplification can come later.

Regards,

-- 
  Nicolas George
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20130203/24faf318/attachment.asc>


More information about the ffmpeg-devel mailing list