Author Topic: Use of webcam  (Read 78095 times)

Remy

  • Hero Member
  • *****
  • Posts: 645
  • Karma: +9/-1
    • View Profile
Re: Use of webcam
« Reply #135 on: July 17, 2020, 04:10:51 pm »
Hi Rémy,

Quote
Sorry, I supposed you where on a higher AN modification level with USB3 support.
No need to apologize. We never know what is exactly going on somewhere sometime. 

While developing Webcam Server for OS/2 (ArcaOS/eComStation) I used the 12.05 drivers.
That was cumbersome because I ran into a lot of traps, reboots, lost sources and so on.
It could be my poor coding or perhaps it was caused by something else. So what to do?
So I decided to follow the safest path I could think of: use Lars' 10.234 drivers.

Quote
Right but 16 bits drivers are old style and not compatible with new HW (e.g. USB3)
It is better to work with new ones.
Requires me to install ArcaOS 5.0.5 on my Dell Latitude e6500. No space. No time.
Therefore I am grateful that you, Rémy, work with ArcaOS 5.0.5 and the latest usb drivers.
And what is more, you take your time and effort to file problem reports in ArcaOS mantis.

Quote
I left my c270 plugged and added my webcam 9000 pro on an other USB2 port.
HWMANAGER show the same information and only C270 while HWEXPLORER (using latest Jully usb.ids shows the 9000pro webcam) which seems to be correct due when I start webcam, the 9000 pro goes active and not the c270....
See the HWEXPLORER output. 
The way you shwowed the output of Hardware Explorer is not convincing.
The Hardware Explorer must actually be running to get updated information.
And even then you need to redo showing that output using the way you did.
You better look at the life updating (tree) view of the Hardware Explorer.

Quote
May be I have to backlevel my USB driver to 12.5 to get some information again...   (I will try)
I think it is better to just report the problem that lsusb -v is not working with 12.06 drivers.
To get audio working for the logitech quickcam pro 9000 has to wait till that has been solved.
It is my understanding that the logitech quickcam pro for notebooks only supports 16000 Hz.
Perhaps the logitech quickcam pro 9000 only supports 16000 Hz too. Try webcam /a16000.
 
Best regards,
Wim.

I installed USB 12.6 and then fixtest 12.7 under AN 5.0.2
I'll try your suggestion about 16k support
I quickly reported the issue ("lsusb not working", nor usbres provides accurate information and asked if new ticket is required for a not GA testfix driver) under my trap000e ticket for which 12.7 testfix was provided.

note: If no reply from them in a few days, I'll open a ticket.
Regards
Rémy   

Rich Walsh

  • Sr. Member
  • ****
  • Posts: 331
  • Karma: +23/-0
  • ONU! (OS/2 is NOT Unix!)
    • View Profile
Re: Use of webcam
« Reply #136 on: July 17, 2020, 06:26:39 pm »
To make the webcam work, you have to change config.sys like this :
REM BASEDEV=USBXHCD.SYS
REM BASEDEV=USBXHCD.SYS
BASEDEV=USBEHCD.SYS
BASEDEV=USBEHCD.SYS

Instead of disabling XHCD, have you tried changing the load order by putting EHCD first? If devices are offered to controllers based on load-order, this would give EHCD the chance to claim the device before XHCD. This is just a W-A-G but worth a try...

Lars

  • Hero Member
  • *****
  • Posts: 1271
  • Karma: +65/-0
    • View Profile
Re: Use of webcam
« Reply #137 on: July 17, 2020, 11:06:17 pm »
Yes, that's worth a try.

But I can only say how it works for EHCI and OHCI/UHCI: if you have an EHCI host controller driver installed, right on driver HW initialization, the driver will "set a global switch" (configure flag) in the EHCI HW to claim all USB devices, regardless if USB2 or only USB 1.x. Later on, if a device is attached, there is an attach logic realized in HW where there is a special "USB2 chirp sequence" checked for by the EHCI HW. If the device does not send the chirp sequence, the EHCI driver will "reject" the device (handing over "port ownership") which either passes it over to a USB 1.x companion driver (and HW) if there is one (OHCI or UHCI) or the EHCI HW also contains a RMH (rate matching hub) which will convert the USB2 transfer to a USB 1.x transfer (which makes it largely transparent to SW if a device is a USB 2.0 device or USB 1.x device).

