Author Topic: Oddities with Youtube.  (Read 45202 times)

Digi

  • Jr. Member
  • **
  • Posts: 69
  • Karma: +4/-1
  • http://os2.snc.ru/
    • View Profile
    • OS/2 ports and applications
Oddities with Youtube.
« on: November 02, 2017, 02:15:23 pm »
I have a strange problem with youtube on the one of my systems. This is the same for FF 38.8.0 and FF 45.9.0.
On youtube I can see load bar (line) at the bottom of video frame (with loading progress), small frames on load bar whem I try move forward. But on the video frame, the "waiting ring" turns constantly and there is no image.

On page https://www.youtube.com/html5 next items available with FF 3.8.0:
  HTMLVideoElement, H.264 and WebM VP8.
with FF 45.9.0 all items available.
It's just like on my other system, where everything works fine.

All necessary components from the repository, including ffmpeg, have been updated. What could be the problem?

Dariusz Piatkowski

  • Hero Member
  • *****
  • Posts: 1355
  • Karma: +26/-0
    • View Profile
Re: Oddities with Youtube.
« Reply #1 on: November 02, 2017, 02:52:53 pm »
Hmm...a bit strange that you saw this in 38.8 as well (I did not), however, there are a number of 45.9 users out there that are experiencing this very same thing (including myself).

This appears to be due to the built-in support for VP8 & VP9.

Someone posted a work-around for this issue in another thread, but here is a  direct link => https://github.com/erkserkserks/h264ify-firefox.

This add-on will force youtube to stream H264 instead of the VPx stuff, works here.

Digi

  • Jr. Member
  • **
  • Posts: 69
  • Karma: +4/-1
  • http://os2.snc.ru/
    • View Profile
    • OS/2 ports and applications
Re: Oddities with Youtube.
« Reply #2 on: November 02, 2017, 02:58:27 pm »
Someone posted a work-around for this issue in another thread, but here is a  direct link => https://github.com/erkserkserks/h264ify-firefox.

This add-on will force youtube to stream H264 instead of the VPx stuff, works here.

Yes, I also tried it. To no avail.

guzzi

  • Sr. Member
  • ****
  • Posts: 331
  • Karma: +0/-0
    • View Profile
Re: Oddities with Youtube.
« Reply #3 on: November 02, 2017, 09:52:48 pm »
Latest version needs ff48

Dariusz Piatkowski

  • Hero Member
  • *****
  • Posts: 1355
  • Karma: +26/-0
    • View Profile
Re: Oddities with Youtube.
« Reply #4 on: November 03, 2017, 03:58:25 pm »
Latest version needs ff48

...using version 1.0.5 here on my 45.9 install...works fine, albeit a tad choppy at times...however, it beats the VP9 stuff which completely hosed what appeared to have been a well working 45.9 beta release playback...

xynixme

  • Guest
Re: Oddities with Youtube.
« Reply #5 on: November 15, 2017, 04:33:05 am »
</silence>
1.2 GHz Pentium III, 1 GB RAM.

SM 2.35: works

FF 45: crashes quickly, probably since latest "GA" version

PM DLL, to investige the FF 45 crash: crashes, produces TRP file which mentions a.o. NSPR4.DLL and FF's LGPLL-something.DLL

Pentium 4 CPU: FF 45 works

Que pasa?
<silence>

Dave Yeo

  • Hero Member
  • *****
  • Posts: 5096
  • Karma: +117/-1
    • View Profile
Re: Oddities with Youtube.
« Reply #6 on: November 15, 2017, 06:27:24 am »
Can you post the trp file, erasing anything towards the end that may contain personal info? Also the version of pmdll?
Did you get any trp files from Firefox? Did you try redirecting stderr to a file and get anything there?

xynixme

  • Guest
