public static PIffTrackMediaInfo CreateAudio( PiffAudioManifest audio, DateTime created, long duration, int timeScale, Guid keyId) { return(new PIffTrackMediaInfo( new PiffMediaHeader(created, duration, timeScale), new PiffHandlerType(PiffTrackTypes.Audio), PiffMediaInformation.CreateAudio(audio, keyId))); }
public PiffProtectedAudioSampleEntry(PiffAudioManifest audio, Guid keyId) { if (audio.Channels != 2) { throw new ArgumentException("AudioSampleEntry must have 2 channels."); } if (audio.CodecId != "AACL") { throw new ArgumentException($"Cannot process codec '{audio.CodecId}', only 'AACL' is supported."); } ChannelCount = audio.Channels; SampleSize = audio.BitsPerSample; SampleRate = ((uint)audio.SamplingRate) << 16; Scheme = PiffProtectionSchemeInformation.CreateAudio(audio.CodecId, keyId); StreamDescription = PiffElementaryStreamDescription.Create( audio.CodecId, 0, audio.BitRate, BufferSize, audio.CodecData); }
public static PiffMediaInformation CreateAudio(PiffAudioManifest audio, Guid keyId) { return(new PiffMediaInformation(new PiffSoundMediaHeader(), null, PiffSampleTable.CreateAudio(audio, keyId))); }
public static PiffTrack CreateAudio( int trackId, PiffAudioManifest audio, DateTime created, int timeScale, Guid keyId) { return(new PiffTrack(PiffTrackHeader.CreateAudio(trackId, created, audio.Duration), PIffTrackMediaInfo.CreateAudio(audio, created, audio.Duration, timeScale, keyId))); }
public static PiffSampleTable CreateAudio(PiffAudioManifest audio, Guid keyId) { return(new PiffSampleTable(PiffSampleDescription.CreateAudio(audio, keyId))); }
public static PiffSampleDescription CreateAudio(PiffAudioManifest audio, Guid keyId) { return(new PiffSampleDescription( new PiffProtectedAudioSampleEntry(audio, keyId), null)); }