Indexering mediefiler med Azure Media indexerarenIndexing Media Files with Azure Media Indexer

Azure Media Indexer gör det möjligt att göra innehåll för mediefiler sökbara och för att generera en fulltext betyg för stängd textning och nyckelord.Azure Media Indexer enables you to make content of your media files searchable and to generate a full-text transcript for closed captioning and keywords. Du kan bearbeta en mediefil eller flera mediefiler i en batch.You can process one media file or multiple media files in a batch.

Viktigt

När indexering av innehåll, se till att använda mediefiler med tydliga tal (utan bakgrundsmusik, ljud, effekter eller mikrofon hiss).When indexing content, make sure to use media files that have clear speech (without background music, noise, effects, or microphone hiss). Några exempel på rätt innehåll är: registreras möten, Föreläsningar och presentationer.Some examples of appropriate content are: recorded meetings, lectures, or presentations. Följande innehåll är inte lämpliga för indexering: filmer, TV-program, allt med blandade ljud och visuella effekter dåligt registreras innehåll med bakgrundsljud (hiss).The following content might not be suitable for indexing: movies, TV shows, anything with mixed audio and sound effects, poorly recorded content with background noise (hiss).

En indexering jobb kan generera följande utdata:An indexing job can generate the following outputs:

  • Stängd bildtexten filer i följande format: SAMI, TTML, och WebVTT.Closed caption files in the following formats: SAMI, TTML, and WebVTT.

    Dold textning filer innehåller en tagg som kallas Recognizability, vilka resultat som en indexering jobb baserat på hur okänt tal i videon källa.Closed caption files include a tag called Recognizability, which scores an indexing job based on how recognizable the speech in the source video is. Du kan använda värdet för Recognizability skärmen användbarhet utgående filer.You can use the value of Recognizability to screen output files for usability. En låg poäng betyder dåliga indexering resultat på grund av ljud.A low score would mean poor indexing results due to audio quality.

  • Nyckelordsfil (XML).Keyword file (XML).
  • Ljud indexering blob-fil (AIB) för användning med SQLServer.Audio indexing blob file (AIB) for use with SQL server.

    Mer information finns i med AIB filer med Azure Media Indexer och SQL Server.For more information, see Using AIB Files with Azure Media Indexer and SQL Server.

Den här artikeln visar hur du skapar indexering jobb till Index för en tillgång och flera indexfiler.This article shows how to create indexing jobs to Index an asset and Index multiple files.

De senaste uppdateringarna för Azure Media Indexer, se Media Services bloggar.For the latest Azure Media Indexer updates, see Media Services blogs.

Med hjälp av konfigurations-och manifest för indexering uppgifterUsing configuration and manifest files for indexing tasks

Du kan ange mer information för dina indexering aktiviteter med hjälp av en konfiguration för aktiviteten.You can specify more details for your indexing tasks by using a task configuration. Du kan till exempel ange vilka metadata för media-fil.For example, you can specify which metadata to use for your media file. Dessa metadata används av motorn språk för att expandera dess ordförråd och förbättrar avsevärt taligenkänningen.This metadata is used by the language engine to expand its vocabulary, and greatly improves the speech recognition accuracy. Du kan också ange de önskade utgående filerna.You are also able to specify your desired output files.

Du kan också bearbeta flera filer samtidigt med hjälp av en manifestfil.You can also process multiple media files at once by using a manifest file.

Mer information finns i aktivitet förinställningen Azure Media indexer.For more information, see Task Preset for Azure Media Indexer.

Index för en tillgångIndex an asset

Följande metod överför en mediefil som en tillgång och skapar ett jobb för att indexera tillgången.The following method uploads a media file as an asset and creates a job to index the asset.

