public class DSJUtils
extends java.lang.Object
Constructor and Description |
---|
DSJUtils() |
Modifier and Type | Method and Description |
---|---|
static byte[] |
base64decode(byte[] source)
Base64 decode utility,
based on public domain Base64 library
http://iharder.sourceforge.net/current/java/base64/
|
static byte[] |
base64encode(byte[] source)
Base64 encode utility,
based on public domain Base64 library
http://iharder.sourceforge.net/current/java/base64/
|
static byte[] |
base64encode(byte[] source,
int from,
int to) |
static byte[] |
byteArrayFromHexString(java.lang.String hex) |
static java.lang.String |
byteArrayToHexString(byte[] data) |
static void |
centerFrame(java.awt.Frame f,
java.awt.GraphicsDevice gd) |
static java.lang.String |
decHex(byte b)
Data logging utility, returns a String containing the decimal value followed by a two character hex string representation of the given byte.
|
static java.lang.String |
decHex(int i)
Data logging utility, returns a String containing the decimal value followed by a two character hex string representation of the given int's lowest byte.
|
static void |
dump(byte[] data)
Data logging utility, all variations of dump(...) print a byte array or parts of it in standard hex dump format to
System.err or what has been set as the log stream via DSEnvironment.setLogStream(...).
|
static void |
dump(byte[] data,
int from,
int upTo) |
static void |
dump(int level,
byte[] data) |
static void |
dump(int level,
byte[] data,
int from,
int upTo) |
static void |
dump(int level,
java.lang.String prefix,
byte[] data) |
static void |
dump(int level,
java.lang.String prefix,
byte[] data,
int from,
int upTo) |
static void |
dump(java.lang.String prefix,
byte[] data) |
static void |
dump(java.lang.String prefix,
byte[] data,
int from,
int upTo) |
static int |
endianFlip16(int in) |
static int |
endianFlip32(int in) |
static long |
endianFlip64(long in) |
static int |
findBytes(byte[] data,
int start,
int maxIdx,
byte[] compare,
int num) |
static int |
findFCC_BE(byte[] data,
java.lang.String fourCC) |
static int |
findFCC(byte[] data,
int startPos,
java.lang.String fourCC,
boolean bigEndian)
Returns the index at which the 4 bytes making up the int representation of the four char code argument appear in the given array,
with the search starting at %startPos.
|
static int |
findFCC(byte[] data,
java.lang.String fourCC)
Returns the index at which the 4 bytes making up the int representation of the four char code argument appear in the given array or -1 if not found.
|
static int |
findInt(byte[] data,
int lookup)
Returns the index at which the 4 bytes making up %lookup appear in the given array or -1 if not found.
|
static float |
fromFix(int i) |
static int[] |
getBasicFileStats(java.lang.String filePath)
Returns an int[10] holding basic information on a media file:
0 - duration in msec, 1 - reserved, 2 - video width, 3 - video height, 4 - video fps*100, 5 - video FourCC or biCompression member of the BitmapInfoHeader 6 - audio samplerate, 7 - audio bitwidth, 8 - audio channels, 9 - audio wFormatTag |
static int |
getBits_LE(byte[] data,
int startBit,
int numBits)
Reads up to %numBits bits starting at %startBit from the given byte array into an little endian int.
|
static int |
getBits(byte[] data,
int startBit,
int numBits)
Reads up to %numBits bits starting at %startBit from the given byte array into an big endian int.
|
static long |
getBits64_LE(byte[] data,
int startBit,
int numBits)
Reads up to %numBits bits starting at %startBit from the given byte array into an little endian long.
|
static long |
getBits64(byte[] data,
int startBit,
int numBits)
Reads up to %numBits bits starting at %startBit from the given byte array into an big endian long.
|
static int |
getEventType(java.beans.PropertyChangeEvent event)
Returns the DSFiltergraph event type of a PropertyChangeEvent sent to listeners.
|
static int |
getEventValue_int(java.beans.PropertyChangeEvent event)
Returns the DSFiltergraph event (int) value of a PropertyChangeEvent sent to listeners.
|
static java.lang.Object |
getEventValue(java.beans.PropertyChangeEvent pe) |
static int |
getExpGolombLength(byte[] data,
int pos)
Returns the total bitlength of the expGolomb coded field at bitposition %pos.
|
static int[] |
getExtendedFileStats(java.lang.String filePath)
Returns an int[34] holding extended information on a media file and its video and audio characteristics.
|
static java.awt.image.BufferedImage |
getMediaIcon(java.lang.String filePath,
int time,
int w,
int h)
Returns an icon image for the given time and in the specified dimension from the mediafile at %path.
|
static int |
getNextLineBreak(java.lang.String str,
int from) |
static boolean |
getScreenSaverActive() |
static int |
getVIntLength(byte b) |
static org.w3c.dom.Document |
grf2xgr(java.lang.String grfPath)
Returns an xml representation of a filtergraph stored in a.grf file.
|
static java.lang.String |
hex(byte b)
Data logging utility, returns a two character hex string representation of the given byte.
|
static java.lang.String |
hex(int i)
Data logging utility, returns a hex string representation of the given int.
|
static byte[] |
hexStringToByteArray(java.lang.String hex) |
static boolean |
isAudioStreamType(int streamType) |
static boolean |
isMulticast(java.lang.String ip)
Returns true if the given IP4-Address, which should be in standard dot decimal form (exp.: 230.0.0.1)
is a multicast address.
|
static boolean |
isUncompressedVideo(int subType) |
static boolean |
isVideoStreamType(int streamType) |
static void |
log(int level,
java.lang.String dbg)
Writes %dbg to the active log stream if the current logging level is higher than %level.
|
static void |
log(java.lang.String dbg)
Writes %dbg to the active log stream (see DSEnvironment.setLogStream(...)).
|
static void |
logDecHex(int indention,
java.lang.String desc,
int val)
Data logging utility, writes a String containing the decimal value followed by a two character hex string representation of the given int's lowest byte
to the active log stream.
|
static void |
logErr(java.lang.Exception e,
java.lang.String addInfo) |
static void |
logErr(int level,
java.lang.Exception e,
java.lang.String addInfo) |
static void |
logln(int level,
java.lang.String dbg)
Writes %dbg + a linebreak to the active log stream if the current logging level is higher than %level.
|
static void |
logln(java.lang.String dbg)
Writes %dbg + a linebreak to the active log stream.
|
static void |
loglnDecHex(int indention,
java.lang.String desc,
int val)
Data logging utility, writes a String containing the decimal value followed by a two character hex string representation of the given int's lowest byte
+ a linebreak to the active log stream.
|
static boolean |
MPEGStart(byte[] data,
int pos)
Returns true if there's a 0 0 1 mpeg start code at %pos in the given byte[].
|
static boolean |
MPEGStart(byte[] data,
int pos,
int startCodeLength) |
static java.lang.String |
msecToSMPTE(int msecTime,
float fps,
boolean drop) |
static java.lang.String |
parseURL(java.lang.String url,
int part,
java.lang.String def)
Parses URL strings into protocol, host and port and resource parts.
|
static void |
plotBytes(byte[] data,
int from,
int num) |
static int[] |
readBCD(byte[] data,
int pos,
int num) |
static double |
readDouble_LE(byte[] data,
int pos)
Reads 64 bits into a double from %data at position %start, little endian.
|
static double |
readDouble(byte[] data,
int pos)
Reads 64 bits into a double from %data at position %start.
|
static int[] |
readEBML_int(byte[] data,
int pos)
Reads a variable size coded int from position pos in data and returns an int[2] holding the read value and its coded length.
|
static int[] |
readEBML_sint(byte[] data,
int pos) |
static int |
readExpGolomb(byte[] data,
int pos)
Reads the expGolomb coded value at bitposition %pos from the given byte array.
|
static int |
readInt_LE(byte[] data,
int start)
Reads 32 little endian bits into a int from %data at position %start.
|
static int |
readInt_LE(byte[] data,
int start,
int numBytes)
Reads %numBytes*8 little endian bits into a int from %data at position %start.
|
static int |
readInt(byte[] data,
int start)
Reads 32 big endian bits into a int from %data at position %start.
|
static int |
readInt(byte[] data,
int start,
int numBytes)
Reads %numBytes*8 big endian bits into a int from %data at position %start.
|
static long |
readLong_LE(byte[] data,
int start)
Reads 64 little endian bits into a long from %data at position %start.
|
static long |
readLong_LE(byte[] data,
int start,
int numBytes)
Reads %numBytes*8 little endian bits into a long from %data at position %start.
|
static long |
readLong(byte[] data,
int start)
Reads 64 bits big endian into a long from %data at position %start.
|
static long |
readLong(byte[] data,
int start,
int numBytes)
Reads %numBytes*8 big endian bits into a long from %data at position %start.
|
static short |
readShort_LE(byte[] data,
int start)
Reads a short from %data at position %start, lttle endian.
|
static short |
readShort(byte[] data,
int start)
Reads a short from %data at position %start.
|
static void |
setBase64EncoderLineBreak(java.lang.String lb)
Change Base64Encoder's linebreak sequence.
|
static void |
setBase64EncoderLineLength(int ll)
Change number of characters after which the Base64Encoder will insert the set linbreak sequence.
|
static void |
setScreenSaverActive(boolean active) |
static void |
showFilterList(DSFiltergraph dsfg) |
static int |
subTypeFromFCC(java.lang.String fcc)
Converts a four char code (like 'mp4v') to its packed 32 bit representation.
|
static int |
subTypeFromFCC(java.lang.String fcc,
boolean bigEndian) |
static int |
subTypeFromMIME(java.lang.String MIME) |
static java.lang.String |
toFCC_BE(int packedFCC) |
static java.lang.String |
toFCC(int packedFCC)
Returns the four char code represented by %packedFCC as a String.
|
static int |
toFix(float f) |
static void |
trace() |
static java.lang.String |
urlDecode(java.lang.String encoded) |
static void |
writeDouble(double value,
byte[] data,
int pos) |
static int |
writeEBML_uint(int val,
byte[] data,
int pos) |
static int |
writeEBML_vint(long val,
byte[] data,
int pos)
Writes a variable length (1 - 8 bytes) ebml value at %pos and returns the number of bytes taken.
|
static void |
writeFix(float value,
byte[] data,
int pos) |
static int |
writeFloat_LE(float value,
byte[] data,
int pos) |
static int |
writeFloat(float value,
byte[] data,
int pos) |
static void |
writeInt_LE(int value,
byte[] data,
int pos) |
static void |
writeInt(int value,
byte[] data,
int pos) |
static void |
writeLong_LE(long value,
byte[] data,
int pos) |
static void |
writeLong(long value,
byte[] data,
int pos) |
static void |
writeShort_LE(short value,
byte[] data,
int pos) |
static void |
writeShort(short value,
byte[] data,
int pos) |
public static boolean isUncompressedVideo(int subType)
public static int[] getBasicFileStats(java.lang.String filePath)
public static int[] getExtendedFileStats(java.lang.String filePath)
public static java.awt.image.BufferedImage getMediaIcon(java.lang.String filePath, int time, int w, int h) throws DSJException
DSJException
public static int getEventType(java.beans.PropertyChangeEvent event)
public static int getEventValue_int(java.beans.PropertyChangeEvent event)
public static java.lang.Object getEventValue(java.beans.PropertyChangeEvent pe)
public static java.lang.String hex(byte b)
public static java.lang.String decHex(byte b)
public static java.lang.String hex(int i)
public static java.lang.String decHex(int i)
public static void loglnDecHex(int indention, java.lang.String desc, int val)
public static void logDecHex(int indention, java.lang.String desc, int val)
public static void dump(byte[] data)
public static void dump(byte[] data, int from, int upTo)
public static void dump(java.lang.String prefix, byte[] data)
public static void dump(java.lang.String prefix, byte[] data, int from, int upTo)
public static void dump(int level, byte[] data)
public static void dump(int level, byte[] data, int from, int upTo)
public static void dump(int level, java.lang.String prefix, byte[] data)
public static void dump(int level, java.lang.String prefix, byte[] data, int from, int upTo)
public static int getBits(byte[] data, int startBit, int numBits)
public static int getBits_LE(byte[] data, int startBit, int numBits)
public static long getBits64(byte[] data, int startBit, int numBits)
public static long getBits64_LE(byte[] data, int startBit, int numBits)
public static short readShort(byte[] data, int start)
public static short readShort_LE(byte[] data, int start)
public static int readInt(byte[] data, int start)
public static int readInt(byte[] data, int start, int numBytes)
public static int readInt_LE(byte[] data, int start)
public static int readInt_LE(byte[] data, int start, int numBytes)
public static long readLong(byte[] data, int start)
public static long readLong(byte[] data, int start, int numBytes)
public static long readLong_LE(byte[] data, int start)
public static long readLong_LE(byte[] data, int start, int numBytes)
public static double readDouble_LE(byte[] data, int pos)
public static double readDouble(byte[] data, int pos)
public static int getExpGolombLength(byte[] data, int pos)
public static int readExpGolomb(byte[] data, int pos)
public static int[] readBCD(byte[] data, int pos, int num)
public static int[] readEBML_int(byte[] data, int pos)
public static int[] readEBML_sint(byte[] data, int pos)
public static int getVIntLength(byte b)
public static int findBytes(byte[] data, int start, int maxIdx, byte[] compare, int num)
public static int findInt(byte[] data, int lookup)
public static int findFCC(byte[] data, java.lang.String fourCC)
public static int findFCC_BE(byte[] data, java.lang.String fourCC)
public static int findFCC(byte[] data, int startPos, java.lang.String fourCC, boolean bigEndian)
public static void writeShort(short value, byte[] data, int pos)
public static void writeShort_LE(short value, byte[] data, int pos)
public static void writeInt(int value, byte[] data, int pos)
public static void writeInt_LE(int value, byte[] data, int pos)
public static void writeLong(long value, byte[] data, int pos)
public static void writeLong_LE(long value, byte[] data, int pos)
public static int writeFloat_LE(float value, byte[] data, int pos)
public static int writeFloat(float value, byte[] data, int pos)
public static void writeFix(float value, byte[] data, int pos)
public static void writeDouble(double value, byte[] data, int pos)
public static int writeEBML_vint(long val, byte[] data, int pos)
public static int writeEBML_uint(int val, byte[] data, int pos)
public static int endianFlip16(int in)
public static int endianFlip32(int in)
public static long endianFlip64(long in)
public static int subTypeFromFCC(java.lang.String fcc)
public static int subTypeFromFCC(java.lang.String fcc, boolean bigEndian)
public static java.lang.String toFCC(int packedFCC)
public static java.lang.String toFCC_BE(int packedFCC)
public static byte[] byteArrayFromHexString(java.lang.String hex)
public static java.lang.String byteArrayToHexString(byte[] data)
public static int subTypeFromMIME(java.lang.String MIME)
public static boolean isMulticast(java.lang.String ip)
public static boolean MPEGStart(byte[] data, int pos)
public static boolean MPEGStart(byte[] data, int pos, int startCodeLength)
public static int toFix(float f)
public static float fromFix(int i)
public static void setScreenSaverActive(boolean active) throws DSJException
DSJException
public static boolean getScreenSaverActive() throws DSJException
DSJException
public static void centerFrame(java.awt.Frame f, java.awt.GraphicsDevice gd)
public static void plotBytes(byte[] data, int from, int num)
public static void showFilterList(DSFiltergraph dsfg)
public static byte[] hexStringToByteArray(java.lang.String hex)
public static void setBase64EncoderLineLength(int ll)
public static void setBase64EncoderLineBreak(java.lang.String lb)
public static byte[] base64decode(byte[] source)
public static byte[] base64encode(byte[] source)
public static byte[] base64encode(byte[] source, int from, int to)
public static java.lang.String urlDecode(java.lang.String encoded)
public static org.w3c.dom.Document grf2xgr(java.lang.String grfPath) throws java.io.IOException
java.io.IOException
public static java.lang.String msecToSMPTE(int msecTime, float fps, boolean drop)
public static java.lang.String parseURL(java.lang.String url, int part, java.lang.String def)
public static int getNextLineBreak(java.lang.String str, int from)
public static void trace()
public static void log(java.lang.String dbg)
public static void log(int level, java.lang.String dbg)
public static void logln(java.lang.String dbg)
public static void logln(int level, java.lang.String dbg)
public static void logErr(java.lang.Exception e, java.lang.String addInfo)
public static void logErr(int level, java.lang.Exception e, java.lang.String addInfo)
public static boolean isVideoStreamType(int streamType)
public static boolean isAudioStreamType(int streamType)