That said, I have not looked into the USB 3.x host controller spec if it follows the analogue sequence between USB 3.x and USB 2 if you have a port that can handle both, USB 3 and USB 2 (and USB 1.x).
« Last Edit: July 17, 2020, 11:08:20 pm by Lars »

Remy

  • Hero Member
  • *****
  • Posts: 645
  • Karma: +9/-1
    • View Profile
Re: Use of webcam
« Reply #138 on: July 17, 2020, 11:52:31 pm »
Yes, that's worth a try.

But I can only say how it works for EHCI and OHCI/UHCI: if you have an EHCI host controller driver installed, right on driver HW initialization, the driver will "set a global switch" (configure flag) in the EHCI HW to claim all USB devices, regardless if USB2 or only USB 1.x. Later on, if a device is attached, there is an attach logic realized in HW where there is a special "USB2 chirp sequence" checked for by the EHCI HW. If the device does not send the chirp sequence, the EHCI driver will "reject" the device (handing over "port ownership") which either passes it over to a USB 1.x companion driver (and HW) if there is one (OHCI or UHCI) or the EHCI HW also contains a RMH (rate matching hub) which will convert the USB2 transfer to a USB 1.x transfer (which makes it largely transparent to SW if a device is a USB 2.0 device or USB 1.x device).

That said, I have not looked into the USB 3.x host controller spec if it follows the analogue sequence between USB 3.x and USB 2 if you have a port that can handle both, USB 3 and USB 2 (and USB 1.x).

My mainboard has USB2 and USB3 ports  (USB3 can work as USB2 or USB1)
USB3 from mainboard works as USB2 when loading USB2 driver only. USB3 from my extra card (one USB3 and one USB3 C) requires USB3 drivers to work. Of course, my webcams are plugged into native USB2 port (not USB3)

I give a try as suggested with only C270 and lsusb doesn't produce any report.
- under HW manager (C270 is present)
- under HW Explorer (no C270)

With this order, I have error messages when USB3 tries to load   
With the normal ordre USB3 first followed by USB2, no error message (USB2 may have some special code to not issue message when its companion USB3 driver is loaded !)

Regards
Rémy

note: When AN USB3 is loaded, it is supposed to support all type of USB port (USB3, USB2 and USB1)

Remy

  • Hero Member
  • *****
  • Posts: 645
  • Karma: +9/-1
    • View Profile
Re: Use of webcam
« Reply #139 on: July 17, 2020, 11:58:46 pm »
Hi Rémy,

Quote
Sorry, I supposed you where on a higher AN modification level with USB3 support.
No need to apologize. We never know what is exactly going on somewhere sometime. 

While developing Webcam Server for OS/2 (ArcaOS/eComStation) I used the 12.05 drivers.
That was cumbersome because I ran into a lot of traps, reboots, lost sources and so on.
It could be my poor coding or perhaps it was caused by something else. So what to do?
So I decided to follow the safest path I could think of: use Lars' 10.234 drivers.

Quote
Right but 16 bits drivers are old style and not compatible with new HW (e.g. USB3)
It is better to work with new ones.
Requires me to install ArcaOS 5.0.5 on my Dell Latitude e6500. No space. No time.
Therefore I am grateful that you, Rémy, work with ArcaOS 5.0.5 and the latest usb drivers.
And what is more, you take your time and effort to file problem reports in ArcaOS mantis.