Om ingen konfigurationsfil anges indexeras mediefilen med alla standardinställningar.If no configuration file is specified, the media file is indexed with all default settings.

    static bool RunIndexingJob(string inputMediaFilePath, string outputFolder, string configurationFile = "")
    {
        // Create an asset and upload the input media file to storage.
        IAsset asset = CreateAssetAndUploadSingleFile(inputMediaFilePath,
            "My Indexing Input Asset",
            AssetCreationOptions.None);

        // Declare a new job.
        IJob job = _context.Jobs.Create("My Indexing Job");

        // Get a reference to the Azure Media Indexer.
        string MediaProcessorName = "Azure Media Indexer";
        IMediaProcessor processor = GetLatestMediaProcessorByName(MediaProcessorName);

        // Read configuration from file if specified.
        string configuration = string.IsNullOrEmpty(configurationFile) ? "" : File.ReadAllText(configurationFile);

        // Create a task with the encoding details, using a string preset.
        ITask task = job.Tasks.AddNew("My Indexing Task",
            processor,
            configuration,
            TaskOptions.None);

        // Specify the input asset to be indexed.
        task.InputAssets.Add(asset);

        // Add an output asset to contain the results of the job.
        task.OutputAssets.AddNew("My Indexing Output Asset", AssetCreationOptions.None);

        // Use the following event handler to check job progress.  
        job.StateChanged += new EventHandler<JobStateChangedEventArgs>(StateChanged);

        // Launch the job.
        job.Submit();

        // Check job execution and wait for job to finish.
        Task progressJobTask = job.GetExecutionProgressTask(CancellationToken.None);
        progressJobTask.Wait();

        // If job state is Error, the event handling
        // method for job progress should log errors.  Here we check
        // for error state and exit if needed.
        if (job.State == JobState.Error)
        {
            Console.WriteLine("Exiting method due to job error.");
            return false;
        }

        // Download the job outputs.
        DownloadAsset(task.OutputAssets.First(), outputFolder);

        return true;
    }

    static IAsset CreateAssetAndUploadSingleFile(string filePath, string assetName, AssetCreationOptions options)
    {
        IAsset asset = _context.Assets.Create(assetName, options);

        var assetFile = asset.AssetFiles.Create(Path.GetFileName(filePath));
        assetFile.Upload(filePath);

        return asset;
    }

    static void DownloadAsset(IAsset asset, string outputDirectory)
    {
        foreach (IAssetFile file in asset.AssetFiles)
        {
            file.Download(Path.Combine(outputDirectory, file.Name));
        }
    }

    static IMediaProcessor GetLatestMediaProcessorByName(string mediaProcessorName)
    {
        var processor = _context.MediaProcessors
        .Where(p => p.Name == mediaProcessorName)
        .ToList()
        .OrderBy(p => new Version(p.Version))
        .LastOrDefault();

        if (processor == null)
            throw new ArgumentException(string.Format("Unknown media processor",
                                                       mediaProcessorName));

        return processor;
    }  

Utgående filerOutput files

En indexering jobbet genererar följande utdatafiler som standard.By default, an indexing job generates the following output files. Filerna lagras i första utdatatillgången.The files are stored in the first output asset.

När det finns fler än en inkommande mediefilen är genererar indexeraren en manifestfil jobbet-utdata med namnet 'JobResult.txt'.When there is more than one input media file, Indexer generates a manifest file for the job outputs, named ‘JobResult.txt’. För varje indata mediefilen är resulterande AIB, SAMI, TTML, WebVTT och nyckelordet filer sekventiellt numrerade och namnges med ”Alias”.For each input media file, the resulting AIB, SAMI, TTML, WebVTT, and keyword files, are sequentially numbered and named using the "Alias."

FilnamnFile name BeskrivningDescription
InputFileName.aibInputFileName.aib Ljud indexering blob-fil.Audio indexing blob file.

Ljudfilen indexering Blob (AIB) är en binär fil som kan sökas i Microsoft SQL server med fulltextsökning.Audio Indexing Blob (AIB) file is a binary file that can be searched in Microsoft SQL server using full text search. Filen AIB är mer kraftfulla än enkel etikett-filer eftersom den innehåller alternativ för varje ord, så att en mycket rikare upplevelse för sökning.The AIB file is more powerful than the simple caption files, because it contains alternatives for each word, allowing a much richer search experience.

