Пример #1
0
        //<SnippetGetMediaEncodingProfile>
        public MediaEncodingProfile CreateProfileForTranscoder(VideoStreamDescriptor videoStream1, VideoStreamDescriptor videoStream2, AudioStreamDescriptor audioStream, TimedMetadataStreamDescriptor timedMetadataStream)
        {
            ContainerEncodingProperties container = new ContainerEncodingProperties()
            {
                Subtype = MediaEncodingSubtypes.Mpeg4
            };

            MediaEncodingProfile profile = new MediaEncodingProfile()
            {
                Container = container
            };


            VideoStreamDescriptor encodingVideoStream1 = videoStream1.Copy();

            encodingVideoStream1.EncodingProperties.Subtype = MediaEncodingSubtypes.H264;
            encodingVideoStream1.Label = videoStream1.Name;

            VideoStreamDescriptor encodingVideoStream2 = videoStream2.Copy();

            encodingVideoStream2.EncodingProperties.Subtype = MediaEncodingSubtypes.H264;
            encodingVideoStream2.Label = videoStream2.Name;

            AudioStreamDescriptor encodingAudioStream = audioStream.Copy();

            encodingAudioStream.EncodingProperties.Subtype = MediaEncodingSubtypes.Ac3;
            encodingAudioStream.Label = audioStream.Name;

            TimedMetadataStreamDescriptor encodingTimedMetadataStream = timedMetadataStream.Copy();

            profile.SetTimedMetadataTracks(new TimedMetadataStreamDescriptor[] { encodingTimedMetadataStream });
            profile.SetVideoTracks(new VideoStreamDescriptor[] { encodingVideoStream1, encodingVideoStream2 });
            profile.SetAudioTracks(new AudioStreamDescriptor[] { encodingAudioStream });
            return(profile);
        }