Quote
I left my c270 plugged and added my webcam 9000 pro on an other USB2 port.
HWMANAGER show the same information and only C270 while HWEXPLORER (using latest Jully usb.ids shows the 9000pro webcam) which seems to be correct due when I start webcam, the 9000 pro goes active and not the c270....
See the HWEXPLORER output. 
The way you shwowed the output of Hardware Explorer is not convincing.
The Hardware Explorer must actually be running to get updated information.
And even then you need to redo showing that output using the way you did.
You better look at the life updating (tree) view of the Hardware Explorer.

Quote
May be I have to backlevel my USB driver to 12.5 to get some information again...   (I will try)
I think it is better to just report the problem that lsusb -v is not working with 12.06 drivers.
To get audio working for the logitech quickcam pro 9000 has to wait till that has been solved.
It is my understanding that the logitech quickcam pro for notebooks only supports 16000 Hz.
Perhaps the logitech quickcam pro 9000 only supports 16000 Hz too. Try webcam /a16000.
 
Best regards,
Wim.

Tried webcam /a16000, no audio from 9000 pro

Remy

  • Hero Member
  • *****
  • Posts: 645
  • Karma: +9/-1
    • View Profile
Re: Use of webcam
« Reply #140 on: July 18, 2020, 12:16:09 am »
In fact: the webcam is visible under HW MANAGER if it is plugged into the usb port a boot time.
It isn't listed if it is plugged into the USB2 port after boot time but it works too !

* My C270 was always connected while I connected the 9000 pro after boot but this time, I left it connected and did a reboot. 

But this doesn't change lsusb problem with no report.   

From the teslog, I have now:

Device 0:
  ctrlID=0 DevAdr=1 ConfigVal=2 IfNo=0 Speed=2 Port=3 HubIx=3
  USB Release number=0x200 DevReleaseNumber=0x10
  Class=239 SubClass=2 Protocol=1 MaxPacketSize=64
  Vendor:Product=046d:0825 NumConfigurations=1
  Configuration: NumInterfaces=4 ConfigValue=1 StringIx=0 Attr=0x80 MaxPower=250
  Interface 0: Alt=0 nEP=1 Class=14(Video) SubClass=1 Protocol=0 StringIx=0
  Endpoint: Adr=0x87 Attr=0x3 MaxPktSize=16 Interval=8
  Interface 1: Alt=0 nEP=0 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Interface 1: Alt=1 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=192 Interval=1
  Interface 1: Alt=2 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=384 Interval=1
  Interface 1: Alt=3 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=512 Interval=1
  Interface 1: Alt=4 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=640 Interval=1
  Interface 1: Alt=5 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=800 Interval=1
  Interface 1: Alt=6 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=944 Interval=1
  Interface 1: Alt=7 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=2688 Interval=1
  Interface 1: Alt=8 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=2848 Interval=1
  Interface 1: Alt=9 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=3040 Interval=1
  Interface 1: Alt=10 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=4992 Interval=1
  Interface 1: Alt=11 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=5116 Interval=1
  Interface 2: Alt=0 nEP=0 Class=1(Audio) SubClass=1 Protocol=0 StringIx=0
  Interface 3: Alt=0 nEP=0 Class=1(Audio) SubClass=2 Protocol=0 StringIx=0
  Interface 3: Alt=1 nEP=1 Class=1(Audio) SubClass=2 Protocol=0 StringIx=0
  Interface 3: Alt=2 nEP=1 Class=1(Audio) SubClass=2 Protocol=0 StringIx=0
  Interface 3: Alt=3 nEP=1 Class=1(Audio) SubClass=2 Protocol=0 StringIx=0
  Interface 3: Alt=4 nEP=1 Class=1(Audio) SubClass=2 Protocol=0 StringIx=0