Det kräver installation av indexerare SQL-tillägg på en dator kör Microsoft SQL server 2008 eller senare.It requires the installation of the Indexer SQL add-on on a machine running Microsoft SQL server 2008 or later. Söker AIB med hjälp av Microsoft SQL ger server-fulltextsökning exaktare sökresultat än textning filer som skapas av WAMI.Searching the AIB using Microsoft SQL server full text search provides more accurate search results than searching the closed caption files generated by WAMI. Det beror på att AIB innehåller word-alternativ som låter textning filer innehåller högsta förtroende ordet för varje segment i ljuduppspelningen.This is because the AIB contains word alternatives that sound similar whereas the closed caption files contain the highest confidence word for each segment of the audio. Om söker efter tal upmost betydelse, rekommenderas det att använda AIB i-tillsammans med Microsoft SQL Server.If searching for spoken words is of upmost importance, then it is recommended to use the AIB In conjunction with Microsoft SQL Server.

Hämta tillägget Klicka Azure Media Indexer SQL tillägget.To download the add-on, click Azure Media Indexer SQL Add-on.

Det är också möjligt att använda andra sökmotorer, till exempel Apache Lucene/Solr att helt enkelt indexera videon baserat på textning och nyckelordet XML-filer, men detta resulterar i mindre exakt sökresultat.It is also possible to utilize other search engines such as Apache Lucene/Solr to simply index the video based on the closed caption and keyword XML files, but this will result in less accurate search results.
InputFileName.smiInputFileName.smi
InputFileName.ttmlInputFileName.ttml
InputFileName.vttInputFileName.vtt
Stängd beskrivning (CC) filer i SAMI, TTML och WebVTT format.Closed Caption (CC) files in SAMI, TTML, and WebVTT formats.

De kan användas för att göra det tillgängligt för personer med funktionshinder hörsel ljud- och bildfiler.They can be used to make audio and video files accessible to people with hearing disability.

Stängd bildtexten filer innehåller en tagg som kallas Recognizability som poäng en indexering jobb baserat på hur okänt tal i videon källa.Closed Caption files include a tag called Recognizability which scores an indexing job based on how recognizable the speech in the source video is. Du kan använda värdet för Recognizability skärmen användbarhet utgående filer.You can use the value of Recognizability to screen output files for usability. En låg poäng betyder dåliga indexering resultat på grund av ljud.A low score would mean poor indexing results due to audio quality.
InputFileName.kw.xml
InputFileName.info
InputFileName.kw.xml
InputFileName.info
Information om nyckelord och filer.Keyword and info files.

Nyckelordet filen är en XML-fil som innehåller nyckelord som extraheras från tal-innehåll med frekvens och offset-information.Keyword file is an XML file that contains keywords extracted from the speech content, with frequency and offset information.

Information om filen är en oformaterad textfil som innehåller detaljerad information om varje term som identifieras.Info file is a plain-text file that contains granular information about each term recognized. Den första raden är speciellt och innehåller Recognizability poäng.The first line is special and contains the Recognizability score. Varje efterföljande rad är en lista med tabbavgränsade följande data: starta tid, sluttid, /-fras, förtroende.Each subsequent line is a tab-separated list of the following data: start time, end time, word/phrase, confidence. Vilka tider som anges i sekunder och förtroende ges som ett tal mellan 0-1.The times are given in seconds and the confidence is given as a number from 0-1.

Exempel rad: ”1,20 1,45 word 0.67”Example line: "1.20 1.45 word 0.67"

Dessa filer kan används för flera olika skäl, t.ex, att utföra taligenkänning analytics eller utsatta för sökmotorer t.ex. Bing, Google eller Microsoft SharePoint för att göra mediefiler mer synliga eller även används för att leverera mer relevant annonser.These files can be used for a number of purposes, such as, to perform speech analytics, or exposed to search engines such as Bing, Google or Microsoft SharePoint to make the media files more discoverable, or even used to deliver more relevant ads.
JobResult.txtJobResult.txt Utdata manifestet, visas bara om indexering flera filer, som innehåller följande information:Output manifest, present only when indexing multiple files, containing the following information:

IndatafilInputFileAliasAliasMediaLengthMediaLengthFelError
a.mp4a.mp4Media_1Media_130030000
b.mp4b.mp4Media_2Media_20030003000
c.mp4c.mp4Media_3Media_360060000

Om inte alla inkommande mediefiler indexeras har, indexering jobbet misslyckas med felkoden 4000.If not all input media files are indexed successfully, the indexing job fails with error code 4000. Mer information finns i felkoder.For more information, see Error codes.

