aboutsummaryrefslogtreecommitdiff
path: root/BDInfo/TSStreamClipFile.cs
diff options
context:
space:
mode:
Diffstat (limited to 'BDInfo/TSStreamClipFile.cs')
-rw-r--r--BDInfo/TSStreamClipFile.cs111
1 files changed, 52 insertions, 59 deletions
diff --git a/BDInfo/TSStreamClipFile.cs b/BDInfo/TSStreamClipFile.cs
index f311dd839..3396f4c71 100644
--- a/BDInfo/TSStreamClipFile.cs
+++ b/BDInfo/TSStreamClipFile.cs
@@ -23,28 +23,24 @@ using System.Collections.Generic;
using System.IO;
using System.Text;
using MediaBrowser.Model.IO;
-using MediaBrowser.Model.Text;
namespace BDInfo
{
public class TSStreamClipFile
{
private readonly IFileSystem _fileSystem;
- private readonly ITextEncoding _textEncoding;
public FileSystemMetadata FileInfo = null;
public string FileType = null;
public bool IsValid = false;
public string Name = null;
public Dictionary<ushort, TSStream> Streams =
- new Dictionary<ushort,TSStream>();
+ new Dictionary<ushort, TSStream>();
- public TSStreamClipFile(
- FileSystemMetadata fileInfo, IFileSystem fileSystem, ITextEncoding textEncoding)
+ public TSStreamClipFile(FileSystemMetadata fileInfo, IFileSystem fileSystem)
{
FileInfo = fileInfo;
_fileSystem = fileSystem;
- _textEncoding = textEncoding;
Name = fileInfo.Name.ToUpper();
}
@@ -70,7 +66,7 @@ namespace BDInfo
byte[] fileType = new byte[8];
Array.Copy(data, 0, fileType, 0, fileType.Length);
- FileType = _textEncoding.GetASCIIEncoding().GetString(fileType, 0, fileType.Length);
+ FileType = Encoding.ASCII.GetString(fileType, 0, fileType.Length);
if (FileType != "HDMV0100" &&
FileType != "HDMV0200")
{
@@ -115,7 +111,7 @@ namespace BDInfo
streamOffset += 2;
- TSStreamType streamType = (TSStreamType)
+ var streamType = (TSStreamType)
clipData[streamOffset + 1];
switch (streamType)
{
@@ -127,18 +123,18 @@ namespace BDInfo
case TSStreamType.MPEG1_VIDEO:
case TSStreamType.MPEG2_VIDEO:
case TSStreamType.VC1_VIDEO:
- {
- TSVideoFormat videoFormat = (TSVideoFormat)
- (clipData[streamOffset + 2] >> 4);
- TSFrameRate frameRate = (TSFrameRate)
- (clipData[streamOffset + 2] & 0xF);
- TSAspectRatio aspectRatio = (TSAspectRatio)
- (clipData[streamOffset + 3] >> 4);
-
- stream = new TSVideoStream();
- ((TSVideoStream)stream).VideoFormat = videoFormat;
- ((TSVideoStream)stream).AspectRatio = aspectRatio;
- ((TSVideoStream)stream).FrameRate = frameRate;
+ {
+ var videoFormat = (TSVideoFormat)
+ (clipData[streamOffset + 2] >> 4);
+ var frameRate = (TSFrameRate)
+ (clipData[streamOffset + 2] & 0xF);
+ var aspectRatio = (TSAspectRatio)
+ (clipData[streamOffset + 3] >> 4);
+
+ stream = new TSVideoStream();
+ ((TSVideoStream)stream).VideoFormat = videoFormat;
+ ((TSVideoStream)stream).AspectRatio = aspectRatio;
+ ((TSVideoStream)stream).FrameRate = frameRate;
#if DEBUG
Debug.WriteLine(string.Format(
"\t{0} {1} {2} {3} {4}",
@@ -148,8 +144,8 @@ namespace BDInfo
frameRate,
aspectRatio));
#endif
- }
- break;
+ }
+ break;
case TSStreamType.AC3_AUDIO:
case TSStreamType.AC3_PLUS_AUDIO:
@@ -162,23 +158,22 @@ namespace BDInfo
case TSStreamType.LPCM_AUDIO:
case TSStreamType.MPEG1_AUDIO:
case TSStreamType.MPEG2_AUDIO:
- {
- byte[] languageBytes = new byte[3];
- Array.Copy(clipData, streamOffset + 3,
- languageBytes, 0, languageBytes.Length);
- string languageCode =
- _textEncoding.GetASCIIEncoding().GetString(languageBytes, 0, languageBytes.Length);
-
- TSChannelLayout channelLayout = (TSChannelLayout)
- (clipData[streamOffset + 2] >> 4);
- TSSampleRate sampleRate = (TSSampleRate)
- (clipData[streamOffset + 2] & 0xF);
-
- stream = new TSAudioStream();
- ((TSAudioStream)stream).LanguageCode = languageCode;
- ((TSAudioStream)stream).ChannelLayout = channelLayout;
- ((TSAudioStream)stream).SampleRate = TSAudioStream.ConvertSampleRate(sampleRate);
- ((TSAudioStream)stream).LanguageCode = languageCode;
+ {
+ byte[] languageBytes = new byte[3];
+ Array.Copy(clipData, streamOffset + 3,
+ languageBytes, 0, languageBytes.Length);
+ string languageCode = Encoding.ASCII.GetString(languageBytes, 0, languageBytes.Length);
+
+ var channelLayout = (TSChannelLayout)
+ (clipData[streamOffset + 2] >> 4);
+ var sampleRate = (TSSampleRate)
+ (clipData[streamOffset + 2] & 0xF);
+
+ stream = new TSAudioStream();
+ ((TSAudioStream)stream).LanguageCode = languageCode;
+ ((TSAudioStream)stream).ChannelLayout = channelLayout;
+ ((TSAudioStream)stream).SampleRate = TSAudioStream.ConvertSampleRate(sampleRate);
+ ((TSAudioStream)stream).LanguageCode = languageCode;
#if DEBUG
Debug.WriteLine(string.Format(
"\t{0} {1} {2} {3} {4}",
@@ -188,20 +183,19 @@ namespace BDInfo
channelLayout,
sampleRate));
#endif
- }
- break;
+ }
+ break;
case TSStreamType.INTERACTIVE_GRAPHICS:
case TSStreamType.PRESENTATION_GRAPHICS:
- {
- byte[] languageBytes = new byte[3];
- Array.Copy(clipData, streamOffset + 2,
- languageBytes, 0, languageBytes.Length);
- string languageCode =
- _textEncoding.GetASCIIEncoding().GetString(languageBytes, 0, languageBytes.Length);
+ {
+ byte[] languageBytes = new byte[3];
+ Array.Copy(clipData, streamOffset + 2,
+ languageBytes, 0, languageBytes.Length);
+ string languageCode = Encoding.ASCII.GetString(languageBytes, 0, languageBytes.Length);
stream = new TSGraphicsStream();
- stream.LanguageCode = languageCode;
+ stream.LanguageCode = languageCode;
#if DEBUG
Debug.WriteLine(string.Format(
"\t{0} {1} {2}",
@@ -209,16 +203,15 @@ namespace BDInfo
streamType,
languageCode));
#endif
- }
- break;
+ }
+ break;
case TSStreamType.SUBTITLE:
- {
- byte[] languageBytes = new byte[3];
- Array.Copy(clipData, streamOffset + 3,
- languageBytes, 0, languageBytes.Length);
- string languageCode =
- _textEncoding.GetASCIIEncoding().GetString(languageBytes, 0, languageBytes.Length);
+ {
+ byte[] languageBytes = new byte[3];
+ Array.Copy(clipData, streamOffset + 3,
+ languageBytes, 0, languageBytes.Length);
+ string languageCode = Encoding.ASCII.GetString(languageBytes, 0, languageBytes.Length);
#if DEBUG
Debug.WriteLine(string.Format(
"\t{0} {1} {2}",
@@ -227,9 +220,9 @@ namespace BDInfo
languageCode));
#endif
stream = new TSTextStream();
- stream.LanguageCode = languageCode;
- }
- break;
+ stream.LanguageCode = languageCode;
+ }
+ break;
}
if (stream != null)