Class FramePack
Packs two video streams into a stereoscopic video frame.
Inherited Members
Namespace: FFmpeg.Filters.VideoFilters
Assembly: FFmpeg.dll
Syntax
public class FramePack : FilterContext, IOptionQueryable, ILoggingContext, IAVPointer<_AVFilterContext>, IBufferSource, IBufferSink
Remarks
The two input views must have the same dimensions and frame rate. Processing stops when the shorter input stream ends.
The packing format can be configured through Format. The filter also sets the appropriate stereoscopic 3D metadata for supported codecs.
The input views can conveniently be adjusted before packing by using filters
such as scale and fps.
Properties
View SourceFormat
Gets or sets the arrangement used to pack the two stereoscopic views.
Declaration
public Stereo3DType Format { get; set; }
Property Value
| Type | Description |
|---|---|
| Stereo3DType | The stereoscopic 3D packing format. |
Remarks
The supported formats are:
- SideBySide - views are placed next to each other horizontally.
- TopBottom - views are placed above and below each other vertically.
- Lines - views are packed on alternating lines.
- Columns - views are packed on alternating columns.
- FrameSequence - views are temporally interleaved.
The default format is SideBySide.
Methods
View SourceAllocate(string, FilterGraph)
Allocates an uninitialized FramePack filter context.
Declaration
public static FramePack Allocate(string name, FilterGraph graph)
Parameters
| Type | Name | Description |
|---|---|---|
| string | name | The name assigned to the filter context. |
| FilterGraph | graph | The filter graph to which the filter belongs. |
Returns
| Type | Description |
|---|---|
| FramePack | A newly allocated FramePack filter context. |
Remarks
The returned filter is not initialized. Configure the filter and call Init() before using it.
Create(string, FilterGraph)
Creates and initializes a FramePack filter using the default side-by-side packing format.
Declaration
public static FramePack Create(string name, FilterGraph graph)
Parameters
| Type | Name | Description |
|---|---|---|
| string | name | The name assigned to the filter context. |
| FilterGraph | graph | The filter graph to which the filter belongs. |
Returns
| Type | Description |
|---|---|
| FramePack | An initialized FramePack filter context. |
Create(string, Stereo3DType, FilterGraph)
Creates and initializes a FramePack filter using the specified stereoscopic packing format.
Declaration
public static FramePack Create(string name, Stereo3DType format, FilterGraph graph)
Parameters
| Type | Name | Description |
|---|---|---|
| string | name | The name assigned to the filter context. |
| Stereo3DType | format | The arrangement used to pack the two stereoscopic views. |
| FilterGraph | graph | The filter graph to which the filter belongs. |
Returns
| Type | Description |
|---|---|
| FramePack | An initialized FramePack filter context. |
Create(string, string, FilterGraph)
Creates and initializes a FramePack filter using the specified stereoscopic packing format.
Declaration
public static FramePack Create(string name, string format, FilterGraph graph)
Parameters
| Type | Name | Description |
|---|---|---|
| string | name | The name assigned to the filter context. |
| string | format | The packing format to use. Supported values are |
| FilterGraph | graph | The filter graph to which the filter belongs. |
Returns
| Type | Description |
|---|---|
| FramePack | An initialized FramePack filter context. |
Remarks
sbs- views are placed next to each other horizontally.tab- views are placed above and below each other vertically.lines- views are packed on alternating lines.columns- views are packed on alternating columns.frameseq- views are temporally interleaved.