Author Topic: Webcam Support for OS/2 and eCS!!  (Read 151082 times)

Doug Bissett

  • Hero Member
  • *****
  • Posts: 1593
  • Karma: +4/-2
    • View Profile
Re: Webcam Support for OS/2 and eCS!!
« Reply #75 on: July 06, 2014, 09:23:55 pm »
After updating, I still had the black screen until I restarted WEBLOOK. It froze shortly after starting WEBVIEW.

I tried the larger picture size, and it still froze after a couple of minutes.

David McKenna

  • Hero Member
  • *****
  • Posts: 751
  • Karma: +24/-0
    • View Profile
Re: Webcam Support for OS/2 and eCS!!
« Reply #76 on: July 06, 2014, 10:17:52 pm »
 Just to make sure there was not some problem with the most recent USB drivers, I went back to the original Weblook/Webview (that uses the USBECD.SYS driver) and it ran for 30 minutes with no freeze. Switched back to the most recent Weblook/Webview (that uses USBRESMG.SYS) and the freezes were back in about a minute.

 Then I set ACPI.PSD /MAXCPU=1 and rebooted, and it seems the freezes are gone (after 10 minutes). Doesn't this seem to point at USBRESMG.SYS having an issue with multiple CPU's?

OS4User

  • Sr. Member
  • ****
  • Posts: 406
  • Karma: +10/-0
    • View Profile
Re: Webcam Support for OS/2 and eCS!!
« Reply #77 on: July 06, 2014, 11:12:51 pm »
Try on Weblook/Webview on my PC

weblook said:
Code: [Select]
D:\TOOLS\WebCam>weblook.exe
started.
[0104241B]
[01052422]
YUYV
[00000C00]
[00000010]
On-line. Use Ctrl+Break to end.
[open isochronous]

and black window  in webview

is there any chance to have it working on my PC ?

my camera  reports :
Code: [Select]
<<< Device Description >>>
 Type            : 01
 USB Rev         : 200
 Class           : Unknown class EF
 Subclass        : Unknown Subclass EF
 Protocol        : Unknown Protocol EF
 Max. packetsize : 40
 Vendor  ID      : 0AC8
 Product ID      : 3420
 Device Release# : 01FA
 Strings:
  Manufacturer Name : Vimicro Corp.
  Product Name      : Gmix USB Webcam
  Serial number     : Not implemented
 Number of Configurations : 1

 Configuration 0 :
  Lenght     : 607
  Name       : <NONE>
  Value      : 1
  Attributes : 0x80
  Power      : 320 mA
  Interfaces : 4
No Interface 0x04, Endpoint 0x05 or Classspec 0x21-0x025 Description is 0x0B

  Interface 0
   Alt Setting : 0
   Name        : Gmix USB Webcam
   Class       : Unknown class 0E
   SubClass    : Unknown Subclass 0E
   Protocol    : Unknown Protocol 0E
   Endpoints   : 1
Class-Specific Interface Descriptor, Size : 13
Class-Specific Interface Descriptor, Size : 18
Class-Specific Interface Descriptor, Size : 11
Class-Specific Interface Descriptor, Size : 9
Class-Specific Interface Descriptor, Size : 28

   Endpoint 0:
    Address     : 81
    Attributes  : 03
    Packetsize  : 000A
    Interval    : 5
Class-Specific Endpoint Descriptor, Size : 5

  Interface 1
   Alt Setting : 0
   Name        : <NONE>
   Class       : Unknown class 0E
   SubClass    : Unknown Subclass 0E
   Protocol    : Unknown Protocol 0E
   Endpoints   : 0
