[jitsi-dev] [jitsi-android] TranscodingDataSource class failed compile-time verification during class loading on Android OS


#1

Trying to implement jitsi-videobridge on Jitsi-android, but encounter problem when the TranscodingDataSource() is called from createTranscodingDataSource() in InDataSourceDesc.java class. The error message is triggered during class loading of TranscodingDataSource() with java.lang.VerifyError as below. I have verified that this problem does not occur while running Jitsi client on Windows 7.

I have attempted to solve, with online recommendations, but none of them work.
a. http://stackoverflow.com/questions/30455162/rejecting-class-because-it-failed-compile-time-verification-android
b. https://github.com/aectann/android-verify-error-example
c. https://github.com/stephanenicolas/robospice/issues/387

Appreciate if someone whom have previous experience in development application on Android, shake some light on the problem and possible solutions that I can tried.

Many Thanks

============Verify Error message ======================
Rejecting class org.jitsi.impl.neomedia.protocol.TranscodingDataSource because it failed compile-time verification (declaration of 'org.jitsi.impl.neomedia.protocol.TranscodingDataSource' appears in /data/app/org.jitsi-2/base.apk:classes2.dex)

========== Routine extracted from InDataSourceDesc.java ========
package org.jitsi.impl.neomedia.conference.TranscodingDataSource.java

class InDataSourceDesc
{
  synchronized boolean createTranscodingDataSource(Format outFormat)
  {
    if (transcodingDataSource == null) {
      setTranscodingDataSource(new TranscodingDataSource(inDataSource, outFormat));
      return true;
    }
    else
      return false;
  }
}

============== jitsi-android debug log ===========================
03-09 12:36:22.542: E/Jitsi(16690): [17] util.UtilActivator.uncaughtException().93 An uncaught exception occurred in thread=Thread[RTPEventHandler,9,system] and message was: Rejecting class org.jitsi.impl.neomedia.protocol.TranscodingDataSource because it failed compile-time verification (declaration of 'org.jitsi.impl.neomedia.protocol.TranscodingDataSource' appears in /data/app/org.jitsi-2/base.apk:classes2.dex)
03-09 12:36:22.542: E/Jitsi(16690): java.lang.VerifyError: Rejecting class org.jitsi.impl.neomedia.protocol.TranscodingDataSource because it failed compile-time verification (declaration of 'org.jitsi.impl.neomedia.protocol.TranscodingDataSource' appears in /data/app/org.jitsi-2/base.apk:classes2.dex)
03-09 12:36:22.542: E/Jitsi(16690): at org.jitsi.impl.neomedia.conference.InDataSourceDesc.createTranscodingDataSource(InDataSourceDesc.java:166)
03-09 12:36:22.542: E/Jitsi(16690): at org.jitsi.impl.neomedia.conference.AudioMixer.createTranscodingDataSource(AudioMixer.java:402)
03-09 12:36:22.542: E/Jitsi(16690): at org.jitsi.impl.neomedia.conference.AudioMixer.getInStreamsFromInDataSources(AudioMixer.java:663)
03-09 12:36:22.542: E/Jitsi(16690): at org.jitsi.impl.neomedia.conference.AudioMixer.getOutStream(AudioMixer.java:763)
03-09 12:36:22.542: E/Jitsi(16690): at org.jitsi.impl.neomedia.conference.AudioMixingPushBufferDataSource.getStreams(AudioMixingPushBufferDataSource.java:280)
03-09 12:36:22.542: E/Jitsi(16690): at net.sf.fmj.media.parser.RawPushBufferParser.setSource(RawPushBufferParser.java:765)
03-09 12:36:22.542: E/Jitsi(16690): at net.sf.fmj.media.BasicSourceModule.createDemultiplexer(BasicSourceModule.java:70)
03-09 12:36:22.542: E/Jitsi(16690): at net.sf.fmj.media.BasicSourceModule.createModule(BasicSourceModule.java:105)
03-09 12:36:22.542: E/Jitsi(16690): at net.sf.fmj.media.PlaybackEngine.setSource(PlaybackEngine.java:2048)
03-09 12:36:22.542: E/Jitsi(16690): at net.sf.fmj.media.MediaProcessor.setSource(MediaProcessor.java:145)
03-09 12:36:22.542: E/Jitsi(16690): at javax.media.Manager.createProcessor(Manager.java:645)
03-09 12:36:22.542: E/Jitsi(16690): at javax.media.Manager.createProcessor(Manager.java:615)
03-09 12:36:22.542: E/Jitsi(16690): at org.jitsi.impl.neomedia.device.AbstractMediaDevice.createPlayer(AbstractMediaDevice.java:87)
03-09 12:36:22.542: E/Jitsi(16690): at org.jitsi.impl.neomedia.device.AudioMixerMediaDevice.createPlayer(AudioMixerMediaDevice.java:195)
03-09 12:36:22.542: E/Jitsi(16690): at org.jitsi.impl.neomedia.device.MediaDeviceSession.createPlayer(MediaDeviceSession.java:414)
03-09 12:36:22.542: E/Jitsi(16690): at org.jitsi.impl.neomedia.device.AudioMixerMediaDevice$AudioMixerMediaDeviceSession.createPlayer(AudioMixerMediaDevice.java:619)
03-09 12:36:22.542: E/Jitsi(16690): at org.jitsi.impl.neomedia.device.MediaDeviceSession.addPlaybackDataSource(MediaDeviceSession.java:1644)
03-09 12:36:22.542: E/Jitsi(16690): at org.jitsi.impl.neomedia.device.AudioMixerMediaDevice$AudioMixerMediaDeviceSession.addPlaybackDataSource(AudioMixerMediaDevice.java:573)
03-09 12:36:22.542: E/Jitsi(16690): at org.jitsi.impl.neomedia.device.AudioMixerMediaDevice$MediaStreamMediaDeviceSession.playbackDataSourceAdded(AudioMixerMediaDevice.java:931)
03-09 12:36:22.542: E/Jitsi(16690): at org.jitsi.impl.neomedia.device.MediaDeviceSession.addPlaybackDataSource(MediaDeviceSession.java:1655)
03-09 12:36:22.542: E/Jitsi(16690): at org.jitsi.impl.neomedia.device.MediaDeviceSession.addReceiveStream(MediaDeviceSession.java:1771)
03-09 12:36:22.542: E/Jitsi(16690): at org.jitsi.impl.neomedia.MediaStreamImpl.addReceiveStream(MediaStreamImpl.java:512)
03-09 12:36:22.542: E/Jitsi(16690): at org.jitsi.impl.neomedia.MediaStreamImpl.update(MediaStreamImpl.java:2809)
03-09 12:36:22.542: E/Jitsi(16690): at net.sf.fmj.media.rtp.RTPEventHandler.processEvent(RTPEventHandler.java:92)
03-09 12:36:22.542: E/Jitsi(16690): at net.sf.fmj.media.rtp.RTPEventHandler.dispatchEvents(RTPEventHandler.java:50)
03-09 12:36:22.542: E/Jitsi(16690): at net.sf.fmj.media.rtp.RTPEventHandler.run(RTPEventHandler.java:114)

···

---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus