Azure Classic

v5.19.0 published on Friday, Sep 16, 2022 by Pulumi

AssetFilter

Manages an Azure Media Asset Filter.

Example Usage

using System.Collections.Generic;
using Pulumi;
using Azure = Pulumi.Azure;

return await Deployment.RunAsync(() => 
{
    var exampleResourceGroup = new Azure.Core.ResourceGroup("exampleResourceGroup", new()
    {
        Location = "West Europe",
    });

    var exampleAccount = new Azure.Storage.Account("exampleAccount", new()
    {
        ResourceGroupName = exampleResourceGroup.Name,
        Location = exampleResourceGroup.Location,
        AccountTier = "Standard",
        AccountReplicationType = "GRS",
    });

    var exampleServiceAccount = new Azure.Media.ServiceAccount("exampleServiceAccount", new()
    {
        Location = exampleResourceGroup.Location,
        ResourceGroupName = exampleResourceGroup.Name,
        StorageAccounts = new[]
        {
            new Azure.Media.Inputs.ServiceAccountStorageAccountArgs
            {
                Id = exampleAccount.Id,
                IsPrimary = true,
            },
        },
    });

    var exampleAsset = new Azure.Media.Asset("exampleAsset", new()
    {
        ResourceGroupName = exampleResourceGroup.Name,
        MediaServicesAccountName = exampleServiceAccount.Name,
        Description = "Asset description",
    });

    var exampleAssetFilter = new Azure.Media.AssetFilter("exampleAssetFilter", new()
    {
        AssetId = exampleAsset.Id,
        FirstQualityBitrate = 128000,
        PresentationTimeRange = new Azure.Media.Inputs.AssetFilterPresentationTimeRangeArgs
        {
            StartInUnits = 0,
            EndInUnits = 15,
            PresentationWindowInUnits = 90,
            LiveBackoffInUnits = 0,
            UnitTimescaleInMiliseconds = 1000,
            ForceEnd = false,
        },
        TrackSelections = new[]
        {
            new Azure.Media.Inputs.AssetFilterTrackSelectionArgs
            {
                Conditions = new[]
                {
                    new Azure.Media.Inputs.AssetFilterTrackSelectionConditionArgs
                    {
                        Property = "Type",
                        Operation = "Equal",
                        Value = "Audio",
                    },
                    new Azure.Media.Inputs.AssetFilterTrackSelectionConditionArgs
                    {
                        Property = "Language",
                        Operation = "NotEqual",
                        Value = "en",
                    },
                    new Azure.Media.Inputs.AssetFilterTrackSelectionConditionArgs
                    {
                        Property = "FourCC",
                        Operation = "NotEqual",
                        Value = "EC-3",
                    },
                },
            },
            new Azure.Media.Inputs.AssetFilterTrackSelectionArgs
            {
                Conditions = new[]
                {
                    new Azure.Media.Inputs.AssetFilterTrackSelectionConditionArgs
                    {
                        Property = "Type",
                        Operation = "Equal",
                        Value = "Video",
                    },
                    new Azure.Media.Inputs.AssetFilterTrackSelectionConditionArgs
                    {
                        Property = "Bitrate",
                        Operation = "Equal",
                        Value = "3000000-5000000",
                    },
                },
            },
        },
    });

});
package main