Class-Specific Interface Descriptor, Size : 14
Class-Specific Interface Descriptor, Size : 27
Class-Specific Interface Descriptor, Size : 34
Class-Specific Interface Descriptor, Size : 34
Class-Specific Interface Descriptor, Size : 34
Class-Specific Interface Descriptor, Size : 34
Class-Specific Interface Descriptor, Size : 34
Class-Specific Interface Descriptor, Size : 26
Class-Specific Interface Descriptor, Size : 6

  Interface 1
   Alt Setting : 1
   Name        : <NONE>
   Class       : Unknown class 0E
   SubClass    : Unknown Subclass 0E
   Protocol    : Unknown Protocol 0E
   Endpoints   : 1

   Endpoint 0:
    Address     : 82
    Attributes  : 05
    Packetsize  : 0080
    Interval    : 1

  Interface 1
   Alt Setting : 2
   Name        : <NONE>
   Class       : Unknown class 0E
   SubClass    : Unknown Subclass 0E
   Protocol    : Unknown Protocol 0E
   Endpoints   : 1

   Endpoint 0:
    Address     : 82
    Attributes  : 05
    Packetsize  : 0200
    Interval    : 1

  Interface 1
   Alt Setting : 3
   Name        : <NONE>
   Class       : Unknown class 0E
   SubClass    : Unknown Subclass 0E
   Protocol    : Unknown Protocol 0E
   Endpoints   : 1

   Endpoint 0:
    Address     : 82
    Attributes  : 05
    Packetsize  : 0400
    Interval    : 1

  Interface 1
   Alt Setting : 4
   Name        : <NONE>
   Class       : Unknown class 0E
   SubClass    : Unknown Subclass 0E
   Protocol    : Unknown Protocol 0E
   Endpoints   : 1

   Endpoint 0:
    Address     : 82
    Attributes  : 05
    Packetsize  : 0B00
    Interval    : 1

  Interface 1
   Alt Setting : 5
   Name        : <NONE>
   Class       : Unknown class 0E
   SubClass    : Unknown Subclass 0E
   Protocol    : Unknown Protocol 0E
   Endpoints   : 1

   Endpoint 0:
    Address     : 82
    Attributes  : 05
    Packetsize  : 0C00
    Interval    : 1

  Interface 1
   Alt Setting : 6
   Name        : <NONE>
   Class       : Unknown class 0E
   SubClass    : Unknown Subclass 0E
   Protocol    : Unknown Protocol 0E
   Endpoints   : 1

   Endpoint 0:
    Address     : 82
    Attributes  : 05
    Packetsize  : 1380
    Interval    : 1

  Interface 1
   Alt Setting : 7
   Name        : <NONE>
   Class       : Unknown class 0E
   SubClass    : Unknown Subclass 0E
   Protocol    : Unknown Protocol 0E
   Endpoints   : 1

   Endpoint 0:
    Address     : 82
    Attributes  : 05
    Packetsize  : 1400
    Interval    : 1
No Interface 0x04, Endpoint 0x05 or Classspec 0x21-0x025 Description is 0x0B

  Interface 2
   Alt Setting : 0
   Name        : Gmix USB Audio
   Class       : Audio
   SubClass    : AudioControl
   Protocol    : Not used(0)
   Endpoints   : 0
     Audiocontrol CS Interface Descriptor
     Length  : 9
     Type    : 0x24
     Subtype : 0x01
    Header :
     Audio Device Class Release Number : 0100
     Max size of AudioControl interface descriptor. : 16685
     Number of AudioStreaming and MIDIStreaming interfaces : 1
      1. Streaming interface on Device Interface 3
     Audiocontrol CS Interface Descriptor
    Input Terminal :
     Length  : 12
     Type    : 0x24
     Subtype : 0x02
     Unique Terminal ID       : 1
     Terminal Type            : 0x0201
     Assoc. Terminal ID       : 0
     Number of Log. Channels  : 1
     Spatial channel location : 0x0000
     Name of Channel          : Not Implemented
     Name of Terminal         : At Index 9 has an Invalid lenght of 0x0000
     Audiocontrol CS Interface Descriptor
    Feature Unit :
    Length  : 9
    Type    : 36
    Subtype : 6
    Dumped Data :
     02 01 01 00 03 00
     09
     Unique Unit ID  : 2
     Source ID       : 1
     Size of Control Item  : 1
     ControlMap for Master : 0x00
     ControlMap for Channel 1 : 0x03
     Name of Feature Unit : At Index 9 has an Invalid lenght of 0x0000
     Audiocontrol CS Interface Descriptor
    Output Terminal :
     Length  : 9
     Type    : 0x24
     Subtype : 0x03
     Unique Terminal ID : 3
     Terminal Type      : 0x0101
     Assoc. Terminal ID : 1
     Source ID          : 2
     Name of Terminal   : Not Implemented

  Interface 3
   Alt Setting : 0
   Name        : <NONE>
   Class       : Audio
   SubClass    : Streaming Audio
   Protocol    : Not used(0)
   Endpoints   : 0

  Interface 3
   Alt Setting : 1
   Name        : <NONE>
   Class       : Audio
   SubClass    : Streaming Audio
   Protocol    : Not used(0)
   Endpoints   : 1
    General Endpoint Information:
     Length  : 7
     Type    : 0x24
     Subtype : 0x01
     Controls:
      - Sampling Frequency
      - Pitch
      - Locktime 16742 ms
     Audiostreaming CS Interface Descriptor
     Format Type:
     Length  : 29
     Type    : 0x24
     Subtype : 0x02
      Physical Channels : 1
      Subframe size     : 2
      Bits used         : 16
      Supported Frequencies
       - 8000Hz
       - 11025Hz
       - 16000Hz
       - 22050Hz
       - 32000Hz
       - 44100Hz
       - 48000Hz
       - 8586505Hz

   Endpoint 0:
    Address     : 83
    Attributes  : 01
    Packetsize  : 0062
    Interval    : 4
    General Endpoint Information:
     Length  : 7
     Type    : 0x25
     Subtype : 0x01
     Controls:
      - Sampling Frequency
      - Locktime 16787 (No Unit)

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4748
  • Karma: +41/-1
  • Your Friend Wil Declares...
    • View Profile
    • Martin's Personal Blog
Re: Webcam Support for OS/2 and eCS!!
« Reply #78 on: July 06, 2014, 11:32:08 pm »
Today I tried the USBECD.SYS  driver on my Thinkpad L420. Webcam Chicone 05C8:0317.

I put this on the Config.SYS and worked.
Quote
DEVICE=X:\OS2\BOOT\USBECD.SYS /D:05C8:0317:#### /N:$CHICON$

The W520TC exes worked fine to take snapshots.
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Wim Brul

  • Sr. Member
  • ****
  • Posts: 295
  • Karma: +25/-0
    • View Profile
    • Wim's home page
Re: Webcam Support for OS/2 and eCS!!
« Reply #79 on: July 08, 2014, 03:05:12 pm »
Just to make sure there was not some problem with the most recent USB drivers, I went back to the original Weblook/Webview (that uses the USBECD.SYS driver) and it ran for 30 minutes with no freeze. Switched back to the most recent Weblook/Webview (that uses USBRESMG.SYS) and the freezes were back in about a minute.

 Then I set ACPI.PSD /MAXCPU=1 and rebooted, and it seems the freezes are gone (after 10 minutes). Doesn't this seem to point at USBRESMG.SYS having an issue with multiple CPU's?

It could very well be that USBRESMG.SYS has an issue with multiple CPU's. I don't know, but I have seen freezes on my single core test system too. I looked into the SYS3175 trap that Doug reported and found out that WebView contains too optimistic mjpg decoding code that (in case of incorrect or incomplete input data) may and most likely will overwrite memory where it shouldn't. This is a cause for all sorts of problems. Not easy to fix though.

In the mean time I added the WebCam Viewer (uvcview.exe and uvcview.cmd) to WebSeeBeta1.zip on my website. This pm program operates your uvc webcam and displays the video stream. Although it contains the same mjpg decoding shortcomings as  WebView, it allows to rule out any tcp/ip problems.
« Last Edit: July 08, 2014, 03:09:36 pm by Wim Brul »

Doug Bissett

  • Hero Member
  • *****
  • Posts: 1593
  • Karma: +4/-2
    • View Profile
Re: Webcam Support for OS/2 and eCS!!
« Reply #80 on: July 08, 2014, 07:45:10 pm »
Quote
In the mean time I added the WebCam Viewer (uvcview.exe and uvcview.cmd) to WebSeeBeta1.zip on my website. This pm program operates your uvc webcam and displays the video stream. Although it contains the same mjpg decoding shortcomings as  WebView, it allows to rule out any tcp/ip problems.

I tried uvcview.exe. It opens, works for about 1 second, then freezes.

I then put /MAXCPU=1 on the ACPI.PSD line, rebooted, and tried again. Now it seems to be working (about 3 minutes now).

Okay, back to two CPUs, and I used EXECMODE.EXE to set uvcview.exe to single processor mode. This time, it showed pauses, and corruption, for about 5 seconds, before freezing.

I will continue to use the IBM OS2LDR and kernel, while working with this project, just to eliminate unknowns.

Doug Bissett

  • Hero Member
  • *****
  • Posts: 1593
  • Karma: +4/-2
    • View Profile
Re: Webcam Support for OS/2 and eCS!!
« Reply #81 on: July 08, 2014, 07:59:34 pm »
One thing that does work (with the known problems), is to  look at the WEBLOOK output, using a second machine on my network. The command that I used was:
Code: [Select]
Webview.exe /a192.168.0.107 /p14225(the address is the machine running WEBLOOK). I suspect that this will be limited to my local network, because of firewall rules that my ISP uses.

Doug Bissett

  • Hero Member
  • *****
  • Posts: 1593
  • Karma: +4/-2
    • View Profile
Re: Webcam Support for OS/2 and eCS!!
« Reply #82 on: July 09, 2014, 04:24:54 am »
Well, I guess I found the main problem. I thought I had Lars' usbhcd197.zip driver on that machine. After double (tripple) checking, I found that it actually had USB-eCS-11.06.wpi installed. I put usbhcd197.zip on it, and WEBLOOK/WEBView has been running with no trouble for almost half an hour.  :-[

Doug Bissett

  • Hero Member
  • *****
  • Posts: 1593
  • Karma: +4/-2
    • View Profile