Re: Oddities with Youtube.
« Reply #7 on: November 15, 2017, 02:24:51 pm »
Pentium 4, identical setup: no such problem. Today FF 45.9.0-2 produced the Pentium III TRP file, instead of PM DLL. LGPLLIBS.DLL was the DLL file I (/ PM DLL's TRP file) was refering too earlier, besides NSPR4.DLL.

Illegal instruction MOVQ (FF):


______________________________________________________________________

 Exception Report - created 2017/11/15 14:08:38
______________________________________________________________________

 OS2/eCS Version:  2.45
 # of Processors:  1
 Physical Memory:  1023 mb
 Virt Addr Limit:  2048 mb
 Exceptq Version:  7.11.4-shl (Mar  6 2017)

______________________________________________________________________

 Exception C000001C - Illegal Instruction
______________________________________________________________________

 Process:  C:\TCPIP\FIREFOX\FIREFOX.EXE (10/05/2017 02:41:08 61,253)
 PID:      58 (88)
 TID:      01 (1)
 Priority: 200

 Filename: C:\TCPIP\FIREFOX\FIREFOX.EXE (10/05/2017 02:41:08 61,253)
 Address:  005B:00011514 (0001:00001514)

______________________________________________________________________

 Failing Instruction
______________________________________________________________________

 00011502  CMP  BYTE [0x302c0], 0x0     (803d c0020300 00)
 00011509  JZ   0x1153b                 (74 30)
 0001150B  MOV  EAX, [0x30280]          (a1 80020300)
 00011510  MOVD XMM0, EAX               (660f6ec0)
 00011514 >MOVQ QWORD [ESP+0x18], XMM0  (660fd64424 18)
 0001151A  FILD QWORD [ESP+0x18]        (df6c24 18)
 0001151E  FST  QWORD [0x30270]         (dd15 70020300)
 00011524  FDIV DWORD [0x1163c]         (d835 3c160100)

______________________________________________________________________

 Registers
______________________________________________________________________

 EAX : 0001234C   EBX  : 000301A4   ECX : 2003A0E0   EDX  : 2003A0EC
 ESI : 0013FFA4   EDI  : 0013FF64
 ESP : 0013FE80   EBP  : 0013FED8   EIP : 00011514   EFLG : 00012202
 CS  : 005B       CSLIM: FFFFFFFF   SS  : 0053       SSLIM: FFFFFFFF

 EAX : read/exec  memory at 0001:0000234C in FIREFOX
 EBX : read/write memory at 0002:000001A4 in FIREFOX
 ECX : read/write memory allocated by LIBC066
 EDX : read/write memory allocated by LIBC066
 ESI : read/write memory on this thread's stack
 EDI : read/write memory on this thread's stack
« Last Edit: November 15, 2017, 02:30:05 pm by André Heldoorn »

Dave Yeo

  • Hero Member
  • *****
  • Posts: 5096
  • Karma: +117/-1
    • View Profile
Re: Oddities with Youtube.
« Reply #8 on: November 15, 2017, 05:01:54 pm »
Pentium 4, identical setup: no such problem. Today FF 45.9.0-2 produced the Pentium III TRP file, instead of PM DLL. LGPLLIBS.DLL was the DLL file I (/ PM DLL's TRP file) was refering too earlier, besides NSPR4.DLL.

Illegal instruction MOVQ (FF):


______________________________________________________________________

 Exception Report - created 2017/11/15 14:08:38
______________________________________________________________________

 OS2/eCS Version:  2.45
 # of Processors:  1
 Physical Memory:  1023 mb
 Virt Addr Limit:  2048 mb
 Exceptq Version:  7.11.4-shl (Mar  6 2017)

______________________________________________________________________

 Exception C000001C - Illegal Instruction
______________________________________________________________________

 Process:  C:\TCPIP\FIREFOX\FIREFOX.EXE (10/05/2017 02:41:08 61,253)
 PID:      58 (88)
 TID:      01 (1)
 Priority: 200

 Filename: C:\TCPIP\FIREFOX\FIREFOX.EXE (10/05/2017 02:41:08 61,253)
 Address:  005B:00011514 (0001:00001514)

______________________________________________________________________

 Failing Instruction
______________________________________________________________________

 00011502  CMP  BYTE [0x302c0], 0x0     (803d c0020300 00)
 00011509  JZ   0x1153b                 (74 30)
 0001150B  MOV  EAX, [0x30280]          (a1 80020300)
 00011510  MOVD XMM0, EAX               (660f6ec0)
 00011514 >MOVQ QWORD [ESP+0x18], XMM0  (660fd64424 18)

There's the problem, it's using an XMM register, probably an SSE2 instruction which is illegal on a PIII.
Quickly grepping through media\ there's quite a few SSE instructions. The question is whether it is hard coded or a failure of the CPU detection.
I'll try to look closer later. Do you have the dbg files installed? If so can you post the call stack?

Quote
0001151A  FILD QWORD [ESP+0x18]        (df6c24 18)
 0001151E  FST  QWORD [0x30270]         (dd15 70020300)
 00011524  FDIV DWORD [0x1163c]         (d835 3c160100)

______________________________________________________________________

 Registers
______________________________________________________________________

 EAX : 0001234C   EBX  : 000301A4   ECX : 2003A0E0   EDX  : 2003A0EC
 ESI : 0013FFA4   EDI  : 0013FF64
 ESP : 0013FE80   EBP  : 0013FED8   EIP : 00011514   EFLG : 00012202
 CS  : 005B       CSLIM: FFFFFFFF   SS  : 0053       SSLIM: FFFFFFFF

 EAX : read/exec  memory at 0001:0000234C in FIREFOX
 EBX : read/write memory at 0002:000001A4 in FIREFOX
 ECX : read/write memory allocated by LIBC066
 EDX : read/write memory allocated by LIBC066
 ESI : read/write memory on this thread's stack
 EDI : read/write memory on this thread's stack

xynixme

  • Guest
Re: Oddities with Youtube.
« Reply #9 on: November 15, 2017, 05:43:42 pm »
There's the problem, it's using an XMM register, probably an SSE2 instruction which is illegal on a PIII.
Quickly grepping through media\ there's quite a few SSE instructions. The question is whether it is hard coded or a failure of the CPU detection.

</silence>
Hopefully it's not yet another attempt to reduce the size of their "OS/2" community? IIRC the previous FF45 release did "work", not counting FF45's 100% CPU load bug with a single core CPU. The CPU in question is a Intel Mobile Pentium III-M 1.2 GHz, FWIW. I'm not using the latest SM anywhere, because of that 100% CPU load bug of the browser component. SM 2.35 works.
 
Quote
Do you have the dbg files installed? If so can you post the call stack?

No(t yet), but I'll see what I can do...
<silence>

Lars

  • Hero Member
  • *****
  • Posts: 1367
  • Karma: +70/-0
    • View Profile
Re: Oddities with Youtube.
« Reply #10 on: November 15, 2017, 06:05:13 pm »
Pentium 4, identical setup: no such problem. Today FF 45.9.0-2 produced the Pentium III TRP file, instead of PM DLL. LGPLLIBS.DLL was the DLL file I (/ PM DLL's TRP file) was refering too earlier, besides NSPR4.DLL.

Illegal instruction MOVQ (FF):


______________________________________________________________________

 Exception Report - created 2017/11/15 14:08:38
______________________________________________________________________

 OS2/eCS Version:  2.45
 # of Processors:  1
 Physical Memory:  1023 mb
 Virt Addr Limit:  2048 mb
 Exceptq Version:  7.11.4-shl (Mar  6 2017)

______________________________________________________________________

 Exception C000001C - Illegal Instruction
______________________________________________________________________

 Process:  C:\TCPIP\FIREFOX\FIREFOX.EXE (10/05/2017 02:41:08 61,253)
 PID:      58 (88)
 TID:      01 (1)
 Priority: 200

 Filename: C:\TCPIP\FIREFOX\FIREFOX.EXE (10/05/2017 02:41:08 61,253)
 Address:  005B:00011514 (0001:00001514)

______________________________________________________________________

 Failing Instruction
______________________________________________________________________

 00011502  CMP  BYTE [0x302c0], 0x0     (803d c0020300 00)
 00011509  JZ   0x1153b                 (74 30)
 0001150B  MOV  EAX, [0x30280]          (a1 80020300)
 00011510  MOVD XMM0, EAX               (660f6ec0)
 00011514 >MOVQ QWORD [ESP+0x18], XMM0  (660fd64424 18)

There's the problem, it's using an XMM register, probably an SSE2 instruction which is illegal on a PIII.
Quickly grepping through media\ there's quite a few SSE instructions. The question is whether it is hard coded or a failure of the CPU detection.
I'll try to look closer later. Do you have the dbg files installed? If so can you post the call stack?

Quote
0001151A  FILD QWORD [ESP+0x18]        (df6c24 18)
 0001151E  FST  QWORD [0x30270]         (dd15 70020300)
 00011524  FDIV DWORD [0x1163c]         (d835 3c160100)

______________________________________________________________________

 Registers
______________________________________________________________________

 EAX : 0001234C   EBX  : 000301A4   ECX : 2003A0E0   EDX  : 2003A0EC
 ESI : 0013FFA4   EDI  : 0013FF64
 ESP : 0013FE80   EBP  : 0013FED8   EIP : 00011514   EFLG : 00012202
 CS  : 005B       CSLIM: FFFFFFFF   SS  : 0053       SSLIM: FFFFFFFF

 EAX : read/exec  memory at 0001:0000234C in FIREFOX
 EBX : read/write memory at 0002:000001A4 in FIREFOX
 ECX : read/write memory allocated by LIBC066
 EDX : read/write memory allocated by LIBC066
 ESI : read/write memory on this thread's stack
 EDI : read/write memory on this thread's stack

That cannot be the explanation. The instruction preceding the trap is also an SSE2 instruction ("MOVD XMM0,EAX"). Or will the failing location point "behind" the failing instruction ?

ak120

  • Guest
Re: Oddities with Youtube.
« Reply #11 on: November 15, 2017, 07:17:33 pm »
That cannot be the explanation. The instruction preceding the trap is also an SSE2 instruction ("MOVD XMM0,EAX"). Or will the failing location point "behind" the failing instruction ?
MOVD for moving double words was already supported with MMX. With SSE support it's possible moving double words from an 128 bit wide register to EAX or somewhere else. But movd is definitely the wrong instruction. Additionally caching and alignment should be observed. SSE2 makes it easier with additional instructions for this tasks.

xynixme

  • Guest
Re: Oddities with Youtube.
« Reply #12 on: November 15, 2017, 07:17:45 pm »
No(t yet), but I'll see what I can do...

</silence>
My area of expertise: nothing.

Ignoring the additional requirement of the archiver, the name of their file is ... firefox-debuginfo-45.9.0-2.oc00.pentium4.7z.
<silence>
« Last Edit: November 15, 2017, 07:20:31 pm by André Heldoorn »

ak120

  • Guest
Re: Oddities with Youtube.
« Reply #13 on: November 15, 2017, 07:41:01 pm »
There's enough written about this topic in Intel's official Developer's Manual (243190) in sections 9.3.1 and 9.3.5.

xynixme

  • Guest
Re: Oddities with Youtube.
« Reply #14 on: November 16, 2017, 12:52:34 am »
There's enough written about this topic in Intel's official Developer's Manual (243190) in sections 9.3.1 and 9.3.5.

</silence>
The "pentium4"-part of the file name suggests it's a programmer's policy instead of some technical accident. After already having to downgrade SM to the more productive 2.35, due to extreme performance bugs of the broken browser component of FF 45, I'll downgrade FF 45.9.0-2 to what may very well be my final version of their barely working FF45.5.0 beta for "OS/2".

At the moment a real FF for OS/2 should be a P6+ CPU product, because of the OS itself (80386, don't blame me) and the implied memory requirements of the specific product (80 MiB of installable RAM ain't enough). It's yet another way to reduce the size of the OS/2 community, by introducing even more non-OS/2 requirements. Indirectly it's a result of the limited number of OS languages. Hence a restriction to OS/2 or eCS 1.x and matching hardware. Including PIII hardware.
<silence>
« Last Edit: November 16, 2017, 01:00:11 am by André Heldoorn »