Device 3:
  ctrlID=3 DevAdr=0 ConfigVal=5 IfNo=1 Speed=2 Port=2 HubIx=2
  USB Release number=0x200 DevReleaseNumber=0x8
  Class=239 SubClass=2 Protocol=1 MaxPacketSize=64
  Vendor:Product=046d:0990 NumConfigurations=1
  Configuration: NumInterfaces=4 ConfigValue=1 StringIx=0 Attr=0x80 MaxPower=250
  Interface 0: Alt=0 nEP=1 Class=14(Video) SubClass=1 Protocol=0 StringIx=0
  Endpoint: Adr=0x87 Attr=0x3 MaxPktSize=16 Interval=8
  Interface 1: Alt=0 nEP=0 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Interface 1: Alt=1 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=192 Interval=1
  Interface 1: Alt=2 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=384 Interval=1
  Interface 1: Alt=3 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=512 Interval=1
  Interface 1: Alt=4 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=640 Interval=1
  Interface 1: Alt=5 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=800 Interval=1
  Interface 1: Alt=6 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=944 Interval=1
  Interface 1: Alt=7 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=2688 Interval=1
  Interface 1: Alt=8 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=2848 Interval=1
  Interface 1: Alt=9 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=3040 Interval=1
  Interface 1: Alt=10 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=4992 Interval=1
  Interface 1: Alt=11 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=5116 Interval=1
  Interface 2: Alt=0 nEP=0 Class=1(Audio) SubClass=1 Protocol=0 StringIx=0
  Interface 3: Alt=0 nEP=0 Class=1(Audio) SubClass=2 Protocol=0 StringIx=0
  Interface 3: Alt=1 nEP=1 Class=1(Audio) SubClass=2 Protocol=0 StringIx=0

Strange... I thought HW manager will show all connected HW before or after boot...
« Last Edit: July 18, 2020, 12:50:34 am by Remy »

Remy

  • Hero Member
  • *****
  • Posts: 645
  • Karma: +9/-1
    • View Profile
Re: Use of webcam
« Reply #141 on: July 18, 2020, 01:30:57 am »
In fact: the webcam is visible under HW MANAGER if it is plugged into the usb port a boot time.
It isn't listed if it is plugged into the USB2 port after boot time but it works too !

* My C270 was always connected while I connected the 9000 pro after boot but this time, I left it connected and did a reboot. 

But this doesn't change lsusb problem with no report.   

From the teslog, I have now:

Device 0:
  ctrlID=0 DevAdr=1 ConfigVal=2 IfNo=0 Speed=2 Port=3 HubIx=3
  USB Release number=0x200 DevReleaseNumber=0x10
  Class=239 SubClass=2 Protocol=1 MaxPacketSize=64
  Vendor:Product=046d:0825 NumConfigurations=1
  Configuration: NumInterfaces=4 ConfigValue=1 StringIx=0 Attr=0x80 MaxPower=250
  Interface 0: Alt=0 nEP=1 Class=14(Video) SubClass=1 Protocol=0 StringIx=0
  Endpoint: Adr=0x87 Attr=0x3 MaxPktSize=16 Interval=8
  Interface 1: Alt=0 nEP=0 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Interface 1: Alt=1 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=192 Interval=1
  Interface 1: Alt=2 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=384 Interval=1
  Interface 1: Alt=3 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=512 Interval=1
  Interface 1: Alt=4 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=640 Interval=1
  Interface 1: Alt=5 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=800 Interval=1
  Interface 1: Alt=6 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=944 Interval=1
  Interface 1: Alt=7 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=2688 Interval=1
  Interface 1: Alt=8 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=2848 Interval=1
  Interface 1: Alt=9 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=3040 Interval=1
  Interface 1: Alt=10 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=4992 Interval=1
  Interface 1: Alt=11 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=5116 Interval=1
  Interface 2: Alt=0 nEP=0 Class=1(Audio) SubClass=1 Protocol=0 StringIx=0
  Interface 3: Alt=0 nEP=0 Class=1(Audio) SubClass=2 Protocol=0 StringIx=0
  Interface 3: Alt=1 nEP=1 Class=1(Audio) SubClass=2 Protocol=0 StringIx=0
  Interface 3: Alt=2 nEP=1 Class=1(Audio) SubClass=2 Protocol=0 StringIx=0
  Interface 3: Alt=3 nEP=1 Class=1(Audio) SubClass=2 Protocol=0 StringIx=0
  Interface 3: Alt=4 nEP=1 Class=1(Audio) SubClass=2 Protocol=0 StringIx=0