Index flera filerIndex multiple files

Följande metod överför flera mediefiler som en tillgång och skapar ett jobb för att indexera dessa filer i en batch.The following method uploads multiple media files as an asset, and creates a job to index all these files in a batch.

Manifestfilen med tillägget ”.lst” har skapats och ladda upp till tillgången.A manifest file with the ".lst" extension is created and uploading into the asset. Manifestfilen innehåller listan över alla tillgångsfiler som.The manifest file contains the list of all the asset files. Mer information finns i aktivitet förinställningen Azure Media indexer.For more information, see Task Preset for Azure Media Indexer.

    static bool RunBatchIndexingJob(string[] inputMediaFiles, string outputFolder)
    {
        // Create an asset and upload to storage.
        IAsset asset = CreateAssetAndUploadMultipleFiles(inputMediaFiles,
            "My Indexing Input Asset - Batch Mode",
            AssetCreationOptions.None);

        // Create a manifest file that contains all the asset file names and upload to storage.
        string manifestFile = "input.lst";            
        File.WriteAllLines(manifestFile, asset.AssetFiles.Select(f => f.Name).ToArray());
        var assetFile = asset.AssetFiles.Create(Path.GetFileName(manifestFile));
        assetFile.Upload(manifestFile);

        // Declare a new job.
        IJob job = _context.Jobs.Create("My Indexing Job - Batch Mode");

        // Get a reference to the Azure Media Indexer.
        string MediaProcessorName = "Azure Media Indexer";
        IMediaProcessor processor = GetLatestMediaProcessorByName(MediaProcessorName);

        // Read configuration.
        string configuration = File.ReadAllText("batch.config");

        // Create a task with the encoding details, using a string preset.
        ITask task = job.Tasks.AddNew("My Indexing Task - Batch Mode",
            processor,
            configuration,
            TaskOptions.None);

        // Specify the input asset to be indexed.
        task.InputAssets.Add(asset);

        // Add an output asset to contain the results of the job.
        task.OutputAssets.AddNew("My Indexing Output Asset - Batch Mode", AssetCreationOptions.None);

        // Use the following event handler to check job progress.  
        job.StateChanged += new EventHandler<JobStateChangedEventArgs>(StateChanged);

        // Launch the job.
        job.Submit();

        // Check job execution and wait for job to finish.
        Task progressJobTask = job.GetExecutionProgressTask(CancellationToken.None);
        progressJobTask.Wait();

        // If job state is Error, the event handling
        // method for job progress should log errors.  Here we check
        // for error state and exit if needed.
        if (job.State == JobState.Error)
        {
            Console.WriteLine("Exiting method due to job error.");
            return false;
        }

        // Download the job outputs.
        DownloadAsset(task.OutputAssets.First(), outputFolder);

        return true;
    }

    private static IAsset CreateAssetAndUploadMultipleFiles(string[] filePaths, string assetName, AssetCreationOptions options)
    {
        IAsset asset = _context.Assets.Create(assetName, options);

        foreach (string filePath in filePaths)
        {
            var assetFile = asset.AssetFiles.Create(Path.GetFileName(filePath));
            assetFile.Upload(filePath);
        }

        return asset;
    }

Delvis har slutförts jobbPartially Succeeded Job

Om inte alla inkommande mediefiler indexeras har, indexering jobbet misslyckas med felkoden 4000.If not all input media files are indexed successfully, the indexing job will fail with error code 4000. Mer information finns i felkoder.For more information, see Error codes.

Samma utdata (som har slutförts jobb) genereras.The same outputs (as succeeded jobs) are generated. Du kan referera till utdata manifestfilen ta reda på vilka indatafiler misslyckades, enligt kolumnvärdena fel.You can refer to the output manifest file to find out which input files are failed, according to the Error column values. För inkommande filer som har misslyckats, resulterande AIB, SAMI, TTML, WebVTT och nyckelordet genereras inte filer.For input files that failed, the resulting AIB, SAMI, TTML, WebVTT and keyword files will NOT be generated.

Uppgiften förinställda Azure Media indexerTask Preset for Azure Media Indexer

