public async Task <TidalStream> GetOfflineUrlAsync(int trackId, StreamingQuality quality)
 {
     return(await GetAsync <TidalStream>($"tracks/{trackId}/offlineUrl", new List <KeyValuePair <string, string> >
     {
         new KeyValuePair <string, string>("soundQuality", JToken.FromObject(quality).ToString())
     }));
 }
        public static void BreakDown(this StreamingQuality quality, out StreamingResolution resolution, out StreamingLMH lmh)
        {
            switch (quality)
            {
            case StreamingQuality.ThreeSixty:
                lmh        = StreamingLMH.Low;
                resolution = StreamingResolution.ThreeSixty;
                break;

            case StreamingQuality.FourEightyLow:
                lmh        = StreamingLMH.Low;
                resolution = StreamingResolution.FourEighty;
                break;

            case StreamingQuality.FourEightyMedium:
                lmh        = StreamingLMH.Medium;
                resolution = StreamingResolution.FourEighty;
                break;

            case StreamingQuality.FourEightyHigh:
                lmh        = StreamingLMH.High;
                resolution = StreamingResolution.FourEighty;
                break;

            case StreamingQuality.SevenTwentyLow:
                lmh        = StreamingLMH.Low;
                resolution = StreamingResolution.SevenTwenty;
                break;

            case StreamingQuality.SevenTwentyMedium:
                lmh        = StreamingLMH.Medium;
                resolution = StreamingResolution.SevenTwenty;
                break;

            case StreamingQuality.SevenTwentyHigh:
                lmh        = StreamingLMH.High;
                resolution = StreamingResolution.SevenTwenty;
                break;

            case StreamingQuality.TenEightyLow:
                lmh        = StreamingLMH.Low;
                resolution = StreamingResolution.TenEighty;
                break;

            case StreamingQuality.TenEightyMedium:
                lmh        = StreamingLMH.Medium;
                resolution = StreamingResolution.TenEighty;
                break;

            case StreamingQuality.TenEightyHigh:
                lmh        = StreamingLMH.High;
                resolution = StreamingResolution.TenEighty;
                break;

            default:
                lmh        = StreamingLMH.Low;
                resolution = StreamingResolution.ThreeSixty;
                break;
            }
        }
Example #3
0
 public StreamingContent(string genre, string title, int starRating, StreamingQuality typeOfQuality, string description, string language, MaturityRating maturityRating)
 {
     Genre                  = genre;
     Title                  = title;
     StarRating             = starRating;
     TypeOfStreamingQuality = typeOfQuality;
     Description            = description;
     Language               = language;
     MaturityRating         = maturityRating;
 }
 public static Metadata MasterMetadata(StreamingQuality quality)
 {
     return(new Metadata
     {
         CanDisplay = true,
         IsFlag = true,
         Name = "Master",
         Value = (quality == StreamingQuality.HiRes).ToString()
     });
 }
 public async Task <UrlPostPaywallResponse> GetUrlPostPaywall(int trackId, StreamingQuality audioQuality,
                                                              UrlUsageMode urlUsageMode)
 {
     return
         (await
          GetAsync <UrlPostPaywallResponse>($"tracks/{trackId}/urlpostpaywall",
                                            new List <KeyValuePair <string, string> >()
     {
         new KeyValuePair <string, string>("audioquality", JToken.FromObject(audioQuality).ToString()),
         new KeyValuePair <string, string>("urlusagemode", JToken.FromObject(urlUsageMode).ToString()),
         new KeyValuePair <string, string>("assetpresentation", "FULL")
     }));
 }
        public static TranscodeSetting GetSettings(this StreamingQuality quality)
        {
            switch (quality)
            {
            case StreamingQuality.ThreeSixty:
                return(new TranscodeSetting360p());

            case StreamingQuality.FourEightyLow:
                return(new TranscodeSetting480p(620000, 96000));

            case StreamingQuality.FourEightyMedium:
                return(new TranscodeSetting480p(1500000, 196000));

            case StreamingQuality.FourEightyHigh:
                return(new TranscodeSetting480p(4500000, 256000));

            case StreamingQuality.SevenTwentyLow:
                return(new TranscodeSetting720p(5000000, 128000, 2));

            case StreamingQuality.SevenTwentyMedium:
                return(new TranscodeSetting720p(7500000, 256000, 3));

            case StreamingQuality.SevenTwentyHigh:
                return(new TranscodeSetting720p(10000000, 380000, 3));

            case StreamingQuality.TenEightyLow:
                return(new TranscodeSetting1080p(7500000, 196000, 2));

            case StreamingQuality.TenEightyMedium:
                return(new TranscodeSetting1080p(10000000, 256000, 3));

            case StreamingQuality.TenEightyHigh:
                return(new TranscodeSetting1080p(15000000, 750000, 6));

            default:
                return(new TranscodeSettingCopy());
            }
        }
Example #7
0
 public Movie(string genre, string title, int starRating, StreamingQuality typeOfQuality, string description, string language, MaturityRating maturityRating, double runTime)
     : base(genre, title, starRating, typeOfQuality, description, language, maturityRating)
 {
     RunTime = runTime;
 }
Example #8
0
 public Show(string genre, string title, int starRating, StreamingQuality typeOfQuality, string description, string language, MaturityRating maturityRating, List <Episode> episodes)
     : base(genre, title, starRating, typeOfQuality, description, language, maturityRating)
 {
     Episodes = episodes;
 }