wms-httpstreamer-smoothstreaming

16:54:05.675 INFO  jd.cli.Main - Decompiling wms-httpstreamer-smoothstreaming.jar
package com.wowza.wms.httpstreamer.smoothstreaming.dvr;

import com.wowza.util.Base64;
import com.wowza.util.JSON;
import com.wowza.wms.application.WMSProperties;
import com.wowza.wms.httpstreamer.model.IHTTPStreamerApplicationContext;
import com.wowza.wms.httpstreamer.smoothstreaming.httpstreamer.HTTPStreamerApplicationContextSmoothStreamer;

public class DvrPlayerAdapterContextSmooth
{
  int a = 2;
  int b = 1;
  boolean c = true;
  boolean d = true;
  boolean e = true;
  boolean f = true;
  boolean g = true;
  boolean h = false;
  String i = JSON.copyValueOf("S.+*", -31 - 38);
  
  public DvrPlayerAdapterContextSmooth(WMSProperties paramWMSProperties, IHTTPStreamerApplicationContext paramIHTTPStreamerApplicationContext)
  {
    if ((paramIHTTPStreamerApplicationContext instanceof HTTPStreamerApplicationContextSmoothStreamer))
    {
      break label294;
      c = paramWMSProperties.getPropertyBoolean(JSON.copyValueOf("kfcA~{zbUxtrzxmk\f(4&\007$(\024-,!", 112 + 63), c);
      d = paramWMSProperties.getPropertyBoolean(Base64.endsWith(57 * 27, "grwUjgf~cAl`fvtagX|`r[xtK}hmz"), d);
      
      e = paramWMSProperties.getPropertyBoolean(JSON.copyValueOf("kfcA~{zbUxtrzxmkRdalvaccKhdXihe", 52 + 91), e);
      f = paramWMSProperties.getPropertyBoolean(JSON.copyValueOf("joMronvkIdhnnly^hm`buwwWtxGyli~", 126 + -99), f);
      g = paramWMSProperties.getPropertyBoolean(JSON.copyValueOf("grwUjgf~cAl`fvtagFpuxj}Om{|ig{Gqwgsafd", '?' / 120), g);
      
      a = paramWMSProperties.getPropertyInt(Base64.endsWith('?' / '�', "apu[dedxeCn~xtvga[vrvhMyomvoo"), a);
      b = paramWMSProperties.getPropertyInt(JSON.copyValueOf("apu[dedxeCn~xtvga[~vvhMyomvoo", '?' / '�'), b);
      
      h = paramWMSProperties.getPropertyBoolean(Base64.endsWith(42 + -11, "{vsQnkjroEhdbjh}{Ft`q{fsSmk{ourp"), h);
      
      i = paramWMSProperties.getPropertyStr(JSON.copyValueOf("c~{Yfcbzg]p|zrpecP+,/_rzzc", 34 + 101), i);
    }
    for (;;)
    {
      if (!paramWMSProperties.isEmpty()) {}
      label294:
      for (goto 68; paramWMSProperties == null; i = ((HTTPStreamerApplicationContextSmoothStreamer)paramIHTTPStreamerApplicationContext).getH264CodecId()) {
        return;
      }
    }
  }
}

/* Location:
 * Qualified Name:     com.wowza.wms.httpstreamer.smoothstreaming.dvr.DvrPlayerAdapterContextSmooth
 * Java Class Version: 6 (50.0)
 * JD-Core Version:    0.7.1
 */
package com.wowza.wms.httpstreamer.smoothstreaming.dvr;

import com.wowza.util.Base64;
import com.wowza.util.BufferUtils;
import com.wowza.util.CollectionUtils;
import com.wowza.util.JSON;
import com.wowza.util.PacketFragmentList;
import com.wowza.wms.application.IApplicationInstance;
import com.wowza.wms.application.WMSProperties;
import com.wowza.wms.drm.playready.PlayReadyKeyInfo;
import com.wowza.wms.drm.playready.PlayReadySampleData;
import com.wowza.wms.dvr.DvrBaseEncryptionInfoDelegate;
import com.wowza.wms.dvr.DvrChunk;
import com.wowza.wms.dvr.DvrChunkCreator;
import com.wowza.wms.dvr.DvrManifestCodecEntry;
import com.wowza.wms.dvr.DvrManifestEntry;
import com.wowza.wms.dvr.DvrPlayerAdapterBase;
import com.wowza.wms.dvr.DvrStreamStoreBase;
import com.wowza.wms.dvr.IDvrEncryptionInfo;
import com.wowza.wms.dvr.IDvrStreamManager;
import com.wowza.wms.dvr.IDvrStreamStore;
import com.wowza.wms.dvr.mbr.DvrMbrAlignedEntry;
import com.wowza.wms.dvr.mbr.DvrMbrShiftedEntry;
import com.wowza.wms.dvr.mbr.DvrPlaylistAlignmentEntry;
import com.wowza.wms.dvr.mbr.IDvrMbrPlaylistAlignment;
import com.wowza.wms.httpstreamer.model.IHTTPStreamerApplicationContext;
import com.wowza.wms.logging.WMSLogger;
import com.wowza.wms.logging.WMSLoggerFactory;
import com.wowza.wms.media.h264.H264CodecConfigParts;
import com.wowza.wms.media.h264.H264Utils;
import com.wowza.wms.media.model.MediaCodecInfoAudio;
import com.wowza.wms.media.model.MediaCodecInfoVideo;
import com.wowza.wms.media.mp4.fragment.MP4FragmentWriter;
import com.wowza.wms.media.mp4.fragment.MP4FragmentWriterContext;
import com.wowza.wms.media.mp4.fragment.MP4FragmentWriterMedia;
import com.wowza.wms.parsers.atom.AtomBytesToTree;
import com.wowza.wms.parsers.atom.AtomTreeToBytes;
import com.wowza.wms.parsers.atom.IAtom;
import java.util.List;