Device 3:
  ctrlID=3 DevAdr=0 ConfigVal=5 IfNo=1 Speed=2 Port=2 HubIx=2
  USB Release number=0x200 DevReleaseNumber=0x8
  Class=239 SubClass=2 Protocol=1 MaxPacketSize=64
  Vendor:Product=046d:0990 NumConfigurations=1
  Configuration: NumInterfaces=4 ConfigValue=1 StringIx=0 Attr=0x80 MaxPower=250
  Interface 0: Alt=0 nEP=1 Class=14(Video) SubClass=1 Protocol=0 StringIx=0
  Endpoint: Adr=0x87 Attr=0x3 MaxPktSize=16 Interval=8
  Interface 1: Alt=0 nEP=0 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Interface 1: Alt=1 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=192 Interval=1
  Interface 1: Alt=2 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=384 Interval=1
  Interface 1: Alt=3 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=512 Interval=1
  Interface 1: Alt=4 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=640 Interval=1
  Interface 1: Alt=5 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=800 Interval=1
  Interface 1: Alt=6 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=944 Interval=1
  Interface 1: Alt=7 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=2688 Interval=1
  Interface 1: Alt=8 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=2848 Interval=1
  Interface 1: Alt=9 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=3040 Interval=1
  Interface 1: Alt=10 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=4992 Interval=1
  Interface 1: Alt=11 nEP=1 Class=14(Video) SubClass=2 Protocol=0 StringIx=0
  Endpoint: Adr=0x81 Attr=0x5 MaxPktSize=5116 Interval=1
  Interface 2: Alt=0 nEP=0 Class=1(Audio) SubClass=1 Protocol=0 StringIx=0
  Interface 3: Alt=0 nEP=0 Class=1(Audio) SubClass=2 Protocol=0 StringIx=0
  Interface 3: Alt=1 nEP=1 Class=1(Audio) SubClass=2 Protocol=0 StringIx=0

Strange... I thought HW manager will show all connected HW before or after boot...

Same results for USBRES which shows now the logitech QuickCam pro 9000 (but not the C270!). This allows me to get needed information for you :D

<<< Device Description >>>
 Type            : 01
 USB Rev         : 200
 Class           : Unknown class EF
 Subclass        : Unknown Subclass EF
 Protocol        : Unknown Protocol EF
 Max. packetsize : 40
 Vendor  ID      : 046D
 Product ID      : 0990
 Device Release# : 0008
 Strings:
  Manufacturer Name : Not implemented
  Product Name      : Not implemented
  Serial number     : 1E2B4D27
 Number of Configurations : 1

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

  Interface 0
   Alt Setting : 0
   Name        : <NONE>
   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 : 27
