![]() |
![]() |
wms-stream-record16:54:35.560 INFO jd.cli.Main - Decompiling wms-stream-record.jar package com.wowza.wms.stream.record; import com.wowza.util.Base64; import com.wowza.util.JSON; import com.wowza.wms.application.WMSProperties; import com.wowza.wms.stream.MediaStream; import com.wowza.wms.stream.MediaStreamMap; public class MediaStreamRecord extends MediaStream { private RecordReceiver a = null; public MediaStreamRecord() { a = new RecordReceiver(this); } public void init(MediaStreamMap paramMediaStreamMap, int paramInt, WMSProperties paramWMSProperties) { super.init(paramMediaStreamMap, paramInt, paramWMSProperties); boolean bool1 = getProperties().getPropertyBoolean(JSON.copyValueOf("a}kirssXv,$", 11 * 5), false); boolean bool2 = getProperties().getPropertyBoolean(JSON.copyValueOf("pfgjtc_hcJb|Yyuw|_poQjxw~", 108 + 54), false); boolean bool3 = getProperties().getPropertyBoolean(Base64.endsWith(-41 - 38, "cwp{grVm}stK|wk\006.0\025-!#(\003,3\r>,#*"), false); boolean bool4 = getProperties().getPropertyBoolean(Base64.endsWith(117 + -105, "~hm`buG`qVw{{lvzhxz^ueklPlkbkfnn"), true); a.setVersionFile(bool1); a.setWaitForVideoKeyFrame(bool2); a.setAudioWaitForVideoKeyFrame(bool3); a.setUseCalculatedAudioTimecodes(bool4); a.init(); } public void resetRecord() { a.resetRecord(); } public void addVideoData(byte[] paramArrayOfByte, int paramInt1, int paramInt2) { long l = 0L; int i = 0; for (;; monitorenter) { try { l = videoTC; i = videoSize; } finally { Object localObject2; for (;;) {} } a.addVideoData(paramArrayOfByte, paramInt1, paramInt2, i, l); return; } throw ((Throwable)localObject2); } /* Error */ public void addDataData(byte[] paramArrayOfByte, int paramInt1, int paramInt2) { // Byte code: // 0: lconst_0 // 1: lstore 4 // 3: iconst_0 // 4: istore 6 // 6: aload_0 // 7: getfield 76 com/wowza/wms/stream/MediaStream:lock Ljava/lang/Object; // 10: dup // 11: astore 7 // 13: goto +11 -> 24 // 16: astore 8 // 18: aload 7 // 20: monitorexit // 21: goto +22 -> 43 // 24: monitorenter // 25: goto +24 -> 49 // 28: aload_0 // 29: getfield 13 com/wowza/wms/stream/record/MediaStreamRecord:a Lcom/wowza/wms/stream/record/RecordReceiver; // 32: aload_1 // 33: iload_2 // 34: iload_3 // 35: iload 6 // 37: lload 4 // 39: invokevirtual 96 com/wowza/wms/stream/record/RecordReceiver:addDataData ([BIIIJ)V // 42: return // 43: aload 8 // 45: athrow // 46: goto -18 -> 28 // 49: aload_0 // 50: getfield 99 com/wowza/wms/stream/MediaStream:dataTC J // 53: lstore 4 // 55: aload_0 // 56: getfield 102 com/wowza/wms/stream/MediaStream:dataSize I // 59: istore 6 // 61: aload 7 // 63: monitorexit // 64: goto -18 -> 46 // Line number table: // Java source line #51 -> byte code offset #0 // Java source line #52 -> byte code offset #3 // Java source line #53 -> byte code offset #6 // Java source line #57 -> byte code offset #16 // Java source line #53 -> byte code offset #24 // Java source line #58 -> byte code offset #28 // Java source line #59 -> byte code offset #42 // Java source line #57 -> byte code offset #43 // Java source line #55 -> byte code offset #49 // Java source line #56 -> byte code offset #55 // Java source line #57 -> byte code offset #61 // Local variable table: // start length slot name signature // 0 67 0 this MediaStreamRecord // 0 67 1 paramArrayOfByte byte[] // 0 67 2 paramInt1 int // 0 67 3 paramInt2 int // 1 53 4 l long // 4 56 6 i int // 11 51 7 localObject1 Object // 16 28 8 localObject2 Object // Exception table: // from to target type // 16 24 16 finally // 49 67 16 finally } public void addAudioData(byte[] paramArrayOfByte, int paramInt1, int paramInt2) { long l = 0L; int i = 0; Object localObject1; for (;;) { a.addAudioData(paramArrayOfByte, paramInt1, paramInt2, i, l); return; for (;;) { Object localObject2; throw ((Throwable)localObject2); for (;; monitorenter) { try { l = audioTC; i = audioSize; break; } finally {} } } } } public int getAudioMissing() { int i = 0; Object localObject1; for (;;) { return a.getAudioMissing(i); for (;;) { Object localObject2; throw ((Throwable)localObject2); for (;; monitorenter) { try { i = audioSize; break; } finally {} } } } } /* Error */ public int getVideoMissing() { // Byte code: // 0: iconst_0 // 1: istore_1 // 2: aload_0 // 3: getfield 76 com/wowza/wms/stream/MediaStream:lock Ljava/lang/Object; // 6: dup // 7: astore_2 // 8: goto +30 -> 38 // 11: aload_0 // 12: getfield 13 com/wowza/wms/stream/record/MediaStreamRecord:a Lcom/wowza/wms/stream/record/RecordReceiver; // 15: iload_1 // 16: invokevirtual 119 com/wowza/wms/stream/record/RecordReceiver:getVideoMissing (I)I // 19: ireturn // 20: astore_3 // 21: aload_2 // 22: monitorexit // 23: goto +13 -> 36 // 26: aload_0 // 27: getfield 84 com/wowza/wms/stream/MediaStream:videoSize I // 30: istore_1 // 31: aload_2 // 32: monitorexit // 33: goto +9 -> 42 // 36: aload_3 // 37: athrow // 38: monitorenter // 39: goto -13 -> 26 // 42: goto -31 -> 11 // Line number table: // Java source line #85 -> byte code offset #0 // Java source line #86 -> byte code offset #2 // Java source line #90 -> byte code offset #11 // Java source line #89 -> byte code offset #20 // Java source line #88 -> byte code offset #26 // Java source line #89 -> byte code offset #31 // Java source line #86 -> byte code offset #38 // Java source line #89 -> byte code offset #42 // Local variable table: // start length slot name signature // 0 45 0 this MediaStreamRecord // 1 30 1 i int // 7 25 2 localObject1 Object // 20 17 3 localObject2 Object // Exception table: // from to target type // 20 26 20 finally // 26 36 20 finally } /* Error */ public int getDataMissing() { // Byte code: // 0: iconst_0 // 1: istore_1 // 2: aload_0 // 3: getfield 76 com/wowza/wms/stream/MediaStream:lock Ljava/lang/Object; // 6: dup // 7: astore_2 // 8: goto +29 -> 37 // 11: astore_3 // 12: aload_2 // 13: monitorexit // 14: goto +27 -> 41 // 17: nop // 18: aload_0 // 19: getfield 13 com/wowza/wms/stream/record/MediaStreamRecord:a Lcom/wowza/wms/stream/record/RecordReceiver; // 22: iload_1 // 23: invokevirtual 122 com/wowza/wms/stream/record/RecordReceiver:getDataMissing (I)I // 26: ireturn // 27: aload_0 // 28: getfield 102 com/wowza/wms/stream/MediaStream:dataSize I // 31: istore_1 // 32: aload_2 // 33: monitorexit // 34: goto -17 -> 17 // 37: monitorenter // 38: goto -11 -> 27 // 41: aload_3 // 42: athrow // Line number table: // Java source line #95 -> byte code offset #0 // Java source line #96 -> byte code offset #2 // Java source line #99 -> byte code offset #11 // Java source line #100 -> byte code offset #18 // Java source line #98 -> byte code offset #27 // Java source line #99 -> byte code offset #32 // Java source line #96 -> byte code offset #37 // Java source line #99 -> byte code offset #41 // Local variable table: // start length slot name signature // 0 43 0 this MediaStreamRecord // 1 31 1 i int // 7 26 2 localObject1 Object // 11 31 3 localObject2 Object // Exception table: // from to target type // 11 17 11 finally // 27 37 11 finally } public void publish() { a.publish(); super.reset(); } public void trim() {} public boolean play() { return false; } public void resetNoLookup() {} public void reset() {} public void updateLoggingValues() { super.updateLoggingValues(); if (isPlay()) {} for (;; a.updateLoggingValues()) { return; } } public double length() { double d = 0.0D; if (isPlay()) { break label25; } for (;;) { return d;d = a.length(); continue; label25: d = super.length(); } } public long size() { long l = 0L; if (isPlay()) { break label25; } for (;;) { return l;l = a.size(); continue; label25: l = super.size(); } } public void startPublishing() { a.startPublishing(); } public void stopPublishing() { a.stopPublishing(); } public void setVersionFile(boolean paramBoolean) { a.setVersionFile(paramBoolean); } public void startAudioPacket() { a.startAudioPacket(); } public void startVideoPacket() { a.startVideoPacket(); } public void startDataPacket() { a.startDataPacket(); } public int getPublishVideoCodecId() { return a.getVideoCodecId(); } public int getPublishAudioCodecId() { return a.getAudioCodecId(); } public void setPublishVideoCodecId(int paramInt) { a.setVideoCodecId(paramInt); } public void setPublishAudioCodecId(int paramInt) { a.setAudioCodecId(paramInt); } } /* Location: * Qualified Name: com.wowza.wms.stream.record.MediaStreamRecord * Java Class Version: 6 (50.0) * JD-Core Version: 0.7.1 */ package com.wowza.wms.stream.record; import com.wowza.util.Base64; import com.wowza.util.JSON; import com.wowza.wms.stream.IMediaStream; import com.wowza.wms.stream.IMediaWriter; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class MediaStreamRecordWriter implements Runnable { boolean a = false; private IMediaStream b = null; private List c = null; private long d = 0L; private IMediaWriter e = null; public MediaStreamRecordWriter(IMediaStream paramIMediaStream, IMediaWriter paramIMediaWriter) { b = paramIMediaStream; c = new ArrayList(); e = paramIMediaWriter; } /* Error */ public void run() { // Byte code: // 0: aconst_null // 1: astore_1 // 2: aconst_null // 3: astore_2 // 4: aconst_null // 5: astore_3 // 6: aconst_null // 7: astore 4 // 9: aconst_null // 10: astore 5 // 12: aconst_null // 13: astore 6 // 15: aconst_null // 16: astore 7 // 18: iconst_0 // 19: istore 8 // 21: iconst_0 // 22: istore 9 // 24: aload_0 // 25: dup // 26: astore 10 // 28: goto +54 -> 82 // 31: aload_0 // 32: dup // 33: getfield 32 com/wowza/wms/stream/record/MediaStreamRecordWriter:e Lcom/wowza/wms/stream/IMediaWriter; // 36: invokeinterface 44 1 0 // 41: putfield 30 com/wowza/wms/stream/record/MediaStreamRecordWriter:d J // 44: goto +317 -> 361 // 47: aload_0 // 48: getfield 32 com/wowza/wms/stream/record/MediaStreamRecordWriter:e Lcom/wowza/wms/stream/IMediaWriter; // 51: aload_1 // 52: aload_2 // 53: aload_3 // 54: aload 4 // 56: aload 5 // 58: aload 6 // 60: aload 7 // 62: iload 8 // 64: iload 9 // 66: invokeinterface 48 10 0 // 71: iload 9 // 73: ifeq +288 -> 361 // 76: goto -45 -> 31 // 79: goto -32 -> 47 // 82: monitorenter // 83: goto +12 -> 95 // 86: aload 10 // 88: monitorexit // 89: goto -10 -> 79 // 92: goto +304 -> 396 // 95: aload_0 // 96: getfield 28 com/wowza/wms/stream/record/MediaStreamRecordWriter:c Ljava/util/List; // 99: invokeinterface 54 1 0 // 104: ifle +6 -> 110 // 107: goto +18 -> 125 // 110: aload_0 // 111: iconst_0 // 112: putfield 24 com/wowza/wms/stream/record/MediaStreamRecordWriter:a Z // 115: aload_0 // 116: invokevirtual 57 java/lang/Object:notify ()V // 119: aload 10 // 121: monitorexit // 122: goto -30 -> 92 // 125: aload_0 // 126: getfield 28 com/wowza/wms/stream/record/MediaStreamRecordWriter:c Ljava/util/List; // 129: iconst_0 // 130: invokeinterface 61 2 0 // 135: checkcast 63 java/util/Map // 138: astore 11 // 140: aload 11 // 142: iconst_5 // 143: bipush 57 // 145: imul // 146: ldc 65 // 148: invokestatic 71 com/wowza/util/Base64:endsWith (ILjava/lang/String;)Ljava/lang/String; // 151: invokeinterface 74 2 0 // 156: checkcast 50 java/util/List // 159: astore_1 // 160: aload 11 // 162: bipush 31 // 164: iconst_3 // 165: imul // 166: ldc 76 // 168: invokestatic 71 com/wowza/util/Base64:endsWith (ILjava/lang/String;)Ljava/lang/String; // 171: invokeinterface 74 2 0 // 176: checkcast 50 java/util/List // 179: astore_2 // 180: aload 11 // 182: sipush 1111 // 185: sipush 162 // 188: idiv // 189: ldc 78 // 191: invokestatic 71 com/wowza/util/Base64:endsWith (ILjava/lang/String;)Ljava/lang/String; // 194: invokeinterface 74 2 0 // 199: checkcast 50 java/util/List // 202: astore_3 // 203: aload 11 // 205: bipush 13 // 207: bipush 42 // 209: iadd // 210: ldc 80 // 212: invokestatic 71 com/wowza/util/Base64:endsWith (ILjava/lang/String;)Ljava/lang/String; // 215: invokeinterface 74 2 0 // 220: checkcast 50 java/util/List // 223: astore 4 // 225: aload 11 // 227: sipush 971 // 230: sipush 184 // 233: idiv // 234: ldc 82 // 236: invokestatic 71 com/wowza/util/Base64:endsWith (ILjava/lang/String;)Ljava/lang/String; // 239: invokeinterface 74 2 0 // 244: checkcast 50 java/util/List // 247: astore 5 // 249: aload 11 // 251: bipush 9 // 253: bipush -5 // 255: isub // 256: ldc 84 // 258: invokestatic 71 com/wowza/util/Base64:endsWith (ILjava/lang/String;)Ljava/lang/String; // 261: invokeinterface 74 2 0 // 266: checkcast 50 java/util/List // 269: astore 6 // 271: aload 11 // 273: bipush 38 // 275: bipush -33 // 277: isub // 278: ldc 86 // 280: invokestatic 71 com/wowza/util/Base64:endsWith (ILjava/lang/String;)Ljava/lang/String; // 283: invokeinterface 74 2 0 // 288: checkcast 50 java/util/List // 291: astore 7 // 293: aload 11 // 295: bipush 12 // 297: bipush 109 // 299: iadd // 300: ldc 88 // 302: invokestatic 71 com/wowza/util/Base64:endsWith (ILjava/lang/String;)Ljava/lang/String; // 305: invokeinterface 74 2 0 // 310: checkcast 90 java/lang/Boolean // 313: invokevirtual 94 java/lang/Boolean:booleanValue ()Z // 316: istore 8 // 318: aload 11 // 320: sipush 188 // 323: bipush 57 // 325: idiv // 326: ldc 96 // 328: invokestatic 71 com/wowza/util/Base64:endsWith (ILjava/lang/String;)Ljava/lang/String; // 331: invokeinterface 74 2 0 // 336: checkcast 90 java/lang/Boolean // 339: invokevirtual 94 java/lang/Boolean:booleanValue ()Z // 342: istore 9 // 344: aload_0 // 345: getfield 28 com/wowza/wms/stream/record/MediaStreamRecordWriter:c Ljava/util/List; // 348: iconst_0 // 349: invokeinterface 99 2 0 // 354: pop // 355: goto -269 -> 86 // 358: aload 12 // 360: athrow // 361: goto -361 -> 0 // 364: astore 12 // 366: aload 10 // 368: monitorexit // 369: goto -11 -> 358 // 372: return // 373: astore_1 // 374: ldc 101 // 376: invokestatic 107 com/wowza/wms/logging/WMSLoggerFactory:getLogger (Ljava/lang/Class;)Lcom/wowza/wms/logging/WMSLogger; // 379: bipush 72 // 381: bipush 61 // 383: iadd // 384: ldc 109 // 386: invokestatic 71 com/wowza/util/Base64:endsWith (ILjava/lang/String;)Ljava/lang/String; // 389: aload_1 // 390: invokevirtual 115 com/wowza/wms/logging/WMSLogger:error (Ljava/lang/String;Ljava/lang/Throwable;)V // 393: goto -21 -> 372 // 396: goto -24 -> 372 // Line number table: // Java source line #31 -> byte code offset #0 // Java source line #32 -> byte code offset #2 // Java source line #33 -> byte code offset #4 // Java source line #34 -> byte code offset #6 // Java source line #35 -> byte code offset #9 // Java source line #36 -> byte code offset #12 // Java source line #37 -> byte code offset #15 // Java source line #38 -> byte code offset #18 // Java source line #39 -> byte code offset #21 // Java source line #41 -> byte code offset #24 // Java source line #69 -> byte code offset #31 // Java source line #67 -> byte code offset #47 // Java source line #68 -> byte code offset #71 // Java source line #65 -> byte code offset #79 // Java source line #41 -> byte code offset #82 // Java source line #65 -> byte code offset #86 // Java source line #63 -> byte code offset #92 // Java source line #43 -> byte code offset #95 // Java source line #61 -> byte code offset #110 // Java source line #62 -> byte code offset #115 // Java source line #63 -> byte code offset #119 // Java source line #45 -> byte code offset #125 // Java source line #47 -> byte code offset #140 // Java source line #48 -> byte code offset #160 // Java source line #49 -> byte code offset #180 // Java source line #50 -> byte code offset #203 // Java source line #51 -> byte code offset #225 // Java source line #52 -> byte code offset #249 // Java source line #53 -> byte code offset #271 // Java source line #54 -> byte code offset #293 // Java source line #55 -> byte code offset #318 // Java source line #57 -> byte code offset #344 // Java source line #58 -> byte code offset #355 // Java source line #65 -> byte code offset #358 // Java source line #122 -> byte code offset #361 // Java source line #65 -> byte code offset #364 // Java source line #128 -> byte code offset #372 // Java source line #124 -> byte code offset #373 // Java source line #126 -> byte code offset #374 // Java source line #127 -> byte code offset #396 // Exception table: // from to target type // 86 92 364 finally // 95 358 364 finally // 364 372 364 finally // 0 372 373 java/lang/Exception } public long getDuration() { return d; } public void setDuration(long paramLong) { d = paramLong; } public boolean isRunning() { return a; } public void setRunning(boolean paramBoolean) { a = paramBoolean; } public void add(List paramList1, List paramList2, List paramList3, List paramList4, List paramList5, List paramList6, List paramList7, boolean paramBoolean1, boolean paramBoolean2) { HashMap localHashMap = new HashMap(); localHashMap.put(JSON.copyValueOf("~5%+,\024$%,-=9", 11 * 29), paramList1); localHashMap.put(JSON.copyValueOf("}eik`@pqxqae", 43 * 33), paramList2); localHashMap.put(JSON.copyValueOf("kqesCuv}rlj", 14 - -1), paramList3); localHashMap.put(Base64.endsWith(53 + -50, "bqaoh\\Jy"), paramList4); localHashMap.put(Base64.endsWith('?' / '�', "umach\\Jy"), paramList5); localHashMap.put(Base64.endsWith(12 - 35, "-+?-\031\r<"), paramList6); localHashMap.put(JSON.copyValueOf("agsi]s{i~", '?' / '?'), paramList7); localHashMap.put(Base64.endsWith(41 - 20, "|eQqkio"), new Boolean(paramBoolean1)); localHashMap.put(Base64.endsWith(-9 - -54, "d}Cqbf"), new Boolean(paramBoolean2)); c.add(localHashMap); } } /* Location: * Qualified Name: com.wowza.wms.stream.record.MediaStreamRecordWriter * Java Class Version: 6 (50.0) * JD-Core Version: 0.7.1 */ package com.wowza.wms.stream.record; import com.wowza.util.Base64; import com.wowza.util.JSON; import com.wowza.wms.amf.AMFData; import com.wowza.wms.amf.AMFDataList; import com.wowza.wms.amf.AMFDataMixedArray; import com.wowza.wms.amf.AMFDataObj; import com.wowza.wms.application.WMSProperties; import com.wowza.wms.logging.WMSLogger; import com.wowza.wms.logging.WMSLoggerFactory; import com.wowza.wms.stream.IMediaStream; import com.wowza.wms.stream.IMediaWriter; import com.wowza.wms.stream.MediaStreamMap; import com.wowza.wms.stream.MediaWriterFactory; import com.wowza.wms.vhost.IVHost; import java.nio.ByteBuffer; import java.util.ArrayList; import java.util.Iterator; import java.util.LinkedList; import java.util.List; import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; public class RecordReceiver { public static final int RECORD_CHUNKTIME = 5000; public static final int MAX_WAITING_PACKETS = 100000; class RecordPacket { ByteBuffer a = null; int b = -1; long c = -1L; long d = -1L; long e = -1L; public RecordPacket(ByteBuffer paramByteBuffer, long paramLong1, long paramLong2, int paramInt) { a = paramByteBuffer; c = paramLong1; d = paramLong2; b = paramInt; e = System.currentTimeMillis(); } public RecordPacket(ByteBuffer paramByteBuffer, long paramLong1, long paramLong2) { this(paramByteBuffer, paramLong1, paramLong2, -1); } } class CommitData { List<RecordReceiver.RecordPacket> a = null; List<RecordReceiver.RecordPacket> b = null; List<RecordReceiver.RecordPacket> c = null; boolean d = false; long e = -1L; CommitData() {} public void init() { if (d) {} for (;;) { return;a = new ArrayList();b = new ArrayList();c = new ArrayList();d = true; } } public void addAudio(RecordReceiver.RecordPacket paramRecordPacket) { init(); a.add(paramRecordPacket); if (e >= 0L) {} for (;; e = c) { return; } } public void addVideo(RecordReceiver.RecordPacket paramRecordPacket) { init(); b.add(paramRecordPacket); if (e >= 0L) {} for (;; e = c) { return; } } public void addData(RecordReceiver.RecordPacket paramRecordPacket) { init(); c.add(paramRecordPacket); if (e >= 0L) {} for (;; e = c) { return; } } public boolean isInited() { return d; } } IMediaStream a = null; private ByteBuffer b = null; private ByteBuffer c = null; private ByteBuffer d = null; private int e = 100000; private int f = 5000; private List<RecordPacket> g = new LinkedList(); private List<RecordPacket> h = new LinkedList(); private List<RecordPacket> i = new LinkedList(); private long j = 0L; private long k = 0L; private long l = 0L; private Object m = new Object(); private long n = -1L; private long o = -1L; private long p = -1L; private boolean q = true; private boolean r = false; private boolean s = false; private boolean t = false; private long u = -1L; private long v = 0L; private ThreadPoolExecutor w = null; private MediaStreamRecordWriter x = null; private IMediaWriter y = null; private boolean z = true; private boolean _ = false; private boolean aa = false; private boolean ab = false; private boolean ac = false; private boolean ad = true; private Object ae = new Object(); private int af = -1; private int ag = -1; private boolean ah = false; private boolean ai = true; public RecordReceiver(IMediaStream paramIMediaStream) { a = paramIMediaStream; } public void init() { z = true; WMSProperties localWMSProperties = a.getProperties(); if (localWMSProperties == null) {} for (;;) { return;ah = localWMSProperties.getPropertyBoolean(JSON.copyValueOf("v`ehzmNnnxi]ur}apBd~l|i", '?' / 89), ah);e = localWMSProperties.getPropertyInt(Base64.endsWith(44 - 25, "aqvye|T{cK|wkioeSefmb|z"), e);f = localWMSProperties.getPropertyInt(JSON.copyValueOf("wcdg{nFecLzvwwa@|{r", '?' / '?'), f); } } private final ThreadPoolExecutor a() { if (w != null) {} for (;; w = new ThreadPoolExecutor(1, 1, 3000L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue())) { return w; } } /* Error */ private final void b() { // Byte code: // 0: aload_0 // 1: getfield 118 com/wowza/wms/stream/record/RecordReceiver:w Ljava/util/concurrent/ThreadPoolExecutor; // 4: ifnull +59 -> 63 // 7: goto +46 -> 53 // 10: astore_1 // 11: ldc 2 // 13: invokestatic 204 com/wowza/wms/logging/WMSLoggerFactory:getLogger (Ljava/lang/Class;)Lcom/wowza/wms/logging/WMSLogger; // 16: new 206 java/lang/StringBuilder // 19: dup // 20: invokespecial 207 java/lang/StringBuilder:<init> ()V // 23: ldc -47 // 25: sipush 469 // 28: bipush 76 // 30: idiv // 31: invokestatic 159 com/wowza/util/JSON:copyValueOf (Ljava/lang/String;I)Ljava/lang/String; // 34: invokevirtual 213 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; // 37: aload_1 // 38: invokevirtual 217 java/lang/Exception:toString ()Ljava/lang/String; // 41: invokevirtual 213 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; // 44: invokevirtual 218 java/lang/StringBuilder:toString ()Ljava/lang/String; // 47: invokevirtual 224 com/wowza/wms/logging/WMSLogger:error (Ljava/lang/String;)V // 50: goto +13 -> 63 // 53: aload_0 // 54: getfield 118 com/wowza/wms/stream/record/RecordReceiver:w Ljava/util/concurrent/ThreadPoolExecutor; // 57: invokevirtual 227 java/util/concurrent/ThreadPoolExecutor:shutdown ()V // 60: goto +9 -> 69 // 63: aload_0 // 64: aconst_null // 65: putfield 118 com/wowza/wms/stream/record/RecordReceiver:w Ljava/util/concurrent/ThreadPoolExecutor; // 68: return // 69: goto -6 -> 63 // Line number table: // Java source line #161 -> byte code offset #0 // Java source line #167 -> byte code offset #10 // Java source line #169 -> byte code offset #11 // Java source line #165 -> byte code offset #53 // Java source line #172 -> byte code offset #63 // Java source line #173 -> byte code offset #68 // Java source line #170 -> byte code offset #69 // Local variable table: // start length slot name signature // 0 72 0 this RecordReceiver // 10 28 1 localException Exception // Exception table: // from to target type // 53 63 10 java/lang/Exception } private final IMediaWriter a(IMediaStream paramIMediaStream) { String str = paramIMediaStream.getExt().toLowerCase(); IMediaWriter localIMediaWriter = MediaWriterFactory.getInstance(paramIMediaStream.getStreams().getVHost().getMediaWriters(), str, paramIMediaStream); localIMediaWriter.setVersionFile(aa); localIMediaWriter.setWaitForVideoKeyFrame(ab); localIMediaWriter.setAudioWaitForVideoKeyFrame(ac); localIMediaWriter.setUseCalculatedAudioTimecodes(ad); return localIMediaWriter; } public void startPublishing() { if (z) {} for (;; resetRecord()) { z = true; _ = true; return; } } public void stopPublishing() {} public void resetRecord() { Object localObject1; for (;;) { ai = true; n = -1L; o = -1L; p = -1L; q = true; r = false; s = false; t = false; u = -1L; y = null; x = null; return; for (;;) { try { g = new LinkedList(); h = new LinkedList(); i = new LinkedList(); j = 0L; k = 0L; l = 0L; } finally {} continue; for (;;) { Object localObject2; throw ((Throwable)localObject2); } } } } /* Error */ private final void c() { // Byte code: // 0: aload_0 // 1: getfield 122 com/wowza/wms/stream/record/RecordReceiver:y Lcom/wowza/wms/stream/IMediaWriter; // 4: ifnull +34 -> 38 // 7: goto +70 -> 77 // 10: return // 11: astore_1 // 12: ldc 2 // 14: invokestatic 204 com/wowza/wms/logging/WMSLoggerFactory:getLogger (Ljava/lang/Class;)Lcom/wowza/wms/logging/WMSLogger; // 17: bipush 47 // 19: bipush 23 // 21: imul // 22: ldc_w 282 // 25: invokestatic 173 com/wowza/util/Base64:endsWith (ILjava/lang/String;)Ljava/lang/String; // 28: aload_1 // 29: invokevirtual 285 com/wowza/wms/logging/WMSLogger:error (Ljava/lang/String;Ljava/lang/Throwable;)V // 32: goto -22 -> 10 // 35: goto -25 -> 10 // 38: aload_0 // 39: dup // 40: dup // 41: getfield 69 com/wowza/wms/stream/record/RecordReceiver:a Lcom/wowza/wms/stream/IMediaStream; // 44: invokespecial 287 com/wowza/wms/stream/record/RecordReceiver:a (Lcom/wowza/wms/stream/IMediaStream;)Lcom/wowza/wms/stream/IMediaWriter; // 47: putfield 122 com/wowza/wms/stream/record/RecordReceiver:y Lcom/wowza/wms/stream/IMediaWriter; // 50: aload_0 // 51: new 289 com/wowza/wms/stream/record/MediaStreamRecordWriter // 54: dup // 55: aload_0 // 56: getfield 69 com/wowza/wms/stream/record/RecordReceiver:a Lcom/wowza/wms/stream/IMediaStream; // 59: aload_0 // 60: getfield 122 com/wowza/wms/stream/record/RecordReceiver:y Lcom/wowza/wms/stream/IMediaWriter; // 63: invokespecial 292 com/wowza/wms/stream/record/MediaStreamRecordWriter:<init> (Lcom/wowza/wms/stream/IMediaStream;Lcom/wowza/wms/stream/IMediaWriter;)V // 66: putfield 120 com/wowza/wms/stream/record/RecordReceiver:x Lcom/wowza/wms/stream/record/MediaStreamRecordWriter; // 69: aload_0 // 70: lconst_0 // 71: putfield 116 com/wowza/wms/stream/record/RecordReceiver:v J // 74: goto -39 -> 35 // 77: return // Line number table: // Java source line #230 -> byte code offset #0 // Java source line #243 -> byte code offset #10 // Java source line #239 -> byte code offset #11 // Java source line #241 -> byte code offset #12 // Java source line #242 -> byte code offset #35 // Java source line #235 -> byte code offset #38 // Java source line #236 -> byte code offset #50 // Java source line #237 -> byte code offset #69 // Java source line #231 -> byte code offset #77 // Local variable table: // start length slot name signature // 0 78 0 this RecordReceiver // 11 18 1 localException Exception // Exception table: // from to target type // 38 77 11 java/lang/Exception } public void startVideoPacket() { if (c == null) {} for (;;) { return;WMSLoggerFactory.getLogger(null).warn(Base64.endsWith(6 + 105, "\03552=!0\00734=0,>.s-+asvUmachXhi`iy4/Fxvv{5fv{ro<ngqc!kpwpc)"));c = null; } } /* Error */ public void addVideoData(byte[] arg1, int arg2, int arg3, int arg4, long arg5) { // Byte code: // 0: aload_0 // 1: invokespecial 302 com/wowza/wms/stream/record/RecordReceiver:c ()V // 4: goto +33 -> 37 // 7: return // 8: astore 7 // 10: ldc 2 // 12: invokestatic 204 com/wowza/wms/logging/WMSLoggerFactory:getLogger (Ljava/lang/Class;)Lcom/wowza/wms/logging/WMSLogger; // 15: bipush 28 // 17: bipush 73 // 19: iadd // 20: ldc_w 304 // 23: invokestatic 173 com/wowza/util/Base64:endsWith (ILjava/lang/String;)Ljava/lang/String; // 26: aload 7 // 28: invokevirtual 285 com/wowza/wms/logging/WMSLogger:error (Ljava/lang/String;Ljava/lang/Throwable;)V // 31: goto -24 -> 7 // 34: goto -27 -> 7 // 37: aload_0 // 38: getfield 73 com/wowza/wms/stream/record/RecordReceiver:c Ljava/nio/ByteBuffer; // 41: ifnonnull +88 -> 129 // 44: goto +17 -> 61 // 47: iload 4 // 49: ifle +36 -> 85 // 52: goto +54 -> 106 // 55: goto +30 -> 85 // 58: aload 9 // 60: athrow // 61: aload_0 // 62: iload 4 // 64: invokestatic 310 java/nio/ByteBuffer:allocate (I)Ljava/nio/ByteBuffer; // 67: putfield 73 com/wowza/wms/stream/record/RecordReceiver:c Ljava/nio/ByteBuffer; // 70: goto +59 -> 129 // 73: aload_0 // 74: iload 7 // 76: putfield 138 com/wowza/wms/stream/record/RecordReceiver:af I // 79: aload 8 // 81: monitorexit // 82: goto -27 -> 55 // 85: aload_0 // 86: lload 5 // 88: invokespecial 313 com/wowza/wms/stream/record/RecordReceiver:a (J)V // 91: goto -57 -> 34 // 94: astore 9 // 96: aload 8 // 98: monitorexit // 99: goto -41 -> 58 // 102: monitorenter // 103: goto -30 -> 73 // 106: aload_0 // 107: getfield 73 com/wowza/wms/stream/record/RecordReceiver:c Ljava/nio/ByteBuffer; // 110: iconst_0 // 111: invokevirtual 317 java/nio/ByteBuffer:get (I)B // 114: bipush 15 // 116: iand // 117: istore 7 // 119: aload_0 // 120: getfield 136 com/wowza/wms/stream/record/RecordReceiver:ae Ljava/lang/Object; // 123: dup // 124: astore 8 // 126: goto -24 -> 102 // 129: aload_0 // 130: getfield 73 com/wowza/wms/stream/record/RecordReceiver:c Ljava/nio/ByteBuffer; // 133: aload_1 // 134: iload_2 // 135: iload_3 // 136: invokevirtual 321 java/nio/ByteBuffer:put ([BII)Ljava/nio/ByteBuffer; // 139: pop // 140: aload_0 // 141: getfield 73 com/wowza/wms/stream/record/RecordReceiver:c Ljava/nio/ByteBuffer; // 144: invokevirtual 325 java/nio/ByteBuffer:position ()I // 147: iload 4 // 149: if_icmpne -115 -> 34 // 152: goto -105 -> 47 // Line number table: // Java source line #256 -> byte code offset #0 // Java source line #279 -> byte code offset #7 // Java source line #275 -> byte code offset #8 // Java source line #277 -> byte code offset #10 // Java source line #278 -> byte code offset #34 // Java source line #259 -> byte code offset #37 // Java source line #264 -> byte code offset #47 // Java source line #270 -> byte code offset #55 // Java source line #260 -> byte code offset #61 // Java source line #269 -> byte code offset #73 // Java source line #270 -> byte code offset #79 // Java source line #272 -> byte code offset #85 // Java source line #270 -> byte code offset #94 // Java source line #267 -> byte code offset #102 // Java source line #266 -> byte code offset #106 // Java source line #267 -> byte code offset #119 // Java source line #261 -> byte code offset #129 // Java source line #262 -> byte code offset #140 // Exception table: // from to target type // 37 155 8 java/lang/Exception // 73 85 94 finally // 94 102 94 finally } public void startDataPacket() { if (d == null) {} for (;;) { return;WMSLoggerFactory.getLogger(null).warn(JSON.copyValueOf("\030./\"<+\002416=#3%v*.:.)\032>4 \022\"'.#3ri\016*8,n?1296 u%.6:z2/.+:.", 13 - -61));d = null; } } public void addDataData(byte[] paramArrayOfByte, int paramInt1, int paramInt2, int paramInt3, long paramLong) { c(); for (;;) { return; try { if (d != null) { label19: d.put(paramArrayOfByte, paramInt1, paramInt2); if (d.position() != paramInt3) { continue; } } label542: for (;;) { try { d.flip(); byte[] arrayOfByte = d.array(); int i1; if (arrayOfByte == null) { continue; AMFDataList localAMFDataList; if (localAMFDataList.get(0).getType() != 2) { break label542; } Iterator localIterator; String str3; AMFData localAMFData; Object localObject; List localList; String str2; if (localIterator.hasNext()) { continue; if (localAMFDataList.get(1).getType() != 2) { continue;y.putMetaData(str3, localAMFData); continue;localObject = (AMFDataObj)localAMFDataList.get(2);localList = ((AMFDataObj)localObject).getKeys();localIterator = localList.iterator(); } else { String str1 = localAMFDataList.getString(0); str2 = localAMFDataList.getString(1); if (!str1.equals(JSON.copyValueOf("\027+<.\037=)?\0312 /&", 57 * 15))) { break label542; } continue; } } else { break label542; } break label542; continue;i1 = 0; int i2; if (localAMFDataList.get(2).getType() == 3) { continue; break label542; if (localIterator.hasNext()) { continue; break label542; localAMFDataList = new AMFDataList(arrayOfByte, i2, arrayOfByte.length - i2); if (localAMFDataList.size() >= 3) { continue; } continue; break label542; str3 = (String)localIterator.next(); localAMFData = ((AMFDataMixedArray)localObject).get(str3); if (y != null) { continue; } } else { break label542; } continue;i2 = 0; if (arrayOfByte[0] != 0) { continue; } continue;y.putMetaData(str3, localAMFData); continue;str3 = (String)localIterator.next();localAMFData = ((AMFDataObj)localObject).get(str3); if (y == null) { continue; } continue;localObject = (AMFDataMixedArray)localAMFDataList.get(2); localList = ((AMFDataMixedArray)localObject).getKeys(); localIterator = localList.iterator(); continue; } else { if (localAMFDataList.get(2).getType() != 8) { break label542; } continue; break label542; if (!str2.equals(Base64.endsWith(25 * 11, "|zXscy]{o}"))) { 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
|