public class DvrPlayerAdapterSmoothStreaming
  extends DvrPlayerAdapterBase
{
  private static final Class<DvrPlayerAdapterSmoothStreaming> a = DvrPlayerAdapterSmoothStreaming.class;
  private static final Object b = Base64.endsWith(45 * 33, "\t8=\000=3*1'\02739).>.\01630/5*\02007#&% $,");
  protected int dvrSmoothPlayReadyH264ClearSize = 5;
  private long c = 50L;
  private Object d = new Object();
  private static int e = 0;
  
  protected boolean isDebug(IHTTPStreamerApplicationContext paramIHTTPStreamerApplicationContext)
  {
    boolean bool = super.isDebug(paramIHTTPStreamerApplicationContext);
    if (paramIHTTPStreamerApplicationContext == null) {
      return bool;
    }
    for (;;)
    {
      bool = paramIHTTPStreamerApplicationContext.getAppInstance().getDvrProperties().getPropertyBoolean(Base64.endsWith('?' / 90, "bqzMoiyj]b~f{Dywn}k[}mjzr"), bool); break;bool = paramIHTTPStreamerApplicationContext.getProperties().getPropertyBoolean(Base64.endsWith(61 * 43, "{63\006&&0!\024%&%?$\035\".)4 \02204&#=+"), bool);
      if (paramIHTTPStreamerApplicationContext.getAppInstance() == null) {
        break;
      }
    }
  }
  
  /* Error */
  public byte[] getAbsolutePlaylist(IHTTPStreamerApplicationContext arg1, IDvrStreamStore arg2, com.wowza.wms.dvr.DvrPlaylistRequest arg3)
  {
    // Byte code:
    //   0: aload_2
    //   1: ifnonnull +1032 -> 1033
    //   4: goto +1133 -> 1137
    //   7: aload_0
    //   8: aload_1
    //   9: invokespecial 76	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:a	(Lcom/wowza/wms/httpstreamer/model/IHTTPStreamerApplicationContext;)Lcom/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterContextSmooth;
    //   12: astore 5
    //   14: goto +839 -> 853
    //   17: aload_2
    //   18: invokeinterface 82 1 0
    //   23: astore 13
    //   25: aload 13
    //   27: lload 7
    //   29: invokeinterface 88 3 0
    //   34: astore 14
    //   36: aconst_null
    //   37: astore 15
    //   39: aload 14
    //   41: ifnull +6 -> 47
    //   44: goto +52 -> 96
    //   47: aload_0
    //   48: aload_1
    //   49: aload_2
    //   50: aload 12
    //   52: aload_3
    //   53: aconst_null
    //   54: invokevirtual 92	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:dvrEntriesToShiftedEntries	(Lcom/wowza/wms/httpstreamer/model/IHTTPStreamerApplicationContext;Lcom/wowza/wms/dvr/IDvrStreamStore;Ljava/util/List;Lcom/wowza/wms/dvr/DvrPlaylistRequest;Lcom/wowza/wms/dvr/mbr/IDvrMbrPlaylistAlignment;)Ljava/util/List;
    //   57: astore 16
    //   59: aload 16
    //   61: invokestatic 98	com/wowza/util/CollectionUtils:isEmpty	(Ljava/util/Collection;)Z
    //   64: ifeq +55 -> 119
    //   67: goto +40 -> 107
    //   70: aload 14
    //   72: checkcast 100	com/wowza/wms/dvr/DvrManifestCodecEntry
    //   75: astore 15
    //   77: goto -30 -> 47
    //   80: aconst_null
    //   81: goto +967 -> 1048
    //   84: aload_0
    //   85: aload_2
    //   86: aload 12
    //   88: aload_3
    //   89: aconst_null
    //   90: invokevirtual 104	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:logDetailsWhenShiftingFails	(Lcom/wowza/wms/dvr/IDvrStreamStore;Ljava/util/List;Lcom/wowza/wms/dvr/DvrPlaylistRequest;Lcom/wowza/wms/dvr/mbr/IDvrMbrPlaylistAlignment;)V
    //   93: goto -13 -> 80
    //   96: aload 14
    //   98: instanceof 100
    //   101: ifeq -54 -> 47
    //   104: goto -34 -> 70
    //   107: aload_0
    //   108: aload_1
    //   109: invokevirtual 107	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:isMbrDebugOnEmptyShiftedEntries	(Lcom/wowza/wms/httpstreamer/model/IHTTPStreamerApplicationContext;)Z
    //   112: ifeq -32 -> 80
    //   115: goto -31 -> 84
    //   118: areturn
    //   119: aload_0
    //   120: aload 16
    //   122: invokevirtual 111	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:calculateDuration	(Ljava/util/List;)J
    //   125: lstore 17
    //   127: aload_0
    //   128: aload_2
    //   129: invokeinterface 115 1 0
    //   134: invokevirtual 119	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:determineDvrWindowDuration	(I)J
    //   137: lstore 19
    //   139: lload 17
    //   141: ldc2_w 120
    //   144: lmul
    //   145: lstore 17
    //   147: lload 19
    //   149: ldc2_w 120
    //   152: lmul
    //   153: lstore 19
    //   155: ldc2_w 122
    //   158: lstore 21
    //   160: iload 6
    //   162: ifeq +632 -> 794
    //   165: goto +604 -> 769
    //   168: ldc 125
    //   170: bipush 39
    //   172: bipush -49
    //   174: isub
    //   175: invokestatic 131	com/wowza/util/JSON:copyValueOf	(Ljava/lang/String;I)Ljava/lang/String;
    //   178: goto +459 -> 637
    //   181: astore 23
    //   183: aload 5
    //   185: getfield 136	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterContextSmooth:d	Z
    //   188: ifeq +52 -> 240
    //   191: goto +589 -> 780
    //   194: aload_0
    //   195: bipush 8
    //   197: aload_2
    //   198: aload_3
    //   199: iconst_1
    //   200: invokevirtual 140	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:getEntries	(ILcom/wowza/wms/dvr/IDvrStreamStore;Lcom/wowza/wms/dvr/DvrPlaylistRequest;Z)Ljava/util/List;
    //   203: astore 24
    //   205: aload_0
    //   206: aload_1
    //   207: aload_2
    //   208: aload 24
    //   210: aload_3
    //   211: aconst_null
    //   212: invokevirtual 92	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:dvrEntriesToShiftedEntries	(Lcom/wowza/wms/httpstreamer/model/IHTTPStreamerApplicationContext;Lcom/wowza/wms/dvr/IDvrStreamStore;Ljava/util/List;Lcom/wowza/wms/dvr/DvrPlaylistRequest;Lcom/wowza/wms/dvr/mbr/IDvrMbrPlaylistAlignment;)Ljava/util/List;
    //   215: astore 16
    //   217: aload_0
    //   218: aload 24
    //   220: invokevirtual 144	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:calcBitrate	(Ljava/util/List;)I
    //   223: istore 23
    //   225: iload 23
    //   227: ifgt +101 -> 328
    //   230: goto +76 -> 306
    //   233: ldc -111
    //   235: istore 23
    //   237: goto +37 -> 274
    //   240: ldc -109
    //   242: sipush 559
    //   245: bipush 115
    //   247: idiv
    //   248: invokestatic 131	com/wowza/util/JSON:copyValueOf	(Ljava/lang/String;I)Ljava/lang/String;
    //   251: goto +111 -> 362
    //   254: sipush 1219
    //   257: sipush 249
    //   260: idiv
    //   261: ldc -107
    //   263: invokestatic 58	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   266: goto +466 -> 732
    //   269: lload 17
    //   271: goto +199 -> 470
    //   274: aload 11
    //   276: aload_0
    //   277: aload_2
    //   278: aload 5
    //   280: aload 16
    //   282: aload 15
    //   284: iload 23
    //   286: aconst_null
    //   287: invokespecial 152	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:b	(Lcom/wowza/wms/dvr/IDvrStreamStore;Lcom/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterContextSmooth;Ljava/util/List;Lcom/wowza/wms/dvr/DvrManifestCodecEntry;ILcom/wowza/wms/dvr/mbr/DvrPlaylistAlignmentEntry;)Ljava/lang/String;
    //   290: invokevirtual 158	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   293: pop
    //   294: aload_2
    //   295: invokeinterface 162 1 0
    //   300: ifeq +184 -> 484
    //   303: goto -109 -> 194
    //   306: sipush 12500
    //   309: istore 23
    //   311: goto +17 -> 328
    //   314: bipush 29
    //   316: bipush 59
    //   318: swap
    //   319: imul
    //   320: ldc -92
    //   322: invokestatic 58	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   325: goto -144 -> 181
    //   328: aload 11
    //   330: aload_0
    //   331: aload_2
    //   332: aload 5
    //   334: aload 16
    //   336: aload 15
    //   338: iload 23
    //   340: aconst_null
    //   341: invokespecial 166	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:a	(Lcom/wowza/wms/dvr/IDvrStreamStore;Lcom/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterContextSmooth;Ljava/util/List;Lcom/wowza/wms/dvr/DvrManifestCodecEntry;ILcom/wowza/wms/dvr/mbr/DvrPlaylistAlignmentEntry;)Ljava/lang/String;
    //   344: invokevirtual 158	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   347: pop
    //   348: goto +136 -> 484
    //   351: aload 11
    //   353: invokevirtual 170	java/lang/StringBuffer:toString	()Ljava/lang/String;
    //   356: invokevirtual 176	java/lang/String:getBytes	()[B
    //   359: goto -241 -> 118
    //   362: astore 24
    //   364: aload 11
    //   366: bipush 60
    //   368: bipush 61
    //   370: iadd
    //   371: ldc -78
    //   373: invokestatic 58	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   376: iconst_5
    //   377: anewarray 31	java/lang/Object
    //   380: dup
    //   381: iconst_0
    //   382: aload 5
    //   384: getfield 180	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterContextSmooth:a	I
    //   387: invokestatic 186	java/lang/Integer:valueOf	(I)Ljava/lang/Integer;
    //   390: aastore
    //   391: dup
    //   392: iconst_1
    //   393: aload 5
    //   395: getfield 188	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterContextSmooth:b	I
    //   398: invokestatic 186	java/lang/Integer:valueOf	(I)Ljava/lang/Integer;
    //   401: aastore
    //   402: dup
    //   403: iconst_2
    //   404: lload 21
    //   406: invokestatic 193	java/lang/Long:valueOf	(J)Ljava/lang/Long;
    //   409: aastore
    //   410: dup
    //   411: iconst_3
    //   412: aload 23
    //   414: aastore
    //   415: dup
    //   416: iconst_4
    //   417: aload 24
    //   419: aastore
    //   420: invokestatic 197	java/lang/String:format	(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
    //   423: invokevirtual 158	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   426: pop
    //   427: aload 11
    //   429: bipush 7
    //   431: iconst_4
    //   432: isub
    //   433: ldc -57
    //   435: invokestatic 58	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   438: iconst_2
    //   439: anewarray 31	java/lang/Object
    //   442: dup
    //   443: iconst_0
    //   444: iload 10
    //   446: iconst_1
    //   447: isub
    //   448: invokestatic 186	java/lang/Integer:valueOf	(I)Ljava/lang/Integer;
    //   451: aastore
    //   452: dup
    //   453: iconst_1
    //   454: lload 19
    //   456: invokestatic 193	java/lang/Long:valueOf	(J)Ljava/lang/Long;
    //   459: aastore
    //   460: invokestatic 197	java/lang/String:format	(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
    //   463: invokevirtual 158	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   466: pop
    //   467: goto +278 -> 745
    //   470: invokestatic 193	java/lang/Long:valueOf	(J)Ljava/lang/Long;
    //   473: aastore
    //   474: invokestatic 197	java/lang/String:format	(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
    //   477: invokevirtual 158	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   480: pop
    //   481: goto +264 -> 745
    //   484: aload_0
    //   485: aload_1
    //   486: aload_2
    //   487: aload 16
    //   489: invokespecial 202	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:a	(Lcom/wowza/wms/httpstreamer/model/IHTTPStreamerApplicationContext;Lcom/wowza/wms/dvr/IDvrStreamStore;Ljava/util/List;)Ljava/lang/String;
    //   492: astore 24
    //   494: aload 24
    //   496: invokestatic 207	com/wowza/util/StringUtils:isEmpty	(Ljava/lang/String;)Z
    //   499: ifne +19 -> 518
    //   502: goto +60 -> 562
    //   505: bipush -6
    //   507: bipush 61
    //   509: isub
    //   510: ldc -47
    //   512: invokestatic 58	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   515: goto -334 -> 181
    //   518: aload 11
    //   520: sipush 483
    //   523: bipush 82
    //   525: idiv
    //   526: ldc -45
    //   528: invokestatic 58	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   531: invokevirtual 158	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   534: pop
    //   535: iload 4
    //   537: ifeq -186 -> 351
    //   540: goto +33 -> 573
    //   543: lconst_0
    //   544: goto -74 -> 470
    //   547: sipush 755
    //   550: sipush 231
    //   553: idiv
    //   554: ldc -43
    //   556: invokestatic 58	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   559: goto +78 -> 637
    //   562: aload 11
    //   564: aload 24
    //   566: invokevirtual 158	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   569: pop
    //   570: goto -52 -> 518
    //   573: getstatic 215	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:a	Ljava/lang/Class;
    //   576: invokestatic 221	com/wowza/wms/logging/WMSLoggerFactory:getLogger	(Ljava/lang/Class;)Lcom/wowza/wms/logging/WMSLogger;
    //   579: ldc -33
    //   581: bipush 27
    //   583: bipush 41
    //   585: imul
    //   586: invokestatic 131	com/wowza/util/JSON:copyValueOf	(Ljava/lang/String;I)Ljava/lang/String;
    //   589: iconst_3
    //   590: anewarray 31	java/lang/Object
    //   593: dup
    //   594: iconst_0
    //   595: getstatic 225	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:b	Ljava/lang/Object;
    //   598: aastore
    //   599: dup
    //   600: iconst_1
    //   601: aload_2
    //   602: invokeinterface 228 1 0
    //   607: aastore
    //   608: dup
    //   609: iconst_2
    //   610: aload 11
    //   612: invokevirtual 170	java/lang/StringBuffer:toString	()Ljava/lang/String;
    //   615: aastore
    //   616: invokestatic 197	java/lang/String:format	(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
    //   619: invokevirtual 234	com/wowza/wms/logging/WMSLogger:info	(Ljava/lang/String;)V
    //   622: goto -271 -> 351
    //   625: ldc -20
    //   627: bipush 33
    //   629: iconst_3
    //   630: imul
    //   631: invokestatic 131	com/wowza/util/JSON:copyValueOf	(Ljava/lang/String;I)Ljava/lang/String;
    //   634: goto +98 -> 732
    //   637: astore 24
    //   639: aload 11
    //   641: ldc -18
    //   643: bipush 45
    //   645: bipush 15
    //   647: swap
    //   648: imul
    //   649: invokestatic 131	com/wowza/util/JSON:copyValueOf	(Ljava/lang/String;I)Ljava/lang/String;
    //   652: iconst_5
    //   653: anewarray 31	java/lang/Object
    //   656: dup
    //   657: iconst_0
    //   658: aload 5
    //   660: getfield 180	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterContextSmooth:a	I
    //   663: invokestatic 186	java/lang/Integer:valueOf	(I)Ljava/lang/Integer;
    //   666: aastore
    //   667: dup
    //   668: iconst_1
    //   669: aload 5
    //   671: getfield 188	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterContextSmooth:b	I
    //   674: invokestatic 186	java/lang/Integer:valueOf	(I)Ljava/lang/Integer;
    //   677: aastore
    //   678: dup
    //   679: iconst_2
    //   680: lload 21
    //   682: invokestatic 193	java/lang/Long:valueOf	(J)Ljava/lang/Long;
    //   685: aastore
    //   686: dup
    //   687: iconst_3
    //   688: aload 23
    //   690: aastore
    //   691: dup
    //   692: iconst_4
    //   693: aload 24
    //   695: aastore
    //   696: invokestatic 197	java/lang/String:format	(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
    //   699: invokevirtual 158	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   702: pop
    //   703: aload 11
    //   705: bipush 24
    //   707: bipush 11
    //   709: isub
    //   710: ldc -16
    //   712: invokestatic 58	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   715: iconst_1
    //   716: anewarray 31	java/lang/Object
    //   719: dup
    //   720: iconst_0
    //   721: aload 5
    //   723: getfield 243	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterContextSmooth:g	Z
    //   726: ifeq -183 -> 543
    //   729: goto -460 -> 269
    //   732: astore 23
    //   734: aload 5
    //   736: getfield 246	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterContextSmooth:f	Z
    //   739: ifeq -192 -> 547
    //   742: goto -574 -> 168
    //   745: aload 11
    //   747: ldc -8
    //   749: invokevirtual 158	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   752: pop
    //   753: aload_0
    //   754: aload 12
    //   756: invokevirtual 144	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:calcBitrate	(Ljava/util/List;)I
    //   759: istore 23
    //   761: iload 23
    //   763: ifgt -489 -> 274
    //   766: goto -533 -> 233
    //   769: aload 5
    //   771: getfield 250	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterContextSmooth:c	Z
    //   774: ifeq -269 -> 505
    //   777: goto -463 -> 314
    //   780: sipush 148
    //   783: bipush 37
    //   785: idiv
    //   786: ldc -107
    //   788: invokestatic 58	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   791: goto -429 -> 362
    //   794: aload 5
    //   796: getfield 252	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterContextSmooth:e	Z
    //   799: ifeq -174 -> 625
    //   802: goto -548 -> 254
    //   805: getstatic 215	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:a	Ljava/lang/Class;
    //   808: invokestatic 221	com/wowza/wms/logging/WMSLoggerFactory:getLogger	(Ljava/lang/Class;)Lcom/wowza/wms/logging/WMSLogger;
    //   811: ldc -2
    //   813: iconst_5
    //   814: bipush 27
    //   816: swap
    //   817: iadd
    //   818: invokestatic 131	com/wowza/util/JSON:copyValueOf	(Ljava/lang/String;I)Ljava/lang/String;
    //   821: iconst_3
    //   822: anewarray 31	java/lang/Object
    //   825: dup
    //   826: iconst_0
    //   827: getstatic 225	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:b	Ljava/lang/Object;
    //   830: aastore
    //   831: dup
    //   832: iconst_1
    //   833: aload_3
    //   834: aastore
    //   835: dup
    //   836: iconst_2
    //   837: aload_2
    //   838: invokeinterface 228 1 0
    //   843: aastore
    //   844: invokestatic 197	java/lang/String:format	(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
    //   847: invokevirtual 234	com/wowza/wms/logging/WMSLogger:info	(Ljava/lang/String;)V
    //   850: goto -843 -> 7
    //   853: iconst_1
    //   854: istore 6
    //   856: lconst_0
    //   857: lstore 7
    //   859: aload_3
    //   860: ifnull +79 -> 939
    //   863: goto +146 -> 1009
    //   866: getstatic 215	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:a	Ljava/lang/Class;
    //   869: invokestatic 221	com/wowza/wms/logging/WMSLoggerFactory:getLogger	(Ljava/lang/Class;)Lcom/wowza/wms/logging/WMSLogger;
    //   872: sipush 1410
    //   875: sipush 217
    //   878: idiv
    //   879: ldc_w 256
    //   882: invokestatic 58	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   885: iconst_2
    //   886: anewarray 31	java/lang/Object
    //   889: dup
    //   890: iconst_0
    //   891: getstatic 225	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:b	Ljava/lang/Object;
    //   894: aastore
    //   895: dup
    //   896: iconst_1
    //   897: aload_2
    //   898: aastore
    //   899: invokestatic 197	java/lang/String:format	(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
    //   902: invokevirtual 259	com/wowza/wms/logging/WMSLogger:warn	(Ljava/lang/String;)V
    //   905: aconst_null
    //   906: goto +144 -> 1050
    //   909: aload_2
    //   910: invokeinterface 262 1 0
    //   915: ifeq +16 -> 931
    //   918: goto +17 -> 935
    //   921: aload 9
    //   923: invokevirtual 268	com/wowza/wms/dvr/DvrPlaylistRequest:getPlaylistStart	()J
    //   926: lstore 7
    //   928: goto +96 -> 1024
    //   931: iconst_0
    //   932: goto +15 -> 947
    //   935: iconst_1
    //   936: goto +11 -> 947
    //   939: iload 6
    //   941: ifeq -10 -> 931
    //   944: goto -35 -> 909
    //   947: istore 6
    //   949: aload_2
    //   950: invokeinterface 272 1 0
    //   955: astore 9
    //   957: aload 9
    //   959: invokeinterface 277 1 0
    //   964: istore 10
    //   966: new 154	java/lang/StringBuffer
    //   969: dup
    //   970: invokespecial 278	java/lang/StringBuffer:<init>	()V
    //   973: astore 11
    //   975: aload 11
    //   977: bipush 79
    //   979: bipush 88
    //   981: iadd
    //   982: ldc_w 280
    //   985: invokestatic 58	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   988: invokevirtual 158	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   991: ldc -8
    //   993: invokevirtual 158	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   996: pop
    //   997: aload_2
    //   998: invokeinterface 283 1 0
    //   1003: ifne +98 -> 1101
    //   1006: goto -140 -> 866
    //   1009: aload_2
    //   1010: aload_3
    //   1011: invokestatic 289	com/wowza/wms/dvr/DvrTimeScaleUtils:convertToDvrTimeScale	(Lcom/wowza/wms/dvr/IDvrStreamStore;Lcom/wowza/wms/dvr/DvrPlaylistRequest;)Lcom/wowza/wms/dvr/DvrPlaylistRequest;
    //   1014: astore 9
    //   1016: aload 9
    //   1018: ifnull +6 -> 1024
    //   1021: goto -100 -> 921
    //   1024: aload_3
    //   1025: invokevirtual 292	com/wowza/wms/dvr/DvrPlaylistRequest:isLiveRequest	()Z
    //   1028: istore 6
    //   1030: goto -91 -> 939
    //   1033: aload_0
    //   1034: aload_1
    //   1035: invokevirtual 293	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:isDebug	(Lcom/wowza/wms/httpstreamer/model/IHTTPStreamerApplicationContext;)Z
    //   1038: istore 4
    //   1040: iload 4
    //   1042: ifeq -1035 -> 7
    //   1045: goto -240 -> 805
    //   1048: areturn
    //   1049: areturn
    //   1050: areturn
    //   1051: astore 6
    //   1053: getstatic 215	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:a	Ljava/lang/Class;
    //   1056: invokestatic 221	com/wowza/wms/logging/WMSLoggerFactory:getLogger	(Ljava/lang/Class;)Lcom/wowza/wms/logging/WMSLogger;
    //   1059: sipush 1018
    //   1062: sipush 206
    //   1065: idiv
    //   1066: ldc_w 295
    //   1069: invokestatic 58	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   1072: iconst_2
    //   1073: anewarray 31	java/lang/Object
    //   1076: dup
    //   1077: iconst_0
    //   1078: getstatic 225	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:b	Ljava/lang/Object;
    //   1081: aastore
    //   1082: dup
    //   1083: iconst_1
    //   1084: aload_2
    //   1085: invokeinterface 228 1 0
    //   1090: aastore
    //   1091: invokestatic 197	java/lang/String:format	(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
    //   1094: aload 6
    //   1096: invokevirtual 299	com/wowza/wms/logging/WMSLogger:error	(Ljava/lang/String;Ljava/lang/Throwable;)V
    //   1099: aconst_null
    //   1100: areturn
    //   1101: aload_0
    //   1102: bipush 9
    //   1104: aload_2
    //   1105: aload_3
    //   1106: iconst_1
    //   1107: invokevirtual 140	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:getEntries	(ILcom/wowza/wms/dvr/IDvrStreamStore;Lcom/wowza/wms/dvr/DvrPlaylistRequest;Z)Ljava/util/List;
    //   1110: astore 12
    //   1112: aload 12
    //   1114: ifnull +6 -> 1120
    //   1117: goto +7 -> 1124
    //   1120: aconst_null
    //   1121: goto -72 -> 1049
    //   1124: aload 12
    //   1126: invokeinterface 303 1 0
    //   1131: ifeq -1114 -> 17
    //   1134: goto -14 -> 1120
    //   1137: aconst_null
    //   1138: areturn
    // Line number table:
    //   Java source line #54	-> byte code offset #0
    //   Java source line #64	-> byte code offset #7
    //   Java source line #100	-> byte code offset #17
    //   Java source line #101	-> byte code offset #25
    //   Java source line #102	-> byte code offset #36
    //   Java source line #103	-> byte code offset #39
    //   Java source line #107	-> byte code offset #47
    //   Java source line #109	-> byte code offset #59
    //   Java source line #104	-> byte code offset #70
    //   Java source line #114	-> byte code offset #80
    //   Java source line #112	-> byte code offset #84
    //   Java source line #103	-> byte code offset #96
    //   Java source line #110	-> byte code offset #107
    //   Java source line #179	-> byte code offset #118
    //   Java source line #117	-> byte code offset #119
    //   Java source line #118	-> byte code offset #127
    //   Java source line #120	-> byte code offset #139
    //   Java source line #121	-> byte code offset #147
    //   Java source line #122	-> byte code offset #155
    //   Java source line #125	-> byte code offset #160
    //   Java source line #135	-> byte code offset #168
    //   Java source line #126	-> byte code offset #181
    //   Java source line #127	-> byte code offset #183
    //   Java source line #153	-> byte code offset #194
    //   Java source line #154	-> byte code offset #205
    //   Java source line #156	-> byte code offset #217
    //   Java source line #157	-> byte code offset #225
    //   Java source line #148	-> byte code offset #233
    //   Java source line #127	-> byte code offset #240
    //   Java source line #134	-> byte code offset #261
    //   Java source line #140	-> byte code offset #269
    //   Java source line #150	-> byte code offset #274
    //   Java source line #152	-> byte code offset #294
    //   Java source line #158	-> byte code offset #306
    //   Java source line #126	-> byte code offset #320
    //   Java source line #161	-> byte code offset #328
    //   Java source line #179	-> byte code offset #351
    //   Java source line #127	-> byte code offset #362
    //   Java source line #129	-> byte code offset #364
    //   Java source line #131	-> byte code offset #427
    //   Java source line #133	-> byte code offset #467
    //   Java source line #140	-> byte code offset #470
    //   Java source line #166	-> byte code offset #484
    //   Java source line #167	-> byte code offset #494
    //   Java source line #126	-> byte code offset #510
    //   Java source line #171	-> byte code offset #518
    //   Java source line #173	-> byte code offset #535
    //   Java source line #140	-> byte code offset #543
    //   Java source line #135	-> byte code offset #554
    //   Java source line #168	-> byte code offset #562
    //   Java source line #174	-> byte code offset #573
    //   Java source line #134	-> byte code offset #625
    //   Java source line #135	-> byte code offset #637
    //   Java source line #137	-> byte code offset #639
    //   Java source line #140	-> byte code offset #703
    //   Java source line #134	-> byte code offset #732
    //   Java source line #135	-> byte code offset #734
    //   Java source line #144	-> byte code offset #745
    //   Java source line #146	-> byte code offset #753
    //   Java source line #147	-> byte code offset #761
    //   Java source line #126	-> byte code offset #769
    //   Java source line #127	-> byte code offset #786
    //   Java source line #134	-> byte code offset #794
    //   Java source line #60	-> byte code offset #805
    //   Java source line #68	-> byte code offset #853
    //   Java source line #69	-> byte code offset #856
    //   Java source line #70	-> byte code offset #859
    //   Java source line #90	-> byte code offset #866
    //   Java source line #91	-> byte code offset #905
    //   Java source line #78	-> byte code offset #909
    //   Java source line #73	-> byte code offset #921
    //   Java source line #78	-> byte code offset #931
    //   Java source line #80	-> byte code offset #949
    //   Java source line #81	-> byte code offset #957
    //   Java source line #85	-> byte code offset #966
    //   Java source line #86	-> byte code offset #975
    //   Java source line #89	-> byte code offset #997
    //   Java source line #71	-> byte code offset #1009
    //   Java source line #72	-> byte code offset #1016
    //   Java source line #75	-> byte code offset #1024
    //   Java source line #58	-> byte code offset #1033
    //   Java source line #59	-> byte code offset #1040
    //   Java source line #114	-> byte code offset #1048
    //   Java source line #96	-> byte code offset #1049
    //   Java source line #91	-> byte code offset #1050
    //   Java source line #180	-> byte code offset #1051
    //   Java source line #181	-> byte code offset #1053
    //   Java source line #183	-> byte code offset #1099
    //   Java source line #94	-> byte code offset #1101
    //   Java source line #95	-> byte code offset #1112
    //   Java source line #96	-> byte code offset #1120
    //   Java source line #95	-> byte code offset #1124
    //   Java source line #55	-> byte code offset #1137
    // Exception table:
    //   from	to	target	type
    //   17	118	1051	java/lang/Exception
    //   119	805	1051	java/lang/Exception
    //   853	1033	1051	java/lang/Exception
    //   1101	1137	1051	java/lang/Exception
  }
  
  private final String a(IHTTPStreamerApplicationContext paramIHTTPStreamerApplicationContext, IDvrStreamStore paramIDvrStreamStore, List<DvrMbrShiftedEntry> paramList)
  {
    StringBuffer localStringBuffer = new StringBuffer();
    DvrBaseEncryptionInfoDelegate localDvrBaseEncryptionInfoDelegate = getChunkEncryptionDelegate(paramIDvrStreamStore);
    IDvrEncryptionInfo localIDvrEncryptionInfo;
    PlayReadyKeyInfo localPlayReadyKeyInfo;
    String str;
    label42:
    label53:
    Object localObject2;
    DvrManifestEntry localDvrManifestEntry;
    if (localDvrBaseEncryptionInfoDelegate != null)
    {
      break label372;
      for (;;)
      {
        break label366;
        for (;; !(localIDvrEncryptionInfo instanceof PlayReadyKeyInfo))
        {
          localPlayReadyKeyInfo = (PlayReadyKeyInfo)localIDvrEncryptionInfo;
          str = ""; break;
        }
        Object localObject1;
        WMSLoggerFactory.getLogger(a).error(String.format(Base64.endsWith(24 + -1, "2k7}~hXp|rxrwmjhNfoeP)~S50xvk.0r7}wyRr{q%e2b&<&|b;i<qi>n"), new Object[] { b, paramIDvrStreamStore.getContextStr(), Long.valueOf(localObject1), localIDvrEncryptionInfo, ((Exception)localObject2).getMessage(), localDvrManifestEntry }), (Throwable)localObject2);
        e += 1;
      }
    }
    label366:
    label372:
    for (;; paramList.isEmpty())
    {
      DvrMbrShiftedEntry localDvrMbrShiftedEntry = (DvrMbrShiftedEntry)paramList.get(0);
      localDvrManifestEntry = entry;
      
      long l = localDvrManifestEntry.getIndex();
      
      localIDvrEncryptionInfo = localDvrBaseEncryptionInfoDelegate.getEncryptionInfo(2, (int)l, localDvrManifestEntry, paramIHTTPStreamerApplicationContext, paramIDvrStreamStore);
      if (localIDvrEncryptionInfo != null)
      {
        break label42;
        try
        {
          localObject2 = localPlayReadyKeyInfo.getProtectionHeaderBytes(10240);
          if (localObject2 == null) {}
          for (;; str = Base64.encodeBytes((byte[])localObject2, 8))
          {
            localStringBuffer.append(Base64.endsWith('?' / 49, ":Wzf~noyg`~/\030"));
            localStringBuffer.append(JSON.copyValueOf("b\0172.6&'1/(&\001/*((<o\003(!'18\037\023e{c\032li\030o78/:<16*<;2=!LL6\"<W%!WS' !/]%(<!", 114 + -20) + str + Base64.endsWith(60 + 39, "k\0254(<,)?%\" \0075066&k") + "\n");
            localStringBuffer.append(Base64.endsWith(4 + 43, "3?A`|`pucqvt%\026")); break;
          }
          WMSLoggerFactory.getLogger(a).warn(String.format(JSON.copyValueOf("q&x0=-\0375?/'/4(--\r+ (``j.\".<6 %;<:u?9>6z2/}00t!vzt`&WdhsYiljv[tkZzsy989u';l.", 46 - -38), new Object[] { b, localIDvrEncryptionInfo }));
          localIDvrEncryptionInfo = null;
        }
        catch (Exception localException) {}
        if (e >= 8) {
          break;
        }
        break label53;
      }
      return localStringBuffer.toString();
    }
  }
  
  protected long determineDvrWindowDuration(int paramInt)
  {
    long l = 0L;
    if (paramInt <= 0) {}
    for (;; l = paramInt * 1000) {
      return l;
    }
  }
  
  /* Error */
  public String getMultibitratePlaylist(IHTTPStreamerApplicationContext arg1, java.util.Map<String, String> arg2, IApplicationInstance arg3, com.wowza.wms.httpstreamer.model.DvrSessionInfo arg4, String arg5, boolean arg6, com.wowza.wms.httpstreamer.smoothstreaming.livestreampacketizer.SmoothStreamingLivePlaylist arg7, com.wowza.wms.dvr.DvrPlaylistRequest arg8, IDvrMbrPlaylistAlignment arg9)
  {
    // Byte code:
    //   0: new 154	java/lang/StringBuffer
    //   3: dup
    //   4: invokespecial 278	java/lang/StringBuffer:<init>	()V
    //   7: astore 10
    //   9: aload_0
    //   10: aload_1
    //   11: invokevirtual 293	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:isDebug	(Lcom/wowza/wms/httpstreamer/model/IHTTPStreamerApplicationContext;)Z
    //   14: istore 11
    //   16: iload 11
    //   18: ifeq +1054 -> 1072
    //   21: goto +517 -> 538
    //   24: astore 39
    //   26: aload 14
    //   28: getfield 246	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterContextSmooth:f	Z
    //   31: ifeq +387 -> 418
    //   34: goto +1586 -> 1620
    //   37: aload 8
    //   39: invokevirtual 292	com/wowza/wms/dvr/DvrPlaylistRequest:isLiveRequest	()Z
    //   42: ifeq +2059 -> 2101
    //   45: goto +1167 -> 1212
    //   48: aload 34
    //   50: invokestatic 207	com/wowza/util/StringUtils:isEmpty	(Ljava/lang/String;)Z
    //   53: ifne +2125 -> 2178
    //   56: goto +836 -> 892
    //   59: aload 24
    //   61: invokeinterface 377 1 0
    //   66: ifeq +1500 -> 1566
    //   69: goto +859 -> 928
    //   72: iload 16
    //   74: istore 39
    //   76: goto +532 -> 608
    //   79: ldc_w 315
    //   82: goto +288 -> 370
    //   85: aload_3
    //   86: invokeinterface 378 1 0
    //   91: goto +1683 -> 1774
    //   94: aload 9
    //   96: aload 20
    //   98: invokeinterface 381 1 0
    //   103: invokeinterface 386 2 0
    //   108: astore 37
    //   110: goto +340 -> 450
    //   113: aload_0
    //   114: aload_1
    //   115: aload 42
    //   117: aload 50
    //   119: invokespecial 202	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:a	(Lcom/wowza/wms/httpstreamer/model/IHTTPStreamerApplicationContext;Lcom/wowza/wms/dvr/IDvrStreamStore;Ljava/util/List;)Ljava/lang/String;
    //   122: astore 32
    //   124: aload 33
    //   126: aload_0
    //   127: aload 42
    //   129: aload 22
    //   131: invokeinterface 391 1 0
    //   136: aload 50
    //   138: aload 47
    //   140: invokespecial 394	com/wowza/wms/httpstreamer/smoothstreaming/dvr/DvrPlayerAdapterSmoothStreaming:a	(Lcom/wowza/wms/dvr/IDvrStreamStore;ILjava/util/List;Lcom/wowza/wms/dvr/DvrManifestCodecEntry;)Ljava/lang/String;
    //   143: 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49

Further reading...

For more information on Java 1.5 Tiger, you may find Java 1.5 Tiger, A developer's Notebook by D. Flanagan and B. McLaughlin from O'Reilly of interest.

New!JAR listings


Copyright 2006-2019. Infinite Loop Ltd