Class-Specific Interface Descriptor, Size : 27
Class-Specific Interface Descriptor, Size : 28
Class-Specific Interface Descriptor, Size : 9
No Interface 0x04, Endpoint 0x05 or Classspec 0x21-0x025 Description is 0x41
No Interface 0x04, Endpoint 0x05 or Classspec 0x21-0x025 Description is 0x41
No Interface 0x04, Endpoint 0x05 or Classspec 0x21-0x025 Description is 0x41
No Interface 0x04, Endpoint 0x05 or Classspec 0x21-0x025 Description is 0x41

   Endpoint 0:
    Address     : 87
    Attributes  : 03
    Packetsize  : 0010
    Interval    : 8
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 : 16
Class-Specific Interface Descriptor, Size : 11
Class-Specific Interface Descriptor, Size : 50
Class-Specific Interface Descriptor, Size : 50
Class-Specific Interface Descriptor, Size : 50
Class-Specific Interface Descriptor, Size : 50
Class-Specific Interface Descriptor, Size : 50
Class-Specific Interface Descriptor, Size : 50
Class-Specific Interface Descriptor, Size : 38
Class-Specific Interface Descriptor, Size : 39
Class-Specific Interface Descriptor, Size : 6
Class-Specific Interface Descriptor, Size : 27
Class-Specific Interface Descriptor, Size : 50
Class-Specific Interface Descriptor, Size : 50
Class-Specific Interface Descriptor, Size : 50
Class-Specific Interface Descriptor, Size : 50
Class-Specific Interface Descriptor, Size : 50
Class-Specific Interface Descriptor, Size : 46
Class-Specific Interface Descriptor, Size : 34
Class-Specific Interface Descriptor, Size : 30
Class-Specific Interface Descriptor, Size : 39
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     : 81
    Attributes  : 05
    Packetsize  : 00C0
    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     : 81
    Attributes  : 05
    Packetsize  : 0180
    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     : 81
    Attributes  : 05
    Packetsize  : 0200
    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     : 81
    Attributes  : 05
    Packetsize  : 0280
    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     : 81
    Attributes  : 05
    Packetsize  : 0320
    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     : 81
    Attributes  : 05
    Packetsize  : 03B0
    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     : 81
    Attributes  : 05
    Packetsize  : 0A80
    Interval    : 1

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

   Endpoint 0:
    Address     : 81
    Attributes  : 05
    Packetsize  : 0B20
    Interval    : 1

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

   Endpoint 0:
    Address     : 81
    Attributes  : 05
    Packetsize  : 0BE0
    Interval    : 1

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

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

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

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

  Interface 2
   Alt Setting : 0
   Name        : <NONE>
   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. : 21628
     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
    Output Terminal :
     Length  : 9
     Type    : 0x24
     Subtype : 0x03
     Unique Terminal ID : 3
     Terminal Type      : 0x0101
     Assoc. Terminal ID : 1
     Source ID          : 5
     Name of Terminal   : Not Implemented
     Audiocontrol CS Interface Descriptor
    Feature Unit :
    Length  : 8
    Type    : 36
    Subtype : 6
    Dumped Data :
     05 01 01 03 00 09
     
     Unique Unit ID  : 5
     Source ID       : 1
     Size of Control Item  : 1
     ControlMap for Master : 0x03
     Name of Feature Unit : At Index 9 has an Invalid lenght of 0x0000

  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 21684 ms
     Audiostreaming CS Interface Descriptor
     Format Type:
     Length  : 11
     Type    : 0x24
     Subtype : 0x02
      Physical Channels : 1
      Subframe size     : 2
      Bits used         : 16
      Supported Frequencies
       - 16000Hz
       - 8783113Hz

   Endpoint 0:
    Address     : 86
    Attributes  : 05
    Packetsize  : 0024
    Interval    : 4
    General Endpoint Information:
     Length  : 7
     Type    : 0x25
     Subtype : 0x01
     Controls:
      - Sampling Frequency
      - Locktime 21711 (No Unit)
 

Lars

  • Hero Member
  • *****
  • Posts: 1271
  • Karma: +65/-0
    • View Profile
Re: Use of webcam
« Reply #142 on: July 18, 2020, 07:33:40 am »
USBRES is buggy, in particular for audio devices.
8783113Hz as supported sampling freq is obviously wrong.

Remy

  • Hero Member
  • *****
  • Posts: 645
  • Karma: +9/-1
    • View Profile
Re: Use of webcam
« Reply #143 on: July 18, 2020, 10:46:25 am »
USBRES is buggy, in particular for audio devices.
8783113Hz as supported sampling freq is obviously wrong.

Yes I agree that this sampling is non sense 

Wim Brul

  • Sr. Member
  • ****
  • Posts: 295
  • Karma: +25/-0
    • View Profile
    • Wim's home page
Re: Use of webcam
« Reply #144 on: July 18, 2020, 03:44:03 pm »
Hi Rémy,

Quote
Tried webcam /a16000, no audio from 9000 pro
No audio - does that mean that the audio window titled \PIPE\Webcam\Audio does not appear?
Or does that window appear but no audio can be heard i.e. dead silent (like volume is zero)
Is there any error shown? Like [00004000] obtain audio error? 
When using webcam /a/n do you have video but still not sound?

