Examples of DefineSoundTag


Examples of org.apache.flex.swf.tags.DefineSoundTag

        final int soundSize = bitStream.readUB(1);
        final int soundType = bitStream.readUB(1);
        final long soundSampleCount = bitStream.readUI32();
        final byte soundData[] = bitStream.readToBoundary();

        final DefineSoundTag tag = new DefineSoundTag();
        tag.setCharacterID(soundId);
        tag.setSoundFormat(soundFormat);
        tag.setSoundRate(soundRate);
        tag.setSoundSize(soundSize);
        tag.setSoundType(soundType);
        tag.setSoundSampleCount(soundSampleCount);
        tag.setSoundData(soundData);
        return tag;
    }
View Full Code Here

Examples of org.apache.flex.swf.tags.DefineSoundTag

    {
        InputStream strm = getDataStream(problems);       
        if (strm == null)
            return null;

        DefineSoundTag assetTag = buildSound(strm, problems);
        if (assetTag == null)
            return null;

        Map<String, ICharacterTag> symbolTags = Collections.singletonMap(data.getQName(), (ICharacterTag)assetTag);
        return symbolTags;
View Full Code Here

Examples of org.apache.flex.swf.tags.DefineSoundTag

    {
        byte[] soundData = readFully(strm);
        if (soundData == null)
            return null;

        DefineSoundTag tag = new DefineSoundTag();
        tag.setSoundData(soundData);

        tag.setSoundFormat(2); // MP3
        tag.setSoundSize(1); // always 16-bit for compressed formats

        /**
         * 0 - version 2.5
         * 1 - reserved
         * 2 - version 2
         * 3 - version 1
         */
        int version = soundData[3] >> 3 & 0x3;

        /**
         * 0 - reserved
         * 1 - layer III => 1152 samples
         * 2 - layer II  => 1152 samples
         * 3 - layer I   => 384  samples
         */
        int layer = soundData[3] >> 1 & 0x3;

        int samplingRate = soundData[4] >> 2 & 0x3;

        /**
         * 0 - stereo
         * 1 - joint stereo
         * 2 - dual channel
         * 3 - single channel
         */
        int channelMode = soundData[5] >> 6 & 0x3;

        int frequency = mp3frequencies[samplingRate][version];

        /**
         * 1 - 11kHz
         * 2 - 22kHz
         * 3 - 44kHz
         */
        int rate;
        switch (frequency)
        {
        case 11025:
            rate = 1;
            break;
        case 22050:
            rate = 2;
            break;
        case 44100:
            rate = 3;
            break;
        default:
            problems.add(new EmbedUnsupportedSamplingRateProblem(data, frequency));
            return null;
        }
        tag.setSoundRate(rate);

        /**
         * 0 - mono
         * 1 - stereo
         */
        tag.setSoundType(channelMode == 3 ? 0 : 1);

        /**
         * assume that the whole thing plays in one SWF frame
         *
         * sample count = number of MP3 frames * number of samples per MP3
         */
        long sampleCount = countFrames(soundData) * (layer == 3 ? 384 : 1152);
        tag.setSoundSampleCount(sampleCount);

        if (sampleCount < 0)
        {
            // frame count == -1, error!
            problems.add(new EmbedCouldNotDetermineSampleFrameCountProblem(data));
View Full Code Here

Examples of tv.porst.swfretools.parser.tags.DefineSoundTag

      addNode("ShapeID", ctag.getShapeId());
      addNode("ShapeBounds", ctag.getShapeBounds());
      addNode("Shapes", ctag.getShapes());
    }
    else if (tag instanceof DefineSoundTag) {
      final DefineSoundTag ctag = (DefineSoundTag) tag;

      addNode("SpriteID", ctag.getSoundId());
      addNode("SoundFormat", ctag.getSoundFormat());
      addNode("SoundRate", ctag.getSoundRate());
      addNode("SoundSize", ctag.getSoundSize());
      addNode("SoundType", ctag.getSoundType());
      addNode("SoundSampleCount", ctag.getSoundSampleCount());
      addNode("SoundData", ctag.getSoundData());
    }
    else if (tag instanceof DefineSpriteTag) {
      final DefineSpriteTag ctag = (DefineSpriteTag) tag;

      addNode("SpriteID", ctag.getSpriteId());
      addNode("FrameCount", ctag.getFrameCount());
      addNode("ControlTags", ctag.getControlTags());
    }
    else if (tag instanceof DefineText2Tag) {
      final DefineText2Tag ctag = (DefineText2Tag) tag;

      addNode("FontID", ctag.getCharacterId());
      addNode("TextBounds", ctag.getTextBounds());
      addNode("TextMatrix", ctag.getTextMatrix());
      addNode("GlyphBits", ctag.getGlyphBits());
      addNode("AdvanceBits", ctag.getAdvanceBits());
      addNode("TextRecords", ctag.getTextRecords());
      addNode("End", ctag.getEnd());
    }
    else if (tag instanceof DefineTextTag) {
      final DefineTextTag ctag = (DefineTextTag) tag;

      addNode("FontID", ctag.getCharacterId());
      addNode("TextBounds", ctag.getTextBounds());
      addNode("TextMatrix", ctag.getTextMatrix());
      addNode("GlyphBits", ctag.getGlyphBits());
      addNode("AdvanceBits", ctag.getAdvanceBits());
      addNode("TextRecords", ctag.getTextRecords());
      addNode("End", ctag.getEnd());
    }
    else if (tag instanceof DefineVideoStreamTag) {
      final DefineVideoStreamTag ctag = (DefineVideoStreamTag) tag;

      addNode("CharacterID", ctag.getCharacterId());
      addNode("NumFrames", ctag.getNumFrames());
      addNode("Width", ctag.getWidth());
      addNode("Height", ctag.getHeight());
      addNode("VideoFlagsReserved", ctag.getVideoFlagsReserved());
      addNode("VideoFlagsDeblocking", ctag.getVideoFlagsDeblocking());
      addNode("VideoFlagsSmoothing", ctag.getVideoFlagsSmoothing());
      addNode("CodecID", ctag.getCodecId());
    }
    else if (tag instanceof DoActionTag) {
      final DoActionTag ctag = (DoActionTag) tag;

      addNode("Actions", ctag.getActions());
    }
    else if (tag instanceof DoInitActionTag) {
      final DoInitActionTag ctag = (DoInitActionTag) tag;

      addNode("SpriteID", ctag.getSpriteId());
      addNode("Actions", ctag.getActions());
    }
    else if (tag instanceof EnableDebugger2Tag) {
      final EnableDebugger2Tag ctag = (EnableDebugger2Tag) tag;

      addNode("Password", ctag.getPassword());
      addNode("Reserved", ctag.getReserved());
    }
    else if (tag instanceof EnableDebuggerTag) {
      final EnableDebuggerTag ctag = (EnableDebuggerTag) tag;

      addNode("Password", ctag.getPassword());
    }
    else if (tag instanceof EndTag) {
      // Nothing to do here
    }
    else if (tag instanceof ExportAssetsTag) {
      final ExportAssetsTag ctag = (ExportAssetsTag) tag;

      addNode("Count", ctag.getCount());
      addNode("Assets", ctag.getAssets());
    }
    else if (tag instanceof FileAttributesTag) {
      final FileAttributesTag ctag = (FileAttributesTag) tag;

      addNode("Reserved", ctag.getReserved());
      addNode("UseDirectBit", ctag.getUseDirectBit());
      addNode("UseGPU", ctag.getUseGPU());
      addNode("HasMetadata", ctag.getHasMetadata());
      addNode("ActionScript3", ctag.getActionScript3());
      addNode("Reserved2", ctag.getReserved2());
      addNode("Network", ctag.getUseNetwork());
      addNode("Reserved3", ctag.getReserved3());
    }
    else if (tag instanceof FrameLabelTag) {
      final FrameLabelTag ctag = (FrameLabelTag) tag;

      addNode("Name", ctag.getName());
      addNode("NamedAnchorFlag", ctag.getNamedAnchorFlag());
    }
    else if (tag instanceof ImportAssets2Tag) {
      final ImportAssets2Tag ctag = (ImportAssets2Tag) tag;

      addNode("URLs", ctag.getUrl());
      addNode("Count", ctag.getCount());
      addNode("Symbols", ctag.getSymbols());
      addNode("Count", ctag.getReserved());
      addNode("Count", ctag.getReserved2());
    }
    else if (tag instanceof ImportAssetsTag) {
      final ImportAssetsTag ctag = (ImportAssetsTag) tag;

      addNode("URLs", ctag.getUrl());
      addNode("Count", ctag.getCount());
      addNode("Symbols", ctag.getSymbols());
    }
    else if (tag instanceof JPEGTablesTag) {
      final JPEGTablesTag ctag = (JPEGTablesTag) tag;

      addNode("JPEGData", ctag.getJpegData());
    }
    else if (tag instanceof MetadataTag) {
      final MetadataTag ctag = (MetadataTag) tag;

      addNode("Metadata", ctag.getMetadata());
    }
    else if (tag instanceof PlaceObject2Tag) {
      final PlaceObject2Tag ctag = (PlaceObject2Tag) tag;

      addNode("PlaceFlagHasClipActions", ctag.getPlaceFlagHasClipActions());
      addNode("PlaceFlagHasClipDepth", ctag.getPlaceFlagHasClipDepth());
      addNode("PlaceFlagHasName", ctag.getPlaceFlagHasName());
      addNode("PlaceFlagHasRatio", ctag.getPlaceFlagHasRatio());
      addNode("PlaceFlagHasColorTransform", ctag.getPlaceFlagHasColorTransform());
      addNode("PlaceFlagHasMatrix", ctag.getPlaceFlagHasMatrix());
      addNode("PlaceFlagHasCharacter", ctag.getPlaceFlagHasCharacter());
      addNode("PlaceFlagHasMove", ctag.getPlaceFlagHasMove());
      addNode("Depth", ctag.getDepth());
      addNode("CharacterID", ctag.getCharacterId());
      addNode("Matrix", ctag.getMatrix());
      addNode("ColorTransform", ctag.getColorTransform());
      addNode("Ratio", ctag.getRatio());
      addNode("Name", ctag.getName());
      addNode("ClipDepth", ctag.getClipDepth());
      addNode("ClipActions", ctag.getClipActions());
    }
    else if (tag instanceof PlaceObject3Tag) {
      final PlaceObject3Tag ctag = (PlaceObject3Tag) tag;

      addNode("PlaceFlagHasClipActions", ctag.getPlaceFlagHasClipActions());
      addNode("PlaceFlagHasClipDepth", ctag.getPlaceFlagHasClipDepth());
      addNode("PlaceFlagHasName", ctag.getPlaceFlagHasName());
      addNode("PlaceFlagHasRatio", ctag.getPlaceFlagHasRatio());
      addNode("PlaceFlagHasColorTransform", ctag.getPlaceFlagHasColorTransform());
      addNode("PlaceFlagHasMatrix", ctag.getPlaceFlagHasMatrix());
      addNode("PlaceFlagHasCharacter", ctag.getPlaceFlagHasCharacter());
      addNode("PlaceFlagHasMove", ctag.getPlaceFlagHasMove());
      addNode("Reserved", ctag.getReserved());
      addNode("PlaceFlagHasImage", ctag.getPlaceFlagHasImage());
      addNode("PlaceFlagHasClassName", ctag.getPlaceFlagHasClassName());
      addNode("PlaceFlagHasCacheAsBitmap", ctag.getPlaceFlagHasCacheAsBitmap());
      addNode("PlaceFlagHasBlendMode", ctag.getPlaceFlagHasBlendMode());
      addNode("PlaceFlagHasFilterList", ctag.getPlaceFlagHasFilterList());
      addNode("Depth", ctag.getDepth());
      addNode("ClassName", ctag.getClassName());
      addNode("CharacterID", ctag.getCharacterId());
      addNode("Matrix", ctag.getMatrix());
      addNode("ColorTransform", ctag.getColorTransform());
      addNode("Ratio", ctag.getRatio());
      addNode("Name", ctag.getName());
      addNode("ClipDepth", ctag.getClipDepth());
      addNode("SurfaceFilterList", ctag.getSurfaceFilterList());
      addNode("BlendMode", ctag.getBlendMode());
      addNode("BitmapCache", ctag.getBitmapCache());
      addNode("ClipActions", ctag.getClipActions());
    }
    else if (tag instanceof PlaceObjectTag) {
      final PlaceObjectTag ctag = (PlaceObjectTag) tag;

      addNode("CharacterID", ctag.getCharacterId());
      addNode("Depth", ctag.getDepth());
      addNode("Matrix", ctag.getMatrix());
      addNode("ColorTransform", ctag.getColorTransform());
    }
    else if (tag instanceof RemoveObject2Tag) {
      final RemoveObject2Tag ctag = (RemoveObject2Tag) tag;

      addNode("Depth", ctag.getDepth());
    }
    else if (tag instanceof RemoveObjectTag) {
      final RemoveObjectTag ctag = (RemoveObjectTag) tag;

      addNode("CharacterID", ctag.getCharacterId());
      addNode("Depth", ctag.getDepth());
    }
    else if (tag instanceof ScriptLimitsTag) {
      final ScriptLimitsTag ctag = (ScriptLimitsTag) tag;

      addNode("MaxRecursionDepth", ctag.getMaxRecursionDepth());
      addNode("ScriptTimeoutSeconds", ctag.getScriptTimeoutSeconds());
    }
    else if (tag instanceof SetBackgroundColorTag) {
      final SetBackgroundColorTag ctag = (SetBackgroundColorTag) tag;

      addNode("BackgroundColor", ctag.getBackgroundColor());
    }
    else if (tag instanceof SetTabIndexTag) {
      final SetTabIndexTag ctag = (SetTabIndexTag) tag;

      addNode("Depth", ctag.getDepth());
      addNode("TabIndex", ctag.getTabIndex());
    }
    else if (tag instanceof ShowFrameTag) {
      // Nothing to do here
    }
    else if (tag instanceof SoundStreamBlockTag) {
      final SoundStreamBlockTag ctag = (SoundStreamBlockTag) tag;

      addNode("StreamSoundData", ctag.getStreamSoundData());
    }
    else if (tag instanceof SoundStreamHead2Tag) {
      final SoundStreamHead2Tag ctag = (SoundStreamHead2Tag) tag;

      addNode("Reserved", ctag.getReserved());
      addNode("PlaybackSoundRate", ctag.getPlaybackSoundRate());
      addNode("PlaybackSoundSize", ctag.getPlaybackSoundSize());
      addNode("PlaybackSoundType", ctag.getPlaybackSoundType());
      addNode("StreamSoundCompression", ctag.getStreamSoundCompression());
      addNode("StreamSoundRate", ctag.getStreamSoundRate());
      addNode("StreamSoundSize", ctag.getStreamSoundSize());
      addNode("StreamSoundType", ctag.getStreamSoundType());
      addNode("StreamSoundSampleCount", ctag.getStreamSoundSampleCount());
      addNode("LatencySeek", ctag.getLatencySeek());
    }
    else if (tag instanceof SoundStreamHeadTag) {
      final SoundStreamHeadTag ctag = (SoundStreamHeadTag) tag;

      addNode("Reserved", ctag.getReserved());
      addNode("PlaybackSoundRate", ctag.getPlaybackSoundRate());
      addNode("PlaybackSoundSize", ctag.getPlaybackSoundSize());
      addNode("PlaybackSoundType", ctag.getPlaybackSoundType());
      addNode("StreamSoundCompression", ctag.getStreamSoundCompression());
      addNode("StreamSoundRate", ctag.getStreamSoundRate());
      addNode("StreamSoundSize", ctag.getStreamSoundSize());
      addNode("StreamSoundType", ctag.getStreamSoundType());
      addNode("StreamSoundSampleCount", ctag.getStreamSoundSampleCount());
      addNode("LatencySeek", ctag.getLatencySeek());
    }
    else if (tag instanceof StartSound2Tag) {
      final StartSound2Tag ctag = (StartSound2Tag) tag;

      addNode("SoundClassName", ctag.getSoundClassName());
      addNode("SoundInfo", ctag.getSoundInfo());
    }
    else if (tag instanceof StartSoundTag) {
      final StartSoundTag ctag = (StartSoundTag) tag;

      addNode("SoundID", ctag.getSoundId());
      addNode("SoundInfo", ctag.getSoundInfo());
    }
    else if (tag instanceof SymbolClassTag) {
      final SymbolClassTag ctag = (SymbolClassTag) tag;

      addNode("NumSymbols", ctag.getNumSymbols());
      addNode("Symbols", ctag.getSymbols());
    }
    else if (tag instanceof VideoFrameTag) {
      final VideoFrameTag ctag = (VideoFrameTag) tag;

      addNode("StreamID", ctag.getStreamId());
      addNode("FrameNum", ctag.getFrameNum());
      addNode("VideoData", ctag.getVideoData());
    }
    else if (tag instanceof RawABCTag) {
      final RawABCTag ctag = (RawABCTag) tag;

      addNode("ABCData", ctag.getAbcData());
    }
    else if (tag instanceof DoABCTag) {
      final DoABCTag ctag = (DoABCTag) tag;

      addNode("Name", ctag.getName());
      addNode("Flags", ctag.getFlags());
      addNode("ABCData", ctag.getAbcData());
    }
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.