Bearbetningen från Azure Media Indexer kan anpassas genom att tillhandahålla en frivillig uppgift förinställningen tillsammans med uppgiften.The processing from Azure Media Indexer can be customized by providing an optional task preset alongside the task. Följande beskriver formatet för den här xml-konfigurationsfilen.The following describes the format of this configuration xml.

NamnName KrävRequire BeskrivningDescription
Indatainput falsefalse Tillgångsinformation fil(er) som du vill index.Asset file(s) that you want to index.

Azure Media Indexer stöder följande media format: MP4, WMV, MP3, M4A, WMA, AAC, WAV.Azure Media Indexer supports the following media file formats: MP4, WMV, MP3, M4A, WMA, AAC, WAV.

Du kan ange filnamnet (s) i den namn eller lista attribut för den inkommande element (som visas nedan). Om du inte anger vilken tillgångsfil som till index hämtas den primära filen.You can specify the file name (s) in the name or list attribute of the input element (as shown below).If you do not specify which asset file to index, the primary file is picked. Om inga primära resursfilen anges indexeras den första filen i den inkommande tillgången.If no primary asset file is set, the first file in the input asset is indexed.

Gör att explicit ange filnamnet för tillgångsinformation:To explicitly specify the asset file name, do:
<input name="TestFile.wmv">

Du kan även indexera flera tillgångsfiler på en gång (upp till 10).You can also index multiple asset files at once (up to 10 files). Gör så här:To do this:

  1. Skapa en textfil (manifestfilen) och ge det ett .lst-tillägg.Create a text file (manifest file) and give it an .lst extension.

  2. Lägga till en lista över alla filnamn för tillgångsinformation i din inkommande tillgång till den här manifestfilen.Add a list of all the asset file names in your input asset to this manifest file.

  3. Lägg till (överföringen) thanifest filen till tillgången.Add (upload) thanifest file to the asset.

  4. Ange namnet på manifestfilen i angivna indata-attribut.Specify the name of the manifest file in the input’s list attribute.
    <input list="input.lst">



Obs: Om du lägger till fler än 10 filer manifestfilen indexering jobbet misslyckas med felkoden 2006.Note: If you add more than 10 files to the manifest file, the indexing job will fail with the 2006 error code.
Metadatametadata falsefalse Metadata för den angivna resursen/filerna som används för ordförråd anpassning.Metadata for the specified asset file(s) used for Vocabulary Adaptation. Användbar för att förbereda indexerare för att identifiera standardmässiga ordförråd ord som namn.Useful to prepare Indexer to recognize non-standard vocabulary words such as proper nouns.
<metadata key="..." value="..."/>

Du kan ange värden för fördefinierade nycklar.You can supply values for predefined keys. Följande nycklar stöds för närvarande:Currently the following keys are supported:

”title” och ”beskrivning” - används för ordförråd anpassning för att justera språket modellen för jobbet och förbättra taligenkänningen.“title” and “description” - used for vocabulary adaptation to tweak the language model for your job and improve speech recognition accuracy. Värdena dirigera Internet-sökningar för att hitta sammanhang relevanta textdokument, med hjälp av innehållet för att utöka den interna ordlistan för varaktigheten för indexering-aktivitet.The values seed Internet searches to find contextually relevant text documents, using the contents to augment the internal dictionary for the duration of your Indexing task.
<metadata key="title" value="[Title of the media file]" />
<metadata key="description" value="[Description of the media file] />"
Funktionerfeatures

Lägga till i version 1.2.Added in version 1.2. Den enda funktionen som stöds är för närvarande taligenkänning (”ASR”).Currently, the only supported feature is speech recognition ("ASR").
falsefalse Taligenkänning har följande inställningar för:The Speech Recognition feature has the following settings keys:

NyckelKey

BeskrivningDescription

ExempelvärdeExample value

SpråkLanguage

Naturligt språk ska kunna identifieras i fil.The natural language to be recognized in the multimedia file.

Engelska, spanskaEnglish, Spanish

CaptionFormatsCaptionFormats

en semikolonavgränsad lista önskade bildtexten utdataformat (eventuella)a semicolon-separated list of the desired output caption formats (if any)

ttml;sami;webvttttml;sami;webvtt

