Menu

Never-ending drive letter issues...

user
2005-09-05
2013-05-09
  • Nobody/Anonymous

    Hi there,

    first of all: Great there is a new version of FOBS4JMF with many, many new and improved features out now!

    However, when replacing the old version with the new one in my project, I got lotsa access violations on my development system (Win XP SP2, Java 1.4.2). I finally managed to boil the problem down to a funny (well, funny like funny-strange, I mean) drive letter issue. When running the following test program...

    [code]
    package test.media;

    import java.awt.*;
    import java.io.*;
    import java.net.*;
    import javax.swing.*;
    import javax.media.*;

    public class PlayerTest extends JFrame {

      private static final String mediaURL  = "file:///eclipse/Test/video.mov";

      private static final String mediaFile = "/eclipse/Test/video.mov";

      private PlayerTest() {
        super("Media Player Test");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setLocation(100, 100);
        getContentPane().setLayout(new BorderLayout());
      }

      public static void main(String[] argv) {
        PlayerTest pt = new PlayerTest();

        try {
          URL url = new URL(mediaURL);
         
          File f = new File(mediaFile);
          URL furl = f.toURL();

          System.out.println("URL from string: " + url);
          System.out.println("URL from file:   " + furl);
         
          Player p = Manager.createRealizedPlayer(furl);
          Component c = p.getVisualComponent();

          pt.getContentPane().add(c, BorderLayout.CENTER);
          pt.pack();
          pt.setVisible(true);

          p.start();
        }
        catch (Exception ex) {
          ex.printStackTrace();
        }

      }

    }
    [/code]

    I get an output as follows

    --------8<--------

    URL from string: file:/eclipse/Test/video.mov
    URL from file:   file:/E:/eclipse/Test/video.mov
    Fobs4JMF - Native shared library found
    1First Position: 0, 0 Duration: 1000
    OpenError: Not initialized
    Fobs Java2DRenderer: setInputFormat
    Fobs Java2DRenderer: setInputFormat

    Unexpected Signal : EXCEPTION_ACCESS_VIOLATION (0xc0000005) occurred at PC=0x807974F
    Function=[Unknown.]
    Library=C:\Programme\Java\j2re1.4.2_06\bin\client\jvm.dll

    NOTE: We are unable to locate the function name symbol for the error
          just occurred. Please refer to release documentation for possible
          reason and solutions.

    Current Java thread:
        at com.omnividea.media.parser.video.Parser.avProcess(Native Method)
        at com.omnividea.media.parser.video.Parser.getNextFrame(Parser.java:117)
        - locked <0x10092b78> (a com.omnividea.media.parser.video.Parser)
        at com.omnividea.media.parser.video.VideoTrack.readFrame(VideoTrack.java:144)
        at com.sun.media.SourceThread.process(BasicSourceModule.java:664)
        at com.sun.media.util.LoopThread.run(LoopThread.java:135)

    Dynamic libraries:
    0x00400000 - 0x0040B000     C:\Programme\Java\j2re1.4.2_06\bin\javaw.exe
    0x7C910000 - 0x7C9C7000     C:\WINDOWS\system32\ntdll.dll
    0x7C800000 - 0x7C906000     C:\WINDOWS\system32\kernel32.dll
    0x77DA0000 - 0x77E4A000     C:\WINDOWS\system32\ADVAPI32.dll
    0x77E50000 - 0x77EE1000     C:\WINDOWS\system32\RPCRT4.dll
    0x77D10000 - 0x77DA0000     C:\WINDOWS\system32\USER32.dll
    0x77EF0000 - 0x77F36000     C:\WINDOWS\system32\GDI32.dll
    0x77BE0000 - 0x77C38000     C:\WINDOWS\system32\MSVCRT.dll
    0x678A0000 - 0x678DD000     C:\Norman\Nvc\BIN\Niphk.dll
    0x770F0000 - 0x7717C000     C:\WINDOWS\system32\OLEAUT32.dll
    0x774B0000 - 0x775ED000     C:\WINDOWS\system32\ole32.dll
    0x08000000 - 0x08139000     C:\Programme\Java\j2re1.4.2_06\bin\client\jvm.dll
    0x76AF0000 - 0x76B1E000     C:\WINDOWS\system32\WINMM.dll
    0x10000000 - 0x10007000     C:\Programme\Java\j2re1.4.2_06\bin\hpi.dll
    0x00390000 - 0x0039E000     C:\Programme\Java\j2re1.4.2_06\bin\verify.dll
    0x003B0000 - 0x003C9000     C:\Programme\Java\j2re1.4.2_06\bin\java.dll
    0x003D0000 - 0x003DD000     C:\Programme\Java\j2re1.4.2_06\bin\zip.dll
    0x02D60000 - 0x02E72000     C:\Programme\Java\j2re1.4.2_06\bin\awt.dll
    0x72F70000 - 0x72F96000     C:\WINDOWS\system32\WINSPOOL.DRV
    0x76330000 - 0x7634D000     C:\WINDOWS\system32\IMM32.dll
    0x5B0F0000 - 0x5B128000     C:\WINDOWS\system32\uxtheme.dll
    0x030E0000 - 0x03131000     C:\Programme\Java\j2re1.4.2_06\bin\fontmanager.dll
    0x736D0000 - 0x73719000     C:\WINDOWS\system32\ddraw.dll
    0x73B30000 - 0x73B36000     C:\WINDOWS\system32\DCIMAN32.dll
    0x738B0000 - 0x73980000     C:\WINDOWS\system32\D3DIM700.DLL
    0x746A0000 - 0x746EB000     C:\WINDOWS\system32\MSCTF.dll
    0x63000000 - 0x63014000     C:\WINDOWS\system32\SynTPFcs.dll
    0x77BD0000 - 0x77BD8000     C:\WINDOWS\system32\VERSION.dll
    0x07640000 - 0x07655000     C:\WINDOWS\system32\jmutil.dll
    0x6AF80000 - 0x6BA4D000     C:\Java\fobs4jmf\fobs4jmf.dll
    0x76C50000 - 0x76C78000     C:\WINDOWS\system32\imagehlp.dll
    0x59DD0000 - 0x59E71000     C:\WINDOWS\system32\DBGHELP.dll
    0x76BB0000 - 0x76BBB000     C:\WINDOWS\system32\PSAPI.DLL

    Heap at VM Abort:
    Heap
    def new generation   total 576K, used 281K [0x10010000, 0x100b0000, 0x104f0000)
      eden space 512K,  46% used [0x10010000, 0x1004bb38, 0x10090000)
      from space 64K,  66% used [0x10090000, 0x1009a928, 0x100a0000)
      to   space 64K,   0% used [0x100a0000, 0x100a0000, 0x100b0000)
    tenured generation   total 1408K, used 679K [0x104f0000, 0x10650000, 0x14010000)
       the space 1408K,  48% used [0x104f0000, 0x10599fa8, 0x1059a000, 0x10650000)
    compacting perm gen  total 5120K, used 5049K [0x14010000, 0x14510000, 0x18010000)
       the space 5120K,  98% used [0x14010000, 0x144fe620, 0x144fe800, 0x14510000)

    Local Time = Mon Sep 05 09:56:56 2005
    Elapsed Time = 1
    #
    # HotSpot Virtual Machine Error : EXCEPTION_ACCESS_VIOLATION
    # Error ID : 4F530E43505002EF
    # Please report this error at
    # http://java.sun.com/cgi-bin/bugreport.cgi
    #
    # Java VM: Java HotSpot(TM) Client VM (1.4.2_06-b03 mixed mode)
    #
    # An error report file has been saved as hs_err_pid368.log.
    # Please refer to the file for further information.
    #

    --------8<--------

    and the program terminates. If, however, I exchange line 34 with

    [code]
          Player p = Manager.createRealizedPlayer(url);
    [code]

    everything works fine. The only apparent difference is that the URL derived from the File object does contain the full path including a drive letter. Any Idea why FOBS4JMF doesn't gulp this?

    Another funny phenomenon is that I don't get an error when trying out the test program on a Win XP machine with Java 1.5 -- here both the "hand-made" and the File-derived URL are accepted by FOBS4JMF. However, playback from the latter seems erradic, i. e. most frames get skipped! Any explanation for this phenomenon? (Everything seems to work fine on Linux, though.)

    Hope you consider this valuable information, and thanx again for developing FOBS --

    Torsten

    P.S. The test video I used can be downloaded from http://xaya.sourceforge.net/video.mov

     
    • Jose San Pedro

      Jose San Pedro - 2005-09-06

      Hi,

      thanks for the report. It is really well documented and I hope to find a final solution to this damn problem with Win paths. Anyway, it won't be in the near future as I'm really busy right now.

      Thanks!!

      Jose San Pedro

       
      • Nobody/Anonymous

        Hi Jose,

        >I hope to find a final solution to this damn problem
        >with Win paths.

        well, somehow it's my own fault if I use an operating system which allows multiple root directories... ;-) OK, for now I'll introduce a temporary dirty hack into my application.

        Regards --

        Torsten

         

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.