[theora-dev] Consistency regarding compiled Cortado 0.6.0 source and the official binary

mezzanine at Safe-mail.net mezzanine at Safe-mail.net
Mon Nov 29 17:47:12 PST 2010


(I previously sent this message (minus some slight edits) to theora-dev at xiph dot org, but it did not seem to show up in the archives. I do not know if one has to be subscribed in order to post messages.)

Among other things, this message concerns the compilation of the downloaded source code for version 0.6.0 of the Cortado Java applet. (the source was probably from a file that was originally named cortado-0.6.0.tar.gz) The compilation was done on the Ubuntu Linux platform with version 1.7.1 of the ant software and version 1.6.0_18 of the javac software. From what one remembers, the compilation was performed by switching to the cortado 0.6.0 source directory and invoking "ant applet stripped" at the command line. This produced a number of jar files, including a "cortado-ov-stripped-0.6.0.jar" file, as expected. Examining the insides of the cortado-ov-stripped-0.6.0.jar file revealed a number of files in the following layout:

./com
./com/fluendo
./com/fluendo/jst
./com/fluendo/jst/Buffer.class
./com/fluendo/jst/Bus.class
./com/fluendo/jst/BusHandler.class
./com/fluendo/jst/BusSyncHandler.class
./com/fluendo/jst/Caps.class
./com/fluendo/jst/CapsListener.class
./com/fluendo/jst/Clock$ClockID.class
./com/fluendo/jst/Clock.class
./com/fluendo/jst/ClockProvider.class
./com/fluendo/jst/Element.class
./com/fluendo/jst/ElementFactory.class
./com/fluendo/jst/Event.class
./com/fluendo/jst/Format.class
./com/fluendo/jst/Message.class
./com/fluendo/jst/Object.class
./com/fluendo/jst/Pad.class
./com/fluendo/jst/PadListener.class
./com/fluendo/jst/Pipeline$BusThread.class
./com/fluendo/jst/Pipeline$SinkEnumerator.class
./com/fluendo/jst/Pipeline$SortedEnumerator.class
./com/fluendo/jst/Pipeline$StateThread.class
./com/fluendo/jst/Pipeline.class
./com/fluendo/jst/Query.class
./com/fluendo/jst/Sink$1.class
./com/fluendo/jst/Sink.class
./com/fluendo/jst/SourceInfo.class
./com/fluendo/jst/SystemClock.class
./com/fluendo/jst/WaitStatus.class
./com/fluendo/player
./com/fluendo/player/AboutFrame$1.class
./com/fluendo/player/AboutFrame$2.class
./com/fluendo/player/AboutFrame.class
./com/fluendo/player/AppFrame.class
./com/fluendo/player/Configure.class
./com/fluendo/player/Cortado.class
./com/fluendo/player/CortadoPipeline.class
./com/fluendo/player/DurationScanner$1.class
./com/fluendo/player/DurationScanner$StreamInfo.class
./com/fluendo/player/DurationScanner.class
./com/fluendo/player/Status.class
./com/fluendo/player/StatusListener.class
./com/fluendo/plugin
./com/fluendo/plugin/AudioSink$1.class
./com/fluendo/plugin/AudioSink$AudioClock.class
./com/fluendo/plugin/AudioSink$RingBuffer.class
./com/fluendo/plugin/AudioSink.class
./com/fluendo/plugin/AudioSinkJ2.class
./com/fluendo/plugin/AudioSinkSA$RingBufferSA.class
./com/fluendo/plugin/AudioSinkSA$RingReader.class
./com/fluendo/plugin/AudioSinkSA.class
./com/fluendo/plugin/FakeSink.class
./com/fluendo/plugin/HTTPSrc$1.class
./com/fluendo/plugin/HTTPSrc.class
./com/fluendo/plugin/OggDemux$1.class
./com/fluendo/plugin/OggDemux$OggChain.class
./com/fluendo/plugin/OggDemux$OggStream.class
./com/fluendo/plugin/OggDemux.class
./com/fluendo/plugin/OggPayload.class
./com/fluendo/plugin/Overlay$1.class
./com/fluendo/plugin/Overlay$2.class
./com/fluendo/plugin/Overlay.class
./com/fluendo/plugin/Queue$1.class
./com/fluendo/plugin/Queue$2.class
./com/fluendo/plugin/Queue.class
./com/fluendo/plugin/Selector$1.class
./com/fluendo/plugin/Selector$2.class
./com/fluendo/plugin/Selector.class
./com/fluendo/plugin/VideoSink.class
./com/fluendo/plugin/VorbisDec$1.class
./com/fluendo/plugin/VorbisDec$2.class
./com/fluendo/plugin/VorbisDec.class
./com/fluendo/utils
./com/fluendo/utils/Base64Converter.class
./com/fluendo/utils/Debug.class
./com/fluendo/utils/MemUtils.class
./com/jcraft
./com/jcraft/jogg
./com/jcraft/jogg/Buffer.class
./com/jcraft/jogg/Packet.class
./com/jcraft/jogg/Page.class
./com/jcraft/jogg/StreamState.class
./com/jcraft/jogg/SyncState.class
./com/jcraft/jorbis
./com/jcraft/jorbis/AllocChain.class
./com/jcraft/jorbis/Block.class
./com/jcraft/jorbis/ChainingExample.class
./com/jcraft/jorbis/CodeBook.class
./com/jcraft/jorbis/Comment.class
./com/jcraft/jorbis/DecodeAux.class
./com/jcraft/jorbis/DecodeExample.class
./com/jcraft/jorbis/Drft.class
./com/jcraft/jorbis/DspState.class
./com/jcraft/jorbis/EchstateFloor0.class
./com/jcraft/jorbis/EchstateFloor1.class
./com/jcraft/jorbis/EncodeAuxNearestMatch.class
./com/jcraft/jorbis/EncodeAuxThreshMatch.class
./com/jcraft/jorbis/Floor0.class
./com/jcraft/jorbis/Floor1.class
./com/jcraft/jorbis/FuncFloor.class
./com/jcraft/jorbis/FuncMapping.class
./com/jcraft/jorbis/FuncResidue.class
./com/jcraft/jorbis/FuncTime.class
./com/jcraft/jorbis/Info.class
./com/jcraft/jorbis/InfoFloor0.class
./com/jcraft/jorbis/InfoFloor1.class
./com/jcraft/jorbis/InfoMapping0.class
./com/jcraft/jorbis/InfoMode.class
./com/jcraft/jorbis/InfoResidue0.class
./com/jcraft/jorbis/JOrbisException.class
./com/jcraft/jorbis/LookFloor0.class
./com/jcraft/jorbis/LookFloor1.class
./com/jcraft/jorbis/LookMapping0.class
./com/jcraft/jorbis/LookResidue0.class
./com/jcraft/jorbis/Lookup.class
./com/jcraft/jorbis/Lpc.class
./com/jcraft/jorbis/Lsfit_acc.class
./com/jcraft/jorbis/Lsp.class
./com/jcraft/jorbis/Mapping0.class
./com/jcraft/jorbis/Mdct.class
./com/jcraft/jorbis/PsyInfo.class
./com/jcraft/jorbis/PsyLook.class
./com/jcraft/jorbis/Residue0.class
./com/jcraft/jorbis/Residue1.class
./com/jcraft/jorbis/Residue2.class
./com/jcraft/jorbis/StaticCodeBook.class
./com/jcraft/jorbis/Time0.class
./com/jcraft/jorbis/VorbisFile$SeekableInputStream.class
./com/jcraft/jorbis/VorbisFile.class
./META-INF
./META-INF/MANIFEST.MF

On the other hand, the insides of the officially-released cortado-ov-stripped-0.6.0.jar file seem to be like the following:

./com
./com/a
./com/a/a
./com/a/a/A.class
./com/a/a/B.class
./com/a/a/C.class
./com/a/a/d.class
./com/a/a/e.class
./com/a/a/f.class
./com/a/a/g.class
./com/a/a/h.class
./com/a/a/i.class
./com/a/a/j.class
./com/a/a/k.class
./com/a/a/l.class
./com/a/a/m.class
./com/a/a/n.class
./com/a/a/o.class
./com/a/a/p.class
./com/a/a/q.class
./com/a/a/r.class
./com/a/a/s.class
./com/a/a/t.class
./com/a/a/u.class
./com/a/a/v.class
./com/a/a/w.class
./com/a/a/x.class
./com/a/a/y.class
./com/a/a/z.class
./com/a/b
./com/a/b/a.class
./com/a/b/b.class
./com/a/b/c.class
./com/a/b/d.class
./com/a/b/e.class
./com/fluendo
./com/fluendo/a
./com/fluendo/a/a.class
./com/fluendo/a/b.class
./com/fluendo/a/c.class
./com/fluendo/b
./com/fluendo/b/a.class
./com/fluendo/b/b.class
./com/fluendo/b/c.class
./com/fluendo/b/d.class
./com/fluendo/b/e.class
./com/fluendo/b/f.class
./com/fluendo/b/g.class
./com/fluendo/b/h.class
./com/fluendo/b/i.class
./com/fluendo/b/j.class
./com/fluendo/b/k.class
./com/fluendo/b/l.class
./com/fluendo/b/m.class
./com/fluendo/b/n.class
./com/fluendo/b/o.class
./com/fluendo/b/p.class
./com/fluendo/b/q.class
./com/fluendo/b/r.class
./com/fluendo/b/s.class
./com/fluendo/b/t.class
./com/fluendo/b/u.class
./com/fluendo/b/v.class
./com/fluendo/b/w.class
./com/fluendo/b/x.class
./com/fluendo/b/y.class
./com/fluendo/b/z.class
./com/fluendo/player
./com/fluendo/player/a.class
./com/fluendo/player/b.class
./com/fluendo/player/c.class
./com/fluendo/player/Cortado.class
./com/fluendo/player/d.class
./com/fluendo/player/e.class
./com/fluendo/player/f.class
./com/fluendo/player/g.class
./com/fluendo/player/h.class
./com/fluendo/player/i.class
./com/fluendo/player/j.class
./com/fluendo/plugin
./com/fluendo/plugin/a.class
./com/fluendo/plugin/AudioSinkJ2.class
./com/fluendo/plugin/AudioSinkSA.class
./com/fluendo/plugin/b.class
./com/fluendo/plugin/c.class
./com/fluendo/plugin/d.class
./com/fluendo/plugin/e.class
./com/fluendo/plugin/f.class
./com/fluendo/plugin/FakeSink.class
./com/fluendo/plugin/g.class
./com/fluendo/plugin/h.class
./com/fluendo/plugin/HTTPSrc.class
./com/fluendo/plugin/i.class
./com/fluendo/plugin/j.class
./com/fluendo/plugin/k.class
./com/fluendo/plugin/l.class
./com/fluendo/plugin/m.class
./com/fluendo/plugin/n.class
./com/fluendo/plugin/o.class
./com/fluendo/plugin/OggDemux.class
./com/fluendo/plugin/Overlay.class
./com/fluendo/plugin/p.class
./com/fluendo/plugin/q.class
./com/fluendo/plugin/Queue.class
./com/fluendo/plugin/r.class
./com/fluendo/plugin/Selector.class
./com/fluendo/plugin/VideoSink.class
./com/fluendo/plugin/VorbisDec.class
./META-INF
./META-INF/MANIFEST.MF

The locally-compiled instance of the Cortado applet seemed to be functional and seemed to work (at least, when tested on the Mac OSX platform.) The question is: When providing copies of the officially-released Cortado applet jar file (the cortado-ov-stripped-0.6.0.jar that has such internal file names as a.class and b.class) to others, my assumption has been that the cortado-0.6.0.tar.gz file can be treated as the corresponding source code for the purpose of convience and license compliance. Is this correct? (For all one knows, the internal differences between the two compiled instances of the Cortado applet could be due to such things as different versions of compilers or different compilation settings.)

--Richard


More information about the theora-dev mailing list