MediaBrowser.MediaEncoding
Initializes a new instance of the class.
The .
The .
The .
The .
The .
Class BdInfoDirectoryInfo.
Initializes a new instance of the class.
The filesystem.
The path.
Gets the name.
Gets the full name.
Gets the parent directory information.
Gets the directories.
An array with all directories.
Gets the files.
All files of the directory.
Gets the files matching a pattern.
The search pattern.
All files of the directory matching the search pattern.
Gets the files matching a pattern and search options.
The search pattern.
The search option.
All files of the directory matching the search pattern and options.
Gets the bdinfo of a file system path.
The file system.
The path.
The BD directory information of the path on the file system.
Class BdInfoExaminer.
Initializes a new instance of the class.
The filesystem.
Gets the disc info.
The path.
BlurayDiscInfo.
Adds the video stream.
The streams.
The stream index.
The video stream.
Adds the audio stream.
The streams.
The stream index.
The audio stream.
Adds the subtitle stream.
The streams.
The stream index.
The stream.
Class BdInfoFileInfo.
Initializes a new instance of the class.
The .
Gets the name.
Gets the full name.
Gets the extension.
Gets the length.
Gets a value indicating whether this is a directory.
Gets a file as file stream.
A for the file.
Gets a files's content with a stream reader.
A for the file's content.
Helper class for Apple platform specific operations.
Check if the current system has hardware acceleration for AV1 decoding.
The logger used for error logging.
Boolean indicates the hwaccel support.
Pattern:
^ffmpeg version n?((?:[0-9]+\.?)+)
Explanation:
○ Match if at the beginning of the string.
○ Match the string "ffmpeg version ".
○ Match 'n' atomically, optionally.
○ 1st capture group.
○ Loop atomically at least once.
○ Match a character in the set [0-9] greedily at least once.
○ Match '.' atomically, optionally.
Pattern:
((?<name>lib\w+)\s+(?<major>[0-9]+)\.\s*(?<minor>[0-9]+))
Options:
RegexOptions.Multiline
Explanation:
○ 1st capture group.
○ "name" capture group.
○ Match the string "lib".
○ Match a word character atomically at least once.
○ Match a whitespace character atomically at least once.
○ "major" capture group.
○ Match a character in the set [0-9] atomically at least once.
○ Match '.'.
○ Match a whitespace character atomically any number of times.
○ "minor" capture group.
○ Match a character in the set [0-9] atomically at least once.
Using the output from "ffmpeg -version" work out the FFmpeg version.
For pre-built binaries the first line should contain a string like "ffmpeg version x.y", which is easy
to parse. If this is not available, then we try to match known library versions to FFmpeg versions.
If that fails then we test the libraries to determine if they're newer than our minimum versions.
The output from "ffmpeg -version".
The FFmpeg version.
Grabs the library names and major.minor version numbers from the 'ffmpeg -version' output
and condenses them on to one line. Output format is "name1=major.minor,name2=major.minor,etc.".
The 'ffmpeg -version' output.
The library names and major.minor version numbers.
Pattern:
^\s\S{6}\s(?<codec>[\w|-]+)\s+.+$
Options:
RegexOptions.Multiline
Explanation:
○ Match if at the beginning of a line.
○ Match a whitespace character.
○ Match any character other than a whitespace character exactly 6 times.
○ Match a whitespace character.
○ "codec" capture group.
○ Match a character in the set [\-|\w] greedily at least once.
○ Match a whitespace character greedily at least once.
○ Match a character other than '\n' greedily at least once.
○ Match if at the end of a line.
Pattern:
^\s\S{3}\s(?<filter>[\w|-]+)\s+.+$
Options:
RegexOptions.Multiline
Explanation:
○ Match if at the beginning of a line.
○ Match a whitespace character.
○ Match any character other than a whitespace character exactly 3 times.
○ Match a whitespace character.
○ "filter" capture group.
○ Match a character in the set [\-|\w] greedily at least once.
○ Match a whitespace character greedily at least once.
○ Match a character other than '\n' greedily at least once.
○ Match if at the end of a line.
Gets the concat input argument.
The input files.
The input prefix.
System.String.
Gets the file input argument.
The path.
The path prefix.
System.String.
Normalizes the path.
The path.
System.String.
Class MediaEncoder.
The default SDR image extraction timeout in milliseconds.
The default HDR image extraction timeout in milliseconds.
Pattern:
[^\/\\]+?(\.[^\/\\\n.]+)?$
Explanation:
○ Match a character in the set [^/\\] lazily at least once.
○ Optional (greedy).
○ 1st capture group.
○ Match '.'.
○ Match a character in the set [^\n./\\] atomically at least once.
○ Match if at the end of the string or if before an ending newline.
Run at startup to validate ffmpeg.
Sets global variables FFmpegPath.
Precedence is: CLI/Env var > Config > $PATH.
bool indicates whether a valid ffmpeg is found.
Validates the supplied FQPN to ensure it is a ffmpeg utility.
If checks pass, global variable FFmpegPath is updated.
FQPN to test.
true if the version validation succeeded; otherwise, false.
Gets the media info internal.
Task{MediaInfoResult}.
Releases unmanaged and - optionally - managed resources.
true to release both managed and unmanaged resources; false to release only unmanaged resources.
FFmpeg Codec Type.
Video.
Audio.
Opaque data information usually continuous.
Subtitles.
Opaque data information usually sparse.
Class containing helper methods for working with FFprobe output.
Normalizes the FF probe result.
The result.
Gets an int from an FFProbeResult tags dictionary.
The tags.
The key.
System.Nullable{System.Int32}.
Gets a DateTime from an FFProbeResult tags dictionary.
The tags.
The key.
System.Nullable{DateTime}.
Converts a dictionary to case-insensitive.
The dict.
Dictionary{System.StringSystem.String}.
Class MediaInfoResult.
Gets or sets the streams.
The streams.
Gets or sets the format.
The format.
Gets or sets the chapters.
The chapters.
Gets or sets the frames.
The streams.
Class MediaChapter.
Class MediaFormat.
Gets or sets the filename.
The filename.
Gets or sets the nb_streams.
The nb_streams.
Gets or sets the format_name.
The format_name.
Gets or sets the format_long_name.
The format_long_name.
Gets or sets the start_time.
The start_time.
Gets or sets the duration.
The duration.
Gets or sets the size.
The size.
Gets or sets the bit_rate.
The bit_rate.
Gets or sets the probe_score.
The probe_score.
Gets or sets the tags.
The tags.
Class MediaFrameInfo.
Gets or sets the media type.
Gets or sets the StreamIndex.
Gets or sets the KeyFrame.
Gets or sets the Pts.
Gets or sets the PtsTime.
Gets or sets the BestEffortTimestamp.
Gets or sets the BestEffortTimestampTime.
Gets or sets the Duration.
Gets or sets the DurationTime.
Gets or sets the PktPos.
Gets or sets the PktSize.
Gets or sets the Width.
Gets or sets the Height.
Gets or sets the CropTop.
Gets or sets the CropBottom.
Gets or sets the CropLeft.
Gets or sets the CropRight.
Gets or sets the PixFmt.
Gets or sets the SampleAspectRatio.
Gets or sets the PictType.
Gets or sets the InterlacedFrame.
Gets or sets the TopFieldFirst.
Gets or sets the RepeatPict.
Gets or sets the ColorRange.
Gets or sets the ColorSpace.
Gets or sets the ColorPrimaries.
Gets or sets the ColorTransfer.
Gets or sets the ChromaLocation.
Gets or sets the SideDataList.
Class MediaFrameSideDataInfo.
Currently only records the SideDataType for HDR10+ detection.
Gets or sets the SideDataType.
Represents a stream within the output.
Gets or sets the index.
The index.
Gets or sets the profile.
The profile.
Gets or sets the codec_name.
The codec_name.
Gets or sets the codec_long_name.
The codec_long_name.
Gets or sets the codec_type.
The codec_type.
Gets or sets the sample_rate.
The sample_rate.
Gets or sets the channels.
The channels.
Gets or sets the channel_layout.
The channel_layout.
Gets or sets the avg_frame_rate.
The avg_frame_rate.
Gets or sets the duration.
The duration.
Gets or sets the bit_rate.
The bit_rate.
Gets or sets the width.
The width.
Gets or sets the refs.
The refs.
Gets or sets the height.
The height.
Gets or sets the display_aspect_ratio.
The display_aspect_ratio.
Gets or sets the tags.
The tags.
Gets or sets the bits_per_sample.
The bits_per_sample.
Gets or sets the bits_per_raw_sample.
The bits_per_raw_sample.
Gets or sets the r_frame_rate.
The r_frame_rate.
Gets or sets the has_b_frames.
The has_b_frames.
Gets or sets the sample_aspect_ratio.
The sample_aspect_ratio.
Gets or sets the pix_fmt.
The pix_fmt.
Gets or sets the level.
The level.
Gets or sets the time_base.
The time_base.
Gets or sets the start_time.
The start_time.
Gets or sets the codec_time_base.
The codec_time_base.
Gets or sets the codec_tag.
The codec_tag.
Gets or sets the codec_tag_string.
The codec_tag_string.
Gets or sets the sample_fmt.
The sample_fmt.
Gets or sets the dmix_mode.
The dmix_mode.
Gets or sets the start_pts.
The start_pts.
Gets or sets a value indicating whether the stream is AVC.
The is_avc.
Gets or sets the nal_length_size.
The nal_length_size.
Gets or sets the ltrt_cmixlev.
The ltrt_cmixlev.
Gets or sets the ltrt_surmixlev.
The ltrt_surmixlev.
Gets or sets the loro_cmixlev.
The loro_cmixlev.
Gets or sets the loro_surmixlev.
The loro_surmixlev.
Gets or sets the field_order.
The field_order.
Gets or sets the disposition.
The disposition.
Gets or sets the color range.
The color range.
Gets or sets the color space.
The color space.
Gets or sets the color transfer.
The color transfer.
Gets or sets the color primaries.
The color primaries.
Gets or sets the side_data_list.
The side_data_list.
Class MediaStreamInfoSideData.
Gets or sets the SideDataType.
The SideDataType.
Gets or sets the DvVersionMajor.
The DvVersionMajor.
Gets or sets the DvVersionMinor.
The DvVersionMinor.
Gets or sets the DvProfile.
The DvProfile.
Gets or sets the DvLevel.
The DvLevel.
Gets or sets the RpuPresentFlag.
The RpuPresentFlag.
Gets or sets the ElPresentFlag.
The ElPresentFlag.
Gets or sets the BlPresentFlag.
The BlPresentFlag.
Gets or sets the DvBlSignalCompatibilityId.
The DvBlSignalCompatibilityId.
Gets or sets the Rotation in degrees.
The Rotation.
Class responsible for normalizing FFprobe output.
Initializes a new instance of the class.
The for use with the instance.
The for use with the instance.
Transforms a FFprobe response into its equivalent.
The .
The .
A boolean indicating whether the media is audio.
Path to media file.
Path media protocol.
The .
Converts ffprobe stream info to our MediaAttachment class.
The stream info.
MediaAttachments.
Converts ffprobe stream info to our MediaStream class.
if set to true [is info].
The stream info.
The format info.
The frame info.
MediaStream.
Gets a string from an FFProbeResult tags dictionary.
The tags.
The key.
System.String.
Gets a frame rate from a string value in ffprobe output
This could be a number or in the format of 2997/125.
The value.
System.Nullable{System.Single}.
Splits the specified val.
The val.
if set to true [allow comma delimiter].
System.String[][].
Gets the studios from the tags collection.
The info.
The tags.
Name of the tag.
Gets the genres from the tags collection.
The information.
The tags.
Gets the track or disc number, which can be in the form of '1', or '1/3'.
The tags.
Name of the tag.
The track or disc number, or null, if missing or not parseable.
Pattern:
(?<name>.*) \((?<instrument>.*)\)
Explanation:
○ "name" capture group.
○ Match a character other than '\n' greedily any number of times.
○ Match the string " (".
○ "instrument" capture group.
○ Match a character other than '\n' greedily any number of times.
○ Match ')'.
ASS subtitle writer.
Pattern:
\n
Options:
RegexOptions.IgnoreCase
Explanation:
○ Match '\n'.
Parses the specified stream.
The stream.
The file extension.
SubtitleTrackInfo.
Determines whether the file extension is supported by the parser.
The file extension.
A value indicating whether the file extension is supported.
Interface ISubtitleWriter.
Writes the specified information.
The information.
The stream.
The cancellation token.
JSON subtitle writer.
SRT subtitle writer.
Pattern:
\\n
Options:
RegexOptions.IgnoreCase
Explanation:
○ Match '\\'.
○ Match a character in the set [Nn].
SSA subtitle writer.
Pattern:
\n
Options:
RegexOptions.IgnoreCase
Explanation:
○ Match '\n'.
SubStation Alpha subtitle parser.
Initializes a new instance of the class.
The logger.
The _semaphoreLocks.
Converts the text subtitle to SRT.
The subtitle stream.
The input mediaSource.
The output path.
The cancellation token.
Task.
Converts the text subtitle to SRT internal.
The subtitle stream.
The input mediaSource.
The output path.
The cancellation token.
Task.
The inputPath or outputPath is null.
Extracts the text subtitle.
The mediaSource.
The subtitle stream.
The output codec.
The output path.
The cancellation token.
Task.
Must use inputPath list overload.
Sets the ass font.
The file.
The token to monitor for cancellation requests. The default value is System.Threading.CancellationToken.None.
Task.
Will try to find errors if supported by provider.
The subtitle format.
The out errors value.
True if errors are available for given format.
TTML subtitle writer.
Pattern:
\\n
Options:
RegexOptions.IgnoreCase
Explanation:
○ Match '\\'.
○ Match a character in the set [Nn].
Subtitle writer for the WebVTT format.
Pattern:
\\n
Options:
RegexOptions.IgnoreCase
Explanation:
○ Match '\\'.
○ Match a character in the set [Nn].
Initializes a new instance of the class.
The .
The .
The .
The .
The .
The .
The .
The .
The .
The .
Transcoding lock.
The output path of the transcoded file.
The cancellation token.
An .
Custom -derived type for the FfmpegVersionRegex method.
Cached, thread-safe singleton instance.
Initializes the instance.
Provides a factory for creating instances to be used by methods on .
Creates an instance of a used by methods on .
Provides the runner that contains the custom logic implementing the specified regular expression.
Scan the starting from base.runtextstart for the next match.
The text being scanned by the regular expression.
Search starting from base.runtextpos for the next location a match could possibly start.
The text being scanned by the regular expression.
true if a possible match was found; false if no more matches are possible.
Determine whether at base.runtextpos is a match for the regular expression.
The text being scanned by the regular expression.
true if the regular expression matches at the current position; otherwise, false.
Custom -derived type for the LibraryRegex method.
Cached, thread-safe singleton instance.
Initializes the instance.
Provides a factory for creating instances to be used by methods on .
Creates an instance of a used by methods on .
Provides the runner that contains the custom logic implementing the specified regular expression.
Scan the starting from base.runtextstart for the next match.
The text being scanned by the regular expression.
Search starting from base.runtextpos for the next location a match could possibly start.
The text being scanned by the regular expression.
true if a possible match was found; false if no more matches are possible.
Determine whether at base.runtextpos is a match for the regular expression.
The text being scanned by the regular expression.
true if the regular expression matches at the current position; otherwise, false.
Custom -derived type for the CodecRegex method.
Cached, thread-safe singleton instance.
Initializes the instance.
Provides a factory for creating instances to be used by methods on .
Creates an instance of a used by methods on .
Provides the runner that contains the custom logic implementing the specified regular expression.
Scan the starting from base.runtextstart for the next match.
The text being scanned by the regular expression.
Search starting from base.runtextpos for the next location a match could possibly start.
The text being scanned by the regular expression.
true if a possible match was found; false if no more matches are possible.
Determine whether at base.runtextpos is a match for the regular expression.
The text being scanned by the regular expression.
true if the regular expression matches at the current position; otherwise, false.
Custom -derived type for the FilterRegex method.
Cached, thread-safe singleton instance.
Initializes the instance.
Provides a factory for creating instances to be used by methods on .
Creates an instance of a used by methods on .
Provides the runner that contains the custom logic implementing the specified regular expression.
Scan the starting from base.runtextstart for the next match.
The text being scanned by the regular expression.
Search starting from base.runtextpos for the next location a match could possibly start.
The text being scanned by the regular expression.
true if a possible match was found; false if no more matches are possible.
Determine whether at base.runtextpos is a match for the regular expression.
The text being scanned by the regular expression.
true if the regular expression matches at the current position; otherwise, false.
Custom -derived type for the FfprobePathRegex method.
Cached, thread-safe singleton instance.
Initializes the instance.
Provides a factory for creating instances to be used by methods on .
Creates an instance of a used by methods on .
Provides the runner that contains the custom logic implementing the specified regular expression.
Scan the starting from base.runtextstart for the next match.
The text being scanned by the regular expression.
Search starting from base.runtextpos for the next location a match could possibly start.
The text being scanned by the regular expression.
true if a possible match was found; false if no more matches are possible.
Determine whether at base.runtextpos is a match for the regular expression.
The text being scanned by the regular expression.
true if the regular expression matches at the current position; otherwise, false.
Custom -derived type for the PerformerRegex method.
Cached, thread-safe singleton instance.
Initializes the instance.
Provides a factory for creating instances to be used by methods on .
Creates an instance of a used by methods on .
Provides the runner that contains the custom logic implementing the specified regular expression.
Scan the starting from base.runtextstart for the next match.
The text being scanned by the regular expression.
Search starting from base.runtextpos for the next location a match could possibly start.
The text being scanned by the regular expression.
true if a possible match was found; false if no more matches are possible.
Determine whether at base.runtextpos is a match for the regular expression.
The text being scanned by the regular expression.
true if the regular expression matches at the current position; otherwise, false.
Custom -derived type for the NewLineRegex method.
Cached, thread-safe singleton instance.
Initializes the instance.
Provides a factory for creating instances to be used by methods on .
Creates an instance of a used by methods on .
Provides the runner that contains the custom logic implementing the specified regular expression.
Scan the starting from base.runtextstart for the next match.
The text being scanned by the regular expression.
Search starting from base.runtextpos for the next location a match could possibly start.
The text being scanned by the regular expression.
true if a possible match was found; false if no more matches are possible.
Custom -derived type for the NewLineEscapedRegex method.
Cached, thread-safe singleton instance.
Initializes the instance.
Provides a factory for creating instances to be used by methods on .
Creates an instance of a used by methods on .
Provides the runner that contains the custom logic implementing the specified regular expression.
Scan the starting from base.runtextstart for the next match.
The text being scanned by the regular expression.
Search starting from base.runtextpos for the next location a match could possibly start.
The text being scanned by the regular expression.
true if a possible match was found; false if no more matches are possible.
Determine whether at base.runtextpos is a match for the regular expression.
The text being scanned by the regular expression.
true if the regular expression matches at the current position; otherwise, false.
Helper methods used by generated -derived implementations.
Default timeout value set in , or if none was set.
Whether is non-infinite.
Determines whether the character is part of the [\w] set.
Pops 2 values from the backtracking stack.
Pushes 2 values onto the backtracking stack.
Pushes 3 values onto the backtracking stack.
Provides a mask of Unicode categories that combine to form [\w].
Gets a bitmap for whether each character 0 through 127 is in [\w]
Supports searching for characters in or not in "\n./\\".
Supports searching for the string "\\n".
Supports searching for the string "lib".
Supports searching for characters in or not in "\t\n\v\f\r \u0085 \u2028\u2029 ".