import (
	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/media"
	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleAccount, err := storage.NewAccount(ctx, "exampleAccount", &storage.AccountArgs{
			ResourceGroupName:      exampleResourceGroup.Name,
			Location:               exampleResourceGroup.Location,
			AccountTier:            pulumi.String("Standard"),
			AccountReplicationType: pulumi.String("GRS"),
		})
		if err != nil {
			return err
		}
		exampleServiceAccount, err := media.NewServiceAccount(ctx, "exampleServiceAccount", &media.ServiceAccountArgs{
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			StorageAccounts: media.ServiceAccountStorageAccountArray{
				&media.ServiceAccountStorageAccountArgs{
					Id:        exampleAccount.ID(),
					IsPrimary: pulumi.Bool(true),
				},
			},
		})
		if err != nil {
			return err
		}
		exampleAsset, err := media.NewAsset(ctx, "exampleAsset", &media.AssetArgs{
			ResourceGroupName:        exampleResourceGroup.Name,
			MediaServicesAccountName: exampleServiceAccount.Name,
			Description:              pulumi.String("Asset description"),
		})
		if err != nil {
			return err
		}
		_, err = media.NewAssetFilter(ctx, "exampleAssetFilter", &media.AssetFilterArgs{
			AssetId:             exampleAsset.ID(),
			FirstQualityBitrate: pulumi.Int(128000),
			PresentationTimeRange: &media.AssetFilterPresentationTimeRangeArgs{
				StartInUnits:               pulumi.Int(0),
				EndInUnits:                 pulumi.Int(15),
				PresentationWindowInUnits:  pulumi.Int(90),
				LiveBackoffInUnits:         pulumi.Int(0),
				UnitTimescaleInMiliseconds: pulumi.Int(1000),
				ForceEnd:                   pulumi.Bool(false),
			},
			TrackSelections: media.AssetFilterTrackSelectionArray{
				&media.AssetFilterTrackSelectionArgs{
					Conditions: media.AssetFilterTrackSelectionConditionArray{
						&media.AssetFilterTrackSelectionConditionArgs{
							Property:  pulumi.String("Type"),
							Operation: pulumi.String("Equal"),
							Value:     pulumi.String("Audio"),
						},
						&media.AssetFilterTrackSelectionConditionArgs{
							Property:  pulumi.String("Language"),
							Operation: pulumi.String("NotEqual"),
							Value:     pulumi.String("en"),
						},
						&media.AssetFilterTrackSelectionConditionArgs{
							Property:  pulumi.String("FourCC"),
							Operation: pulumi.String("NotEqual"),
							Value:     pulumi.String("EC-3"),
						},
					},
				},
				&media.AssetFilterTrackSelectionArgs{
					Conditions: media.AssetFilterTrackSelectionConditionArray{
						&media.AssetFilterTrackSelectionConditionArgs{
							Property:  pulumi.String("Type"),
							Operation: pulumi.String("Equal"),
							Value:     pulumi.String("Video"),
						},
						&media.AssetFilterTrackSelectionConditionArgs{
							Property:  pulumi.String("Bitrate"),
							Operation: pulumi.String("Equal"),
							Value:     pulumi.String("3000000-5000000"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.storage.Account;
import com.pulumi.azure.storage.AccountArgs;
import com.pulumi.azure.media.ServiceAccount;
import com.pulumi.azure.media.ServiceAccountArgs;
import com.pulumi.azure.media.inputs.ServiceAccountStorageAccountArgs;
import com.pulumi.azure.media.Asset;
import com.pulumi.azure.media.AssetArgs;
import com.pulumi.azure.media.AssetFilter;
import com.pulumi.azure.media.AssetFilterArgs;
import com.pulumi.azure.media.inputs.AssetFilterPresentationTimeRangeArgs;
import com.pulumi.azure.media.inputs.AssetFilterTrackSelectionArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()        
            .location("West Europe")
            .build());

        var exampleAccount = new Account("exampleAccount", AccountArgs.builder()        
            .resourceGroupName(exampleResourceGroup.name())
            .location(exampleResourceGroup.location())
            .accountTier("Standard")
            .accountReplicationType("GRS")
            .build());

        var exampleServiceAccount = new ServiceAccount("exampleServiceAccount", ServiceAccountArgs.builder()        
            .location(exampleResourceGroup.location())
            .resourceGroupName(exampleResourceGroup.name())
            .storageAccounts(ServiceAccountStorageAccountArgs.builder()
                .id(exampleAccount.id())
                .isPrimary(true)
                .build())
            .build());

        var exampleAsset = new Asset("exampleAsset", AssetArgs.builder()        
            .resourceGroupName(exampleResourceGroup.name())
            .mediaServicesAccountName(exampleServiceAccount.name())
            .description("Asset description")
            .build());

        var exampleAssetFilter = new AssetFilter("exampleAssetFilter", AssetFilterArgs.builder()        
            .assetId(exampleAsset.id())
            .firstQualityBitrate(128000)
            .presentationTimeRange(AssetFilterPresentationTimeRangeArgs.builder()
                .startInUnits(0)
                .endInUnits(15)
                .presentationWindowInUnits(90)
                .liveBackoffInUnits(0)
                .unitTimescaleInMiliseconds(1000)
                .forceEnd(false)
                .build())
            .trackSelections(            
                AssetFilterTrackSelectionArgs.builder()
                    .conditions(                    
                        AssetFilterTrackSelectionConditionArgs.builder()
                            .property("Type")
                            .operation("Equal")
                            .value("Audio")
                            .build(),
                        AssetFilterTrackSelectionConditionArgs.builder()
                            .property("Language")
                            .operation("NotEqual")
                            .value("en")
                            .build(),
                        AssetFilterTrackSelectionConditionArgs.builder()
                            .property("FourCC")
                            .operation("NotEqual")
                            .value("EC-3")
                            .build())
                    .build(),
                AssetFilterTrackSelectionArgs.builder()
                    .conditions(                    
                        AssetFilterTrackSelectionConditionArgs.builder()
                            .property("Type")
                            .operation("Equal")
                            .value("Video")
                            .build(),
                        AssetFilterTrackSelectionConditionArgs.builder()
                            .property("Bitrate")
                            .operation("Equal")
                            .value("3000000-5000000")
                            .build())
                    .build())
            .build());

    }
}
import pulumi
import pulumi_azure as azure

example_resource_group = azure.core.ResourceGroup("exampleResourceGroup", location="West Europe")
example_account = azure.storage.Account("exampleAccount",
    resource_group_name=example_resource_group.name,
    location=example_resource_group.location,
    account_tier="Standard",
    account_replication_type="GRS")
example_service_account = azure.media.ServiceAccount("exampleServiceAccount",
    location=example_resource_group.location,
    resource_group_name=example_resource_group.name,
    storage_accounts=[azure.media.ServiceAccountStorageAccountArgs(
        id=example_account.id,
        is_primary=True,
    )])
example_asset = azure.media.Asset("exampleAsset",
    resource_group_name=example_resource_group.name,
    media_services_account_name=example_service_account.name,
    description="Asset description")
example_asset_filter = azure.media.AssetFilter("exampleAssetFilter",
    asset_id=example_asset.id,
    first_quality_bitrate=128000,
    presentation_time_range=azure.media.AssetFilterPresentationTimeRangeArgs(
        start_in_units=0,
        end_in_units=15,
        presentation_window_in_units=90,
        live_backoff_in_units=0,
        unit_timescale_in_miliseconds=1000,
        force_end=False,
    ),
    track_selections=[
        azure.media.AssetFilterTrackSelectionArgs(
            conditions=[
                azure.media.AssetFilterTrackSelectionConditionArgs(
                    property="Type",
                    operation="Equal",
                    value="Audio",
                ),
                azure.media.AssetFilterTrackSelectionConditionArgs(
                    property="Language",
                    operation="NotEqual",
                    value="en",
                ),
                azure.media.AssetFilterTrackSelectionConditionArgs(
                    property="FourCC",
                    operation="NotEqual",
                    value="EC-3",
                ),
            ],
        ),
        azure.media.AssetFilterTrackSelectionArgs(
            conditions=[
                azure.media.AssetFilterTrackSelectionConditionArgs(
                    property="Type",
                    operation="Equal",
                    value="Video",
                ),
                azure.media.AssetFilterTrackSelectionConditionArgs(
                    property="Bitrate",
                    operation="Equal",
                    value="3000000-5000000",
                ),
            ],
        ),
    ])
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleAccount = new azure.storage.Account("exampleAccount", {
    resourceGroupName: exampleResourceGroup.name,
    location: exampleResourceGroup.location,
    accountTier: "Standard",
    accountReplicationType: "GRS",
});
const exampleServiceAccount = new azure.media.ServiceAccount("exampleServiceAccount", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    storageAccounts: [{
        id: exampleAccount.id,
        isPrimary: true,
    }],
});
const exampleAsset = new azure.media.Asset("exampleAsset", {
    resourceGroupName: exampleResourceGroup.name,
    mediaServicesAccountName: exampleServiceAccount.name,
    description: "Asset description",
});
const exampleAssetFilter = new azure.media.AssetFilter("exampleAssetFilter", {
    assetId: exampleAsset.id,
    firstQualityBitrate: 128000,
    presentationTimeRange: {
        startInUnits: 0,
        endInUnits: 15,
        presentationWindowInUnits: 90,
        liveBackoffInUnits: 0,
        unitTimescaleInMiliseconds: 1000,
        forceEnd: false,
    },
    trackSelections: [
        {
            conditions: [
                {
                    property: "Type",
                    operation: "Equal",
                    value: "Audio",
                },
                {
                    property: "Language",
                    operation: "NotEqual",
                    value: "en",
                },
                {
                    property: "FourCC",
                    operation: "NotEqual",
                    value: "EC-3",
                },
            ],
        },
        {
            conditions: [
                {
                    property: "Type",
                    operation: "Equal",
                    value: "Video",
                },
                {
                    property: "Bitrate",
                    operation: "Equal",
                    value: "3000000-5000000",
                },
            ],
        },
    ],
});
resources:
  exampleResourceGroup:
    type: azure:core:ResourceGroup
    properties:
      location: West Europe
  exampleAccount:
    type: azure:storage:Account
    properties:
      resourceGroupName: ${exampleResourceGroup.name}
      location: ${exampleResourceGroup.location}
      accountTier: Standard
      accountReplicationType: GRS
  exampleServiceAccount:
    type: azure:media:ServiceAccount
    properties:
      location: ${exampleResourceGroup.location}
      resourceGroupName: ${exampleResourceGroup.name}
      storageAccounts:
        - id: ${exampleAccount.id}
          isPrimary: true
  exampleAsset:
    type: azure:media:Asset
    properties:
      resourceGroupName: ${exampleResourceGroup.name}
      mediaServicesAccountName: ${exampleServiceAccount.name}
      description: Asset description
  exampleAssetFilter:
    type: azure:media:AssetFilter
    properties:
      assetId: ${exampleAsset.id}
      firstQualityBitrate: 128000
      presentationTimeRange:
        startInUnits: 0
        endInUnits: 15
        presentationWindowInUnits: 90
        liveBackoffInUnits: 0
        unitTimescaleInMiliseconds: 1000
        forceEnd: false
      trackSelections:
        - conditions:
            - property: Type
              operation: Equal
              value: Audio
            - property: Language
              operation: NotEqual
              value: en
            - property: FourCC
              operation: NotEqual
              value: EC-3
        - conditions:
            - property: Type
              operation: Equal
              value: Video
            - property: Bitrate
              operation: Equal
              value: 3000000-5000000

Create a AssetFilter Resource

new AssetFilter(name: string, args: AssetFilterArgs, opts?: CustomResourceOptions);
@overload
def AssetFilter(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                asset_id: Optional[str] = None,
                first_quality_bitrate: Optional[int] = None,
                name: Optional[str] = None,
                presentation_time_range: Optional[AssetFilterPresentationTimeRangeArgs] = None,
                track_selections: Optional[Sequence[AssetFilterTrackSelectionArgs]] = None)
@overload
def AssetFilter(resource_name: str,
                args: AssetFilterArgs,
                opts: Optional[ResourceOptions] = None)
func NewAssetFilter(ctx *Context, name string, args AssetFilterArgs, opts ...ResourceOption) (*AssetFilter, error)
public AssetFilter(string name, AssetFilterArgs args, CustomResourceOptions? opts = null)
public AssetFilter(String name, AssetFilterArgs args)
public AssetFilter(String name, AssetFilterArgs args, CustomResourceOptions options)
type: azure:media:AssetFilter
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

name string
The unique name of the resource.
args AssetFilterArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
args AssetFilterArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args AssetFilterArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args AssetFilterArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name String
The unique name of the resource.
args AssetFilterArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

AssetFilter Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

The AssetFilter resource accepts the following input properties:

AssetId string

The Asset ID for which the Asset Filter should be created. Changing this forces a new Asset Filter to be created.

FirstQualityBitrate int

The first quality bitrate. Sets the first video track to appear in the Live Streaming playlist to allow HLS native players to start downloading from this quality level at the beginning.

Name string

The name which should be used for this Asset Filter. Changing this forces a new Asset Filter to be created.

PresentationTimeRange AssetFilterPresentationTimeRangeArgs

A presentation_time_range block as defined below.

TrackSelections List<AssetFilterTrackSelectionArgs>

One or more track_selection blocks as defined below.

AssetId string

The Asset ID for which the Asset Filter should be created. Changing this forces a new Asset Filter to be created.

FirstQualityBitrate int

The first quality bitrate. Sets the first video track to appear in the Live Streaming playlist to allow HLS native players to start downloading from this quality level at the beginning.

Name string

The name which should be used for this Asset Filter. Changing this forces a new Asset Filter to be created.

PresentationTimeRange AssetFilterPresentationTimeRangeArgs

A presentation_time_range block as defined below.

TrackSelections []AssetFilterTrackSelectionArgs

One or more track_selection blocks as defined below.

assetId String

The Asset ID for which the Asset Filter should be created. Changing this forces a new Asset Filter to be created.

firstQualityBitrate Integer

The first quality bitrate. Sets the first video track to appear in the Live Streaming playlist to allow HLS native players to start downloading from this quality level at the beginning.

name String

The name which should be used for this Asset Filter. Changing this forces a new Asset Filter to be created.

presentationTimeRange AssetFilterPresentationTimeRangeArgs

A presentation_time_range block as defined below.

trackSelections List<AssetFilterTrackSelectionArgs>

One or more track_selection blocks as defined below.

assetId string

The Asset ID for which the Asset Filter should be created. Changing this forces a new Asset Filter to be created.

firstQualityBitrate number

The first quality bitrate. Sets the first video track to appear in the Live Streaming playlist to allow HLS native players to start downloading from this quality level at the beginning.

name string

The name which should be used for this Asset Filter. Changing this forces a new Asset Filter to be created.

presentationTimeRange AssetFilterPresentationTimeRangeArgs

A presentation_time_range block as defined below.

trackSelections AssetFilterTrackSelectionArgs[]

One or more track_selection blocks as defined below.

asset_id str

The Asset ID for which the Asset Filter should be created. Changing this forces a new Asset Filter to be created.

first_quality_bitrate int

The first quality bitrate. Sets the first video track to appear in the Live Streaming playlist to allow HLS native players to start downloading from this quality level at the beginning.

name str

The name which should be used for this Asset Filter. Changing this forces a new Asset Filter to be created.

presentation_time_range AssetFilterPresentationTimeRangeArgs

A presentation_time_range block as defined below.

track_selections Sequence[AssetFilterTrackSelectionArgs]

One or more track_selection blocks as defined below.

assetId String

The Asset ID for which the Asset Filter should be created. Changing this forces a new Asset Filter to be created.

firstQualityBitrate Number

The first quality bitrate. Sets the first video track to appear in the Live Streaming playlist to allow HLS native players to start downloading from this quality level at the beginning.

name String

The name which should be used for this Asset Filter. Changing this forces a new Asset Filter to be created.

presentationTimeRange Property Map

A presentation_time_range block as defined below.

trackSelections List<Property Map>

One or more track_selection blocks as defined below.

Outputs

All input properties are implicitly available as output properties. Additionally, the AssetFilter resource produces the following output properties:

Id string

The provider-assigned unique ID for this managed resource.

Id string

The provider-assigned unique ID for this managed resource.

id String

The provider-assigned unique ID for this managed resource.

id string

The provider-assigned unique ID for this managed resource.

id str

The provider-assigned unique ID for this managed resource.

id String

The provider-assigned unique ID for this managed resource.

Look up an Existing AssetFilter Resource

Get an existing AssetFilter resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: AssetFilterState, opts?: CustomResourceOptions): AssetFilter
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        asset_id: Optional[str] = None,
        first_quality_bitrate: Optional[int] = None,
        name: Optional[str] = None,
        presentation_time_range: Optional[AssetFilterPresentationTimeRangeArgs] = None,
        track_selections: Optional[Sequence[AssetFilterTrackSelectionArgs]] = None) -> AssetFilter
func GetAssetFilter(ctx *Context, name string, id IDInput, state *AssetFilterState, opts ...ResourceOption) (*AssetFilter, error)
public static AssetFilter Get(string name, Input<string> id, AssetFilterState? state, CustomResourceOptions? opts = null)
public static AssetFilter get(String name, Output<String> id, AssetFilterState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
AssetId string

The Asset ID for which the Asset Filter should be created. Changing this forces a new Asset Filter to be created.

FirstQualityBitrate int

The first quality bitrate. Sets the first video track to appear in the Live Streaming playlist to allow HLS native players to start downloading from this quality level at the beginning.

Name string

The name which should be used for this Asset Filter. Changing this forces a new Asset Filter to be created.

PresentationTimeRange AssetFilterPresentationTimeRangeArgs

A presentation_time_range block as defined below.

TrackSelections List<AssetFilterTrackSelectionArgs>

One or more track_selection blocks as defined below.

AssetId string

The Asset ID for which the Asset Filter should be created. Changing this forces a new Asset Filter to be created.

FirstQualityBitrate int

The first quality bitrate. Sets the first video track to appear in the Live Streaming playlist to allow HLS native players to start downloading from this quality level at the beginning.

Name string

The name which should be used for this Asset Filter. Changing this forces a new Asset Filter to be created.

PresentationTimeRange AssetFilterPresentationTimeRangeArgs

A presentation_time_range block as defined below.

TrackSelections []AssetFilterTrackSelectionArgs

One or more track_selection blocks as defined below.

assetId String

The Asset ID for which the Asset Filter should be created. Changing this forces a new Asset Filter to be created.

firstQualityBitrate Integer

The first quality bitrate. Sets the first video track to appear in the Live Streaming playlist to allow HLS native players to start downloading from this quality level at the beginning.

name String

The name which should be used for this Asset Filter. Changing this forces a new Asset Filter to be created.

presentationTimeRange AssetFilterPresentationTimeRangeArgs

A presentation_time_range block as defined below.

trackSelections List<AssetFilterTrackSelectionArgs>

One or more track_selection blocks as defined below.

assetId string

The Asset ID for which the Asset Filter should be created. Changing this forces a new Asset Filter to be created.

firstQualityBitrate number

The first quality bitrate. Sets the first video track to appear in the Live Streaming playlist to allow HLS native players to start downloading from this quality level at the beginning.

name string

The name which should be used for this Asset Filter. Changing this forces a new Asset Filter to be created.

presentationTimeRange AssetFilterPresentationTimeRangeArgs

A presentation_time_range block as defined below.

trackSelections AssetFilterTrackSelectionArgs[]

One or more track_selection blocks as defined below.

asset_id str

The Asset ID for which the Asset Filter should be created. Changing this forces a new Asset Filter to be created.

first_quality_bitrate int

The first quality bitrate. Sets the first video track to appear in the Live Streaming playlist to allow HLS native players to start downloading from this quality level at the beginning.

name str

The name which should be used for this Asset Filter. Changing this forces a new Asset Filter to be created.

presentation_time_range AssetFilterPresentationTimeRangeArgs

A presentation_time_range block as defined below.

track_selections Sequence[AssetFilterTrackSelectionArgs]

One or more track_selection blocks as defined below.

assetId String

The Asset ID for which the Asset Filter should be created. Changing this forces a new Asset Filter to be created.

firstQualityBitrate Number

The first quality bitrate. Sets the first video track to appear in the Live Streaming playlist to allow HLS native players to start downloading from this quality level at the beginning.

name String

The name which should be used for this Asset Filter. Changing this forces a new Asset Filter to be created.

presentationTimeRange Property Map

A presentation_time_range block as defined below.

trackSelections List<Property Map>

One or more track_selection blocks as defined below.

Supporting Types

AssetFilterPresentationTimeRange

EndInUnits int

The absolute end time boundary. Applies to Video on Demand (VoD). For the Live Streaming presentation, it is silently ignored and applied when the presentation ends and the stream becomes VoD. This is a long value that represents an absolute end point of the presentation, rounded to the closest next GOP start. The unit is defined by unit_timescale_in_miliseconds, so an end_in_units of 180 would be for 3 minutes. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_miliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest.

ForceEnd bool

Indicates whether the end_in_units property must be present. If true, end_in_units must be specified or a bad request code is returned. Applies to Live Streaming only. Allowed values: false, true.

LiveBackoffInUnits int

The relative to end right edge. Applies to Live Streaming only. This value defines the latest live position that a client can seek to. Using this property, you can delay live playback position and create a server-side buffer for players. The unit is defined by unit_timescale_in_miliseconds. The maximum live back off duration is 300 seconds. For example, a value of 20 means that the latest available content is 20 seconds delayed from the real live edge.

PresentationWindowInUnits int

The relative to end sliding window. Applies to Live Streaming only. Use presentation_window_in_units to apply a sliding window of fragments to include in a playlist. The unit is defined by unit_timescale_in_miliseconds. For example, set presentation_window_in_units to 120 to apply a two-minute sliding window. Media within 2 minutes of the live edge will be included in the playlist. If a fragment straddles the boundary, the entire fragment will be included in the playlist. The minimum presentation window duration is 60 seconds.

StartInUnits int

The absolute start time boundary. Applies to Video on Demand (VoD) or Live Streaming. This is a long value that represents an absolute start point of the stream. The value gets rounded to the closest next GOP start. The unit is defined by unit_timescale_in_miliseconds, so a start_in_units of 15 would be for 15 seconds. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_miliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest.

UnitTimescaleInMiliseconds int

Specified as the number of miliseconds in one unit timescale. For example, if you want to set a start_in_units at 30 seconds, you would use a value of 30 when using the unit_timescale_in_miliseconds in 1000. Or if you want to set start_in_units in 30 miliseconds, you would use a value of 30 when using the unit_timescale_in_miliseconds in 1. Applies timescale to start_in_units, start_timescale and presentation_window_in_timescale and live_backoff_in_timescale.

EndInUnits int

The absolute end time boundary. Applies to Video on Demand (VoD). For the Live Streaming presentation, it is silently ignored and applied when the presentation ends and the stream becomes VoD. This is a long value that represents an absolute end point of the presentation, rounded to the closest next GOP start. The unit is defined by unit_timescale_in_miliseconds, so an end_in_units of 180 would be for 3 minutes. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_miliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest.

ForceEnd bool

Indicates whether the end_in_units property must be present. If true, end_in_units must be specified or a bad request code is returned. Applies to Live Streaming only. Allowed values: false, true.

LiveBackoffInUnits int

The relative to end right edge. Applies to Live Streaming only. This value defines the latest live position that a client can seek to. Using this property, you can delay live playback position and create a server-side buffer for players. The unit is defined by unit_timescale_in_miliseconds. The maximum live back off duration is 300 seconds. For example, a value of 20 means that the latest available content is 20 seconds delayed from the real live edge.

PresentationWindowInUnits int

The relative to end sliding window. Applies to Live Streaming only. Use presentation_window_in_units to apply a sliding window of fragments to include in a playlist. The unit is defined by unit_timescale_in_miliseconds. For example, set presentation_window_in_units to 120 to apply a two-minute sliding window. Media within 2 minutes of the live edge will be included in the playlist. If a fragment straddles the boundary, the entire fragment will be included in the playlist. The minimum presentation window duration is 60 seconds.

StartInUnits int

The absolute start time boundary. Applies to Video on Demand (VoD) or Live Streaming. This is a long value that represents an absolute start point of the stream. The value gets rounded to the closest next GOP start. The unit is defined by unit_timescale_in_miliseconds, so a start_in_units of 15 would be for 15 seconds. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_miliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest.

UnitTimescaleInMiliseconds int

Specified as the number of miliseconds in one unit timescale. For example, if you want to set a start_in_units at 30 seconds, you would use a value of 30 when using the unit_timescale_in_miliseconds in 1000. Or if you want to set start_in_units in 30 miliseconds, you would use a value of 30 when using the unit_timescale_in_miliseconds in 1. Applies timescale to start_in_units, start_timescale and presentation_window_in_timescale and live_backoff_in_timescale.

endInUnits Integer

The absolute end time boundary. Applies to Video on Demand (VoD). For the Live Streaming presentation, it is silently ignored and applied when the presentation ends and the stream becomes VoD. This is a long value that represents an absolute end point of the presentation, rounded to the closest next GOP start. The unit is defined by unit_timescale_in_miliseconds, so an end_in_units of 180 would be for 3 minutes. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_miliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest.

forceEnd Boolean

Indicates whether the end_in_units property must be present. If true, end_in_units must be specified or a bad request code is returned. Applies to Live Streaming only. Allowed values: false, true.

liveBackoffInUnits Integer

The relative to end right edge. Applies to Live Streaming only. This value defines the latest live position that a client can seek to. Using this property, you can delay live playback position and create a server-side buffer for players. The unit is defined by unit_timescale_in_miliseconds. The maximum live back off duration is 300 seconds. For example, a value of 20 means that the latest available content is 20 seconds delayed from the real live edge.

presentationWindowInUnits Integer

The relative to end sliding window. Applies to Live Streaming only. Use presentation_window_in_units to apply a sliding window of fragments to include in a playlist. The unit is defined by unit_timescale_in_miliseconds. For example, set presentation_window_in_units to 120 to apply a two-minute sliding window. Media within 2 minutes of the live edge will be included in the playlist. If a fragment straddles the boundary, the entire fragment will be included in the playlist. The minimum presentation window duration is 60 seconds.

startInUnits Integer

The absolute start time boundary. Applies to Video on Demand (VoD) or Live Streaming. This is a long value that represents an absolute start point of the stream. The value gets rounded to the closest next GOP start. The unit is defined by unit_timescale_in_miliseconds, so a start_in_units of 15 would be for 15 seconds. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_miliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest.

unitTimescaleInMiliseconds Integer

Specified as the number of miliseconds in one unit timescale. For example, if you want to set a start_in_units at 30 seconds, you would use a value of 30 when using the unit_timescale_in_miliseconds in 1000. Or if you want to set start_in_units in 30 miliseconds, you would use a value of 30 when using the unit_timescale_in_miliseconds in 1. Applies timescale to start_in_units, start_timescale and presentation_window_in_timescale and live_backoff_in_timescale.

endInUnits number

The absolute end time boundary. Applies to Video on Demand (VoD). For the Live Streaming presentation, it is silently ignored and applied when the presentation ends and the stream becomes VoD. This is a long value that represents an absolute end point of the presentation, rounded to the closest next GOP start. The unit is defined by unit_timescale_in_miliseconds, so an end_in_units of 180 would be for 3 minutes. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_miliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest.

forceEnd boolean

Indicates whether the end_in_units property must be present. If true, end_in_units must be specified or a bad request code is returned. Applies to Live Streaming only. Allowed values: false, true.

liveBackoffInUnits number

The relative to end right edge. Applies to Live Streaming only. This value defines the latest live position that a client can seek to. Using this property, you can delay live playback position and create a server-side buffer for players. The unit is defined by unit_timescale_in_miliseconds. The maximum live back off duration is 300 seconds. For example, a value of 20 means that the latest available content is 20 seconds delayed from the real live edge.

presentationWindowInUnits number

The relative to end sliding window. Applies to Live Streaming only. Use presentation_window_in_units to apply a sliding window of fragments to include in a playlist. The unit is defined by unit_timescale_in_miliseconds. For example, set presentation_window_in_units to 120 to apply a two-minute sliding window. Media within 2 minutes of the live edge will be included in the playlist. If a fragment straddles the boundary, the entire fragment will be included in the playlist. The minimum presentation window duration is 60 seconds.

startInUnits number

The absolute start time boundary. Applies to Video on Demand (VoD) or Live Streaming. This is a long value that represents an absolute start point of the stream. The value gets rounded to the closest next GOP start. The unit is defined by unit_timescale_in_miliseconds, so a start_in_units of 15 would be for 15 seconds. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_miliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest.

unitTimescaleInMiliseconds number

Specified as the number of miliseconds in one unit timescale. For example, if you want to set a start_in_units at 30 seconds, you would use a value of 30 when using the unit_timescale_in_miliseconds in 1000. Or if you want to set start_in_units in 30 miliseconds, you would use a value of 30 when using the unit_timescale_in_miliseconds in 1. Applies timescale to start_in_units, start_timescale and presentation_window_in_timescale and live_backoff_in_timescale.

end_in_units int

The absolute end time boundary. Applies to Video on Demand (VoD). For the Live Streaming presentation, it is silently ignored and applied when the presentation ends and the stream becomes VoD. This is a long value that represents an absolute end point of the presentation, rounded to the closest next GOP start. The unit is defined by unit_timescale_in_miliseconds, so an end_in_units of 180 would be for 3 minutes. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_miliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest.

force_end bool

Indicates whether the end_in_units property must be present. If true, end_in_units must be specified or a bad request code is returned. Applies to Live Streaming only. Allowed values: false, true.

live_backoff_in_units int

The relative to end right edge. Applies to Live Streaming only. This value defines the latest live position that a client can seek to. Using this property, you can delay live playback position and create a server-side buffer for players. The unit is defined by unit_timescale_in_miliseconds. The maximum live back off duration is 300 seconds. For example, a value of 20 means that the latest available content is 20 seconds delayed from the real live edge.

presentation_window_in_units int

The relative to end sliding window. Applies to Live Streaming only. Use presentation_window_in_units to apply a sliding window of fragments to include in a playlist. The unit is defined by unit_timescale_in_miliseconds. For example, set presentation_window_in_units to 120 to apply a two-minute sliding window. Media within 2 minutes of the live edge will be included in the playlist. If a fragment straddles the boundary, the entire fragment will be included in the playlist. The minimum presentation window duration is 60 seconds.

start_in_units int

The absolute start time boundary. Applies to Video on Demand (VoD) or Live Streaming. This is a long value that represents an absolute start point of the stream. The value gets rounded to the closest next GOP start. The unit is defined by unit_timescale_in_miliseconds, so a start_in_units of 15 would be for 15 seconds. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_miliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest.

unit_timescale_in_miliseconds int

Specified as the number of miliseconds in one unit timescale. For example, if you want to set a start_in_units at 30 seconds, you would use a value of 30 when using the unit_timescale_in_miliseconds in 1000. Or if you want to set start_in_units in 30 miliseconds, you would use a value of 30 when using the unit_timescale_in_miliseconds in 1. Applies timescale to start_in_units, start_timescale and presentation_window_in_timescale and live_backoff_in_timescale.

endInUnits Number

The absolute end time boundary. Applies to Video on Demand (VoD). For the Live Streaming presentation, it is silently ignored and applied when the presentation ends and the stream becomes VoD. This is a long value that represents an absolute end point of the presentation, rounded to the closest next GOP start. The unit is defined by unit_timescale_in_miliseconds, so an end_in_units of 180 would be for 3 minutes. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_miliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest.

forceEnd Boolean

Indicates whether the end_in_units property must be present. If true, end_in_units must be specified or a bad request code is returned. Applies to Live Streaming only. Allowed values: false, true.

liveBackoffInUnits Number

The relative to end right edge. Applies to Live Streaming only. This value defines the latest live position that a client can seek to. Using this property, you can delay live playback position and create a server-side buffer for players. The unit is defined by unit_timescale_in_miliseconds. The maximum live back off duration is 300 seconds. For example, a value of 20 means that the latest available content is 20 seconds delayed from the real live edge.

presentationWindowInUnits Number

The relative to end sliding window. Applies to Live Streaming only. Use presentation_window_in_units to apply a sliding window of fragments to include in a playlist. The unit is defined by unit_timescale_in_miliseconds. For example, set presentation_window_in_units to 120 to apply a two-minute sliding window. Media within 2 minutes of the live edge will be included in the playlist. If a fragment straddles the boundary, the entire fragment will be included in the playlist. The minimum presentation window duration is 60 seconds.

startInUnits Number

The absolute start time boundary. Applies to Video on Demand (VoD) or Live Streaming. This is a long value that represents an absolute start point of the stream. The value gets rounded to the closest next GOP start. The unit is defined by unit_timescale_in_miliseconds, so a start_in_units of 15 would be for 15 seconds. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_miliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest.

unitTimescaleInMiliseconds Number

Specified as the number of miliseconds in one unit timescale. For example, if you want to set a start_in_units at 30 seconds, you would use a value of 30 when using the unit_timescale_in_miliseconds in 1000. Or if you want to set start_in_units in 30 miliseconds, you would use a value of 30 when using the unit_timescale_in_miliseconds in 1. Applies timescale to start_in_units, start_timescale and presentation_window_in_timescale and live_backoff_in_timescale.

AssetFilterTrackSelection

Conditions List<AssetFilterTrackSelectionCondition>

One or more condition blocks as defined above.

Conditions []AssetFilterTrackSelectionCondition

One or more condition blocks as defined above.

conditions List<AssetFilterTrackSelectionCondition>

One or more condition blocks as defined above.

conditions AssetFilterTrackSelectionCondition[]

One or more condition blocks as defined above.

conditions Sequence[AssetFilterTrackSelectionCondition]

One or more condition blocks as defined above.

conditions List<Property Map>

One or more condition blocks as defined above.

AssetFilterTrackSelectionCondition

Operation string

The condition operation to test a track property against. Supported values are Equal and NotEqual.

Property string

The track property to compare. Supported values are Bitrate, FourCC, Language, Name and Type. Check documentation for more details.

Value string

The track property value to match or not match.

Operation string

The condition operation to test a track property against. Supported values are Equal and NotEqual.

Property string

The track property to compare. Supported values are Bitrate, FourCC, Language, Name and Type. Check documentation for more details.

Value string

The track property value to match or not match.

operation String

The condition operation to test a track property against. Supported values are Equal and NotEqual.

property String

The track property to compare. Supported values are Bitrate, FourCC, Language, Name and Type. Check documentation for more details.

value String

The track property value to match or not match.

operation string

The condition operation to test a track property against. Supported values are Equal and NotEqual.

property string

The track property to compare. Supported values are Bitrate, FourCC, Language, Name and Type. Check documentation for more details.

value string

The track property value to match or not match.

operation str

The condition operation to test a track property against. Supported values are Equal and NotEqual.

property str

The track property to compare. Supported values are Bitrate, FourCC, Language, Name and Type. Check documentation for more details.

value str

The track property value to match or not match.

operation String

The condition operation to test a track property against. Supported values are Equal and NotEqual.

property String

The track property to compare. Supported values are Bitrate, FourCC, Language, Name and Type. Check documentation for more details.

value String

The track property value to match or not match.

Import

Asset Filters can be imported using the resource id, e.g.

 $ pulumi import azure:media/assetFilter:AssetFilter example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Media/mediaservices/account1/assets/asset1/assetFilters/filter1

Package Details

Repository
https://github.com/pulumi/pulumi-azure
License
Apache-2.0
Notes

This Pulumi package is based on the azurerm Terraform Provider.