---
title: "CMAudioFormatDescriptionCreateSummary(allocator:formatDescriptionArray:flags:formatDescriptionOut:)"
framework: coremedia
role: symbol
role_heading: Function
path: "coremedia/cmaudioformatdescriptioncreatesummary(allocator:formatdescriptionarray:flags:formatdescriptionout:)"
---

# CMAudioFormatDescriptionCreateSummary(allocator:formatDescriptionArray:flags:formatDescriptionOut:)

Creates a summary audio format description from an array of descriptions.

## Declaration

```swift
func CMAudioFormatDescriptionCreateSummary(allocator: CFAllocator?, formatDescriptionArray: CFArray, flags: UInt32, formatDescriptionOut: UnsafeMutablePointer<CMAudioFormatDescription?>) -> OSStatus
```

## Parameters

- `allocator`: The allocator to use. Pass kCFAllocatorDefault or NULL to use the default allocator.
- `formatDescriptionArray`: The array of format descriptions to summarize.
- `flags`: Pass 0.
- `formatDescriptionOut`: On output, returns the newly created audio format description.

## Return Value

Return Value A result code.

## Discussion

Discussion To kCFAllocatorDefault or NULL to use the default allocator. The summary format description will be canonical LPCM and deep enough in sample rate, channel layout and channel count to sensibly contain the result of decoding and mixing the constituent format descriptions.

## See Also

### Working with Audio Descriptions

- [CMSoundDescriptionFlavor](coremedia/cmsounddescriptionflavor.md)
- [CMAudioFormatDescriptionCreate(allocator:asbd:layoutSize:layout:magicCookieSize:magicCookie:extensions:formatDescriptionOut:)](coremedia/cmaudioformatdescriptioncreate(allocator:asbd:layoutsize:layout:magiccookiesize:magiccookie:extensions:formatdescriptionout:).md)
- [CMAudioFormatDescriptionEqual(_:otherFormatDescription:equalityMask:equalityMaskOut:)](coremedia/cmaudioformatdescriptionequal(_:otherformatdescription:equalitymask:equalitymaskout:).md)
- [CMAudioFormatDescriptionGetChannelLayout(_:sizeOut:)](coremedia/cmaudioformatdescriptiongetchannellayout(_:sizeout:).md)
- [CMAudioFormatDescriptionGetFormatList(_:sizeOut:)](coremedia/cmaudioformatdescriptiongetformatlist(_:sizeout:).md)
- [CMAudioFormatDescriptionGetMagicCookie(_:sizeOut:)](coremedia/cmaudioformatdescriptiongetmagiccookie(_:sizeout:).md)
- [CMAudioFormatDescriptionGetMostCompatibleFormat(_:)](coremedia/cmaudioformatdescriptiongetmostcompatibleformat(_:).md)
- [CMAudioFormatDescriptionGetRichestDecodableFormat(_:)](coremedia/cmaudioformatdescriptiongetrichestdecodableformat(_:).md)
- [CMAudioFormatDescriptionGetStreamBasicDescription(_:)](coremedia/cmaudioformatdescriptiongetstreambasicdescription(_:).md)
- [CMDoesBigEndianSoundDescriptionRequireLegacyCBRSampleTableLayout(_:flavor:)](coremedia/cmdoesbigendiansounddescriptionrequirelegacycbrsampletablelayout(_:flavor:).md)
- [CMSwapBigEndianSoundDescriptionToHost(_:_:)](coremedia/cmswapbigendiansounddescriptiontohost(_:_:).md)
- [CMSwapHostEndianSoundDescriptionToBig(_:_:)](coremedia/cmswaphostendiansounddescriptiontobig(_:_:).md)
- [CMAudioFormatDescriptionCreateFromBigEndianSoundDescriptionData(allocator:bigEndianSoundDescriptionData:size:flavor:formatDescriptionOut:)](coremedia/cmaudioformatdescriptioncreatefrombigendiansounddescriptiondata(allocator:bigendiansounddescriptiondata:size:flavor:formatdescriptionout:).md)
- [CMAudioFormatDescriptionCreateFromBigEndianSoundDescriptionBlockBuffer(allocator:bigEndianSoundDescriptionBlockBuffer:flavor:formatDescriptionOut:)](coremedia/cmaudioformatdescriptioncreatefrombigendiansounddescriptionblockbuffer(allocator:bigendiansounddescriptionblockbuffer:flavor:formatdescriptionout:).md)
- [CMAudioFormatDescriptionCopyAsBigEndianSoundDescriptionBlockBuffer(allocator:audioFormatDescription:flavor:blockBufferOut:)](coremedia/cmaudioformatdescriptioncopyasbigendiansounddescriptionblockbuffer(allocator:audioformatdescription:flavor:blockbufferout:).md)