Quote
Same results for USBRES which shows now the logitech QuickCam pro 9000 (but not the C270!).
This allows me to get needed information for you :D
Thanks. It confirms that the logitech Quickcam Pro only supports 16000 Hz. audio.
Apart from idProduct the Quickcam Pro for notebooks has the same usb descriptors.

I have attached lsusb-046d0991.txt that I found on the internet.

Regards,
Wim. 

Remy

  • Hero Member
  • *****
  • Posts: 645
  • Karma: +9/-1
    • View Profile
Re: Use of webcam
« Reply #145 on: July 18, 2020, 05:50:02 pm »
Hi Rémy,

Quote
Tried webcam /a16000, no audio from 9000 pro
No audio - does that mean that the audio window titled \PIPE\Webcam\Audio does not appear?
Or does that window appear but no audio can be heard i.e. dead silent (like volume is zero)
Is there any error shown? Like [00004000] obtain audio error? 
When using webcam /a/n do you have video but still not sound?


- The windows appears but no audio - silent
- error
[00008080]
obtain audio error.
- /a/n = Video works but no audio

Regards
Rémy

Update: During all my test, I left the C270 connected. My latest boot was without C270 connected and only the 9000 pro connected.
Currious, I tried again the lsusb command and this time, I get a report !  (I will do more test and what could make that 2 webcam usb connected could make no report ! conflicts ?, I don't know)

Here is lsusb report (finally !)
   
« Last Edit: July 18, 2020, 09:10:54 pm by Remy »

Remy

  • Hero Member
  • *****
  • Posts: 645
  • Karma: +9/-1
    • View Profile
Re: Use of webcam
« Reply #146 on: July 18, 2020, 09:34:34 pm »
After last finding, I did tests several times and have:

Booted with only logitech C270 webcam connected
> no LSUSB report  (start/end without any messages)
> Webcam works using C270
Booted with both logitech c270 and Logitech, Inc. QuickCam Pro 9000 connected
> no LSUSB report  (start/end without any messages)
> webcam works using Pro 9000
Booted with only Logitech, Inc. QuickCam Pro 9000 connected
> LSUSB provides a report !
> webcam works using Pro 9000


nyao

  • Newbie
  • *
  • Posts: 41
  • Karma: +0/-0
    • View Profile
Re: Use of webcam
« Reply #147 on: July 19, 2020, 08:15:04 am »
Hi Wim.
Thank you for your wonderful work.

I also use the C270, so I thank Remy for his efforts.
I look forward to future developments.

Wim Brul

  • Sr. Member
  • ****
  • Posts: 295
  • Karma: +25/-0
    • View Profile
    • Wim's home page
Re: Use of webcam
« Reply #148 on: July 19, 2020, 06:39:32 pm »
Hi Rémy,

Thank you for the lsusb report of the logitech QuickCam Pro 9000.
Now I can see some differences with the logitech QuickCam Pro for notebooks.
In particular wMaxPacketSize being 1x36 bytes versus 1x68 bytes (c250/c270 too).
However my program has hardcoded 1x36 bytes for 16000hz so it should work.
Please try webcam /a/n with your logitech c270 to see if that fails too.

Right now I am working on two companion webcam monitor programs:

wmaudio.exe - Webcam Monitor Audio for OS/2 (ArcaOS/eComStation)
wmvideo.exe - Webcam Monitor Video for OS/2 (ArcaOS/eComstation)

wmaudio.exe /aN plays audio thru AmpMix0N so on any audio adapter.
Input is \PIPE\Webcam\Audio. It plays with minimal delay.

wmvideo.exe is a pm program that shows video on your desktop.
Input is \PiPE\Webcam\Video. It shows with minimal delay.

The purpose is to monitor audio and video while recording with ffmpeg.
The question comes up how do you want to connect the Webcam Server?
Obviously there is one connection missing for audio. What to do?
Did you already try to record audio and video at the same time?

Best regards,
Wim.

Remy

  • Hero Member
  • *****
  • Posts: 645
  • Karma: +9/-1
    • View Profile
Re: Use of webcam
« Reply #149 on: July 19, 2020, 11:13:22 pm »
Hi Rémy,

Thank you for the lsusb report of the logitech QuickCam Pro 9000.
Now I can see some differences with the logitech QuickCam Pro for notebooks.
In particular wMaxPacketSize being 1x36 bytes versus 1x68 bytes (c250/c270 too).
However my program has hardcoded 1x36 bytes for 16000hz so it should work.
Please try webcam /a/n with your logitech c270 to see if that fails too.

Right now I am working on two companion webcam monitor programs:

wmaudio.exe - Webcam Monitor Audio for OS/2 (ArcaOS/eComStation)
wmvideo.exe - Webcam Monitor Video for OS/2 (ArcaOS/eComstation)

wmaudio.exe /aN plays audio thru AmpMix0N so on any audio adapter.
Input is \PIPE\Webcam\Audio. It plays with minimal delay.

wmvideo.exe is a pm program that shows video on your desktop.
Input is \PiPE\Webcam\Video. It shows with minimal delay.

The purpose is to monitor audio and video while recording with ffmpeg.
The question comes up how do you want to connect the Webcam Server?
Obviously there is one connection missing for audio. What to do?
Did you already try to record audio and video at the same time?

Best regards,
Wim.

"Please try webcam /a/n with your logitech c270 to see if that fails too."
It works with c270 and except the trap000e resolved by USB driver update, I never got any error with c270 (I have audio and video - So did I under WCC where you have audio and video at the same time)
- Under WCC, I reduced audio to a max volume of 30 to prevent larsen (try it and put higher volume level to hear the audio)
 
Quote
With C270 :

...\webcam /a/n
started.
format:mjpg
On-line. Use Ctrl+Break to end.
On-line. Use Ctrl+Break to end.
 opening isochronous
 opening isochronous

Since I found USB problem, I did a new test when the c270 is not plugged and only the Pro 9000 is plugged which already provided a working lsusb report.
Only in this configuration, the audio works too with the pro 9000.

Quote
...\webcam /a16000/n
started.
format:yuyv
On-line. Use Ctrl+Break to end.
On-line. Use Ctrl+Break to end.
 opening isochronous
 opening isochronous

Previous problem I had were due USB issue when 2 webcams are connected (may it be possible it tried to get audio from c270 but couldn't get it the output stream !!!) 

ffmpeg can have multiple entries and each one can be pipe or streamer
The easiest would be pipe (This will left http to what the video currently recorded) but this prevent using a pipe as output but the need is to create a video audio file.
e.g. ffmpeg -y -f wav -i \PIPE\Webcam\Audio -f mjpeg -i \PIPE\Webcam\Video -f avi output.avi

- See attached log file

The problem would be about video/audio syncro but -sync and other parms exist to try sync both when the gap isn't to big

ffmpeg can also be used in a different way (using http or udp or other streaming protocol):
e.g. ffmpeg -f wav -i \PIPE\Webcam\Audio -f mjpeg -i \PIPE\Webcam\Video -f avi udp://127.0.0.1:nnnn  (used as streamer)
+
ffplay -i udp://127.0.0.1:nnnn
This way, it may play video and audio   

To simplify into one line command:
e.g. ffmpeg -f wav -i http://127.0.0.1:14226/ -f mjpeg -i  http://127.0.0.1:14225/ -f avi - |ffplay -i -
(using @ip and port for each video and audio will allow to use the pipe as ffmpeg output usable by ffplay (of course, some latency may exist but it could be reduced to a very low latency value, may be below 100ms !

An alternative option would be to run 2 ffmpeg processes, one for video and one for audio. In a next step, get both resulting audio and video files and mix them together to get one video with sound file... This needs more time but sync could be better adjusted due different adjustment can be tried using the same recorded files.
« Last Edit: July 19, 2020, 11:47:08 pm by Remy »