Re: Webcam Support for OS/2 and eCS!!
« Reply #83 on: July 09, 2014, 06:04:40 am »
WEBLOOK/WEBVIEW ran without a problem, for more than an hour. It did, eventually, freeze.

Wim Brul

  • Sr. Member
  • ****
  • Posts: 295
  • Karma: +25/-0
    • View Profile
    • Wim's home page
Re: Webcam Support for OS/2 and eCS!!
« Reply #84 on: July 09, 2014, 09:37:40 am »
Well, I guess I found the main problem. I thought I had Lars' usbhcd197.zip driver on that machine. After double (tripple) checking, I found that it actually had USB-eCS-11.06.wpi installed. I put usbhcd197.zip on it, and WEBLOOK/WEBView has been running with no trouble for almost half an hour.  :-[

Well, Doug, that is a relief! :) Thank you for all your testing effort.

Quote
WEBLOOK/WEBVIEW ran without a problem, for more than an hour. It did, eventually, freeze.

Nice. :) Now it is working for you with 2 CPU's the same as it is working here for me with 1 CPU.
So I can safely remove the mpunsafe marking of WEBLOOK then.

One thing that does work (with the known problems), is to  look at the WEBLOOK output, using a second machine on my network. The command that I used was:
Code: [Select]
Webview.exe /a192.168.0.107 /p14225(the address is the machine running WEBLOOK). I suspect that this will be limited to my local network, because of firewall rules that my ISP uses.

I had to open port 14225 in my adsl modem/router to let it work over the internet. There is no security at all though!

Note that you may start WEBVIEW more than once. Even on different machines. 

 
« Last Edit: July 09, 2014, 09:52:32 am by Wim Brul »

David McKenna

  • Hero Member
  • *****
  • Posts: 751
  • Karma: +24/-0
    • View Profile
Re: Webcam Support for OS/2 and eCS!!
« Reply #85 on: July 09, 2014, 12:43:39 pm »
  I tried uvcview.exe in multi CPU mode, and I get a frozen image in about a minute. With MAXCPU=1 it was still running after an hour.

Doug Bissett

  • Hero Member
  • *****
  • Posts: 1593
  • Karma: +4/-2
    • View Profile
Re: Webcam Support for OS/2 and eCS!!
« Reply #86 on: July 09, 2014, 05:05:56 pm »
Quote
Well, Doug, that is a relief! :) Thank you for all your testing effort.

Sorry about not being more diligent in the first place, but I missed that requirement.

Quote
So I can safely remove the mpunsafe marking of WEBLOOK then.

I think I was using WEBLOOK marked as MPUNSAFE. I will mark it as MPSAFE and see what happens, but I can't try it for about an hour.

Quote
I had to open port 14225 in my adsl modem/router to let it work over the internet. There is no security at all though!

I have tried similar things before. My ISP seems to block what they don't provide, but I will try it, when I get the chance. I always assume that there is no security (because there really isn't anyway). It should be possible to use STunnel to establish a secure link, if you think it is necessary.

I suppose that you have not looked into being compatible with other operating system support.

Doug Bissett

  • Hero Member
  • *****
  • Posts: 1593
  • Karma: +4/-2
    • View Profile
Re: Webcam Support for OS/2 and eCS!!
« Reply #87 on: July 09, 2014, 07:03:27 pm »
Quote
I think I was using WEBLOOK marked as MPUNSAFE. I will mark it as MPSAFE and see what happens, but I can't try it for about an hour.

It is marked as MPSAFE, and it works (for a while). I will note, that the ACPI power manager may introduce some uncertainty in this area. If the processors go, and stay, below the threshold activity level, all but one processor will be turned off. I think that has the same effect as running with MAXCPU=1.

Quote
I tried uvcview.exe in multi CPU mode, and I get a frozen image in about a minute. With MAXCPU=1 it was still running after an hour.

I haven't tried MAXCPU=1, but I do see the freeze with uvcview.exe. Sometimes it is instantly. Other times it will go for about 10 minutes, but it always freezes. I tried marking that as MPSAFE, and it worked longer, but still froze. The ACPI power manager likely has some effect here too.

OS4User

  • Sr. Member
  • ****
  • Posts: 406
  • Karma: +10/-0
    • View Profile
Re: Webcam Support for OS/2 and eCS!!
« Reply #88 on: July 10, 2014, 09:04:37 am »

Wim Brul

  • Sr. Member
  • ****
  • Posts: 295
  • Karma: +25/-0
    • View Profile
    • Wim's home page
Re: Webcam Support for OS/2 and eCS!!
« Reply #89 on: July 10, 2014, 01:01:56 pm »
To Wim Brul

anything can be done in my case ?

http://www.os2world.com/forum/index.php/topic,196.msg3884.html#msg3884

May be so. Start USBDock /bin and attach 0AC83420.BIN for me to inspect.