Title: support for splitting multichannel audio fragments in audioop module
Type: enhancement Stage: patch review
Components: Extension Modules Versions: Python 3.10
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: Th4R4
Priority: normal Keywords: patch

Created on 2021-01-21 19:43 by Th4R4, last changed 2021-01-21 20:24 by Th4R4.

Pull Requests
URL Status Linked Edit
PR 24286 open Th4R4, 2021-01-21 19:45
Messages (1)
msg385443 - (view) Author: Ramón Fraterman (Th4R4) * Date: 2021-01-21 19:43
All functions from the audioop module that work on stereo fragments, provide the same behaviour on multichannel (i.e. 5.1 channel LPCM) fragments. This is, however, not true for the tomono() function, that only makes sense when supplied with a 2-channel fragment.

Therefore, I suggest adding an extra function to the module that demultiplexes any N-channel fragment and returns a given channel as mono fragment:
audioop.demux(fragment, width, nChannels, channel)

When, for example, applied to a 16 bit stereo fragment, audioop.demux(fragment, 2, 2, 0) would give the same result as audioop.tomono(fragment, 2, 1.0, 0).
Date User Action Args
2021-01-21 20:24:05Th4R4setstatus: pending -> open
2021-01-21 19:55:50Th4R4setstatus: open -> pending
2021-01-21 19:45:16Th4R4setkeywords: + patch
stage: patch review
pull_requests: + pull_request23105
2021-01-21 19:43:34Th4R4create