GenerateAIBGenerateAIB

En boolesk flagga som anger huruvida en AIB fil krävs (för användning med SQL Server och kunden indexeraren IFilter).A boolean flag specifying whether or not an AIB file is required (for use with SQL Server and the customer Indexer IFilter). Mer information finns i med AIB filer med Azure Media Indexer och SQL Server.For more information, see Using AIB Files with Azure Media Indexer and SQL Server.

SANT. FALSKTTrue; False

GenerateKeywordsGenerateKeywords

En boolesk flagga som anger huruvida en nyckelordet XML-fil måste anges.A boolean flag specifying whether or not a keyword XML file is required.

SANT. FALSKT.True; False.

ForceFullCaptionForceFullCaption

En boolesk flagga som anger om du tvingar fram fullständiga beskrivningar (oavsett konfidensnivån) eller inte.A boolean flag specifying whether or not to force full captions (regardless of confidence level).

Standardvärdet är false, i vilket fall ord och fraser som har mindre än 50% konfidensnivå utelämnas från sista etiketten utdata och ersättas med ellipserna (”...”).Default is false, in which case words and phrases which have a less than 50% confidence level are omitted from the final caption outputs and replaced by ellipses ("..."). Ellipserna är användbara för rubriken kvalitetskontroll och granskning.The ellipses are useful for caption quality control and auditing.

SANT. FALSKT.True; False.

FelkoderError codes

Om ett fel Azure Media Indexer ska rapportera tillbaka något av följande felkoder:In the case of an error, Azure Media Indexer should report back one of the following error codes:

KodCode NamnName Möjliga orsakerPossible Reasons
20002000 Ogiltig konfigurationInvalid configuration Ogiltig konfigurationInvalid configuration
20012001 Ogiltiga indata tillgångarInvalid input assets Saknar indata tillgångar eller tom tillgång.Missing input assets or empty asset.
20022002 Ogiltigt manifestInvalid manifest Manifestet är tom eller manifest innehåller ogiltiga objekt.Manifest is empty or manifest contains invalid items.
20032003 Det gick inte att hämta mediefilFailed to download media file Ogiltig URL i manifestfilen.Invalid URL in manifest file.
20042004 Protokoll som inte stödsUnsupported protocol Protokollet för media URL stöds inte.Protocol of media URL is not supported.
20052005 Filtypen stöds inteUnsupported file type Mediafiltypen stöds inte.Input media file type is not supported.
20062006 För många inkommande filerToo many input files Det finns fler än 10 filer i inkommande manifestet.There are more than 10 files in the input manifest.
30003000 Det gick inte att avkoda mediefilenFailed to decode media file Codec för stöds inteUnsupported media codec
elleror
Skadat mediefilCorrupted media file
elleror
Inga ljudström i mediet.No audio stream in input media.
40004000 Delvis lyckades batch indexeringBatch indexing partially succeeded Några av de inkommande mediefilerna är kunde inte indexeras.Some of the input media files are failed to be indexed. Mer information finns i utdatafiler.For more information, see Output files.
övrigtother Internt felInternal errors Kontakta supportteamet.Please contact support team. indexer@microsoft.comindexer@microsoft.com

Språk som stödsSupported Languages

De engelska och spanska språk stöds för närvarande.Currently, the English and Spanish languages are supported. Mer information finns i version 1.2-versionen blogginlägget.For more information, see the v1.2 release blog post.

Sökvägar för Media Services-utbildningMedia Services learning paths

Läs mer om utbildningsvägar för Azure Media Services:Read about the Azure Media Services learning paths:

Ge feedbackProvide feedback

Använd User Voice-forumet för att ge feedback och förslag på hur Azure Media Services kan förbättras.Use the User Voice forum to provide feedback and make suggestions on how to improve Azure Media Services. Du kan även gå direkt till någon av följande kategorier:You also can go directly to one of the following categories:

Azure Media Services Analytics-översiktAzure Media Services Analytics Overview

Med hjälp av AIB filer med Azure Media Indexer och SQLServerUsing AIB Files with Azure Media Indexer and SQL Server

Indexering mediefiler med Azure Media Indexer 2 förhandsgranskningIndexing Media Files with Azure Media Indexer 2 Preview