Playing video freezes my netbook!

52 réponses [Dernière contribution]
Jayn
Hors ligne
A rejoint: 08/27/2010

I am using an Asus EEEPc 1015 PN, and if I use Minitube or watch a video (usually mp4) for an extended period of time (10 + minutes), my whole system freezes. Sometimes, my cursor is freed after some time, but to no avail as I cannot click anything. I have looked at my system properties and the graphics driver is listed as "fallback" but this performance seems too bad for even a fallback driver. Am I getting the best possible Libre experience on this hardware, or am I missing something?

Supposedly aside from the NVidia card, there is an Intel integrated chipset onboard.

lembas
Hors ligne
A rejoint: 05/13/2010

Probably overheats. What's your output of

lspci -nn
Magic Banana

I am a member!

I am a translator!

Hors ligne
A rejoint: 07/24/2010

If this netbook does not have a graphical chipset with circuits specialized in decoding newer formats (MP4, WebM, etc.), I would say it probably is unable to read them in high enough quality. Does it happen with older videos too?

Jayn
Hors ligne
A rejoint: 08/27/2010

To MagicBanana, it happens with anything I play from Movie Player or Minitube. I have not tried MPEG 1 or anything like that.

my output is:

senobyte@senobyte-1015PN:~$ lspci -nn
00:00.0 Host bridge [0600]: Intel Corporation Atom Processor D4xx/D5xx/N4xx/N5xx DMI Bridge [8086:a010] (rev 02)
00:1b.0 Audio device [0403]: Intel Corporation NM10/ICH7 Family High Definition Audio Controller [8086:27d8] (rev 02)
00:1c.0 PCI bridge [0604]: Intel Corporation NM10/ICH7 Family PCI Express Port 1 [8086:27d0] (rev 02)
00:1c.1 PCI bridge [0604]: Intel Corporation NM10/ICH7 Family PCI Express Port 2 [8086:27d2] (rev 02)
00:1c.3 PCI bridge [0604]: Intel Corporation NM10/ICH7 Family PCI Express Port 4 [8086:27d6] (rev 02)
00:1d.0 USB controller [0c03]: Intel Corporation NM10/ICH7 Family USB UHCI Controller #1 [8086:27c8] (rev 02)
00:1d.1 USB controller [0c03]: Intel Corporation NM10/ICH7 Family USB UHCI Controller #2 [8086:27c9] (rev 02)
00:1d.2 USB controller [0c03]: Intel Corporation NM10/ICH7 Family USB UHCI Controller #3 [8086:27ca] (rev 02)
00:1d.3 USB controller [0c03]: Intel Corporation NM10/ICH7 Family USB UHCI Controller #4 [8086:27cb] (rev 02)
00:1d.7 USB controller [0c03]: Intel Corporation NM10/ICH7 Family USB2 EHCI Controller [8086:27cc] (rev 02)
00:1e.0 PCI bridge [0604]: Intel Corporation 82801 Mobile PCI Bridge [8086:2448] (rev e2)
00:1f.0 ISA bridge [0601]: Intel Corporation NM10 Family LPC Controller [8086:27bc] (rev 02)
00:1f.2 SATA controller [0106]: Intel Corporation NM10/ICH7 Family SATA Controller [AHCI mode] [8086:27c1] (rev 02)
01:00.0 Ethernet controller [0200]: Qualcomm Atheros AR8132 Fast Ethernet [1969:1062] (rev c0)
02:00.0 Network controller [0280]: Broadcom Corporation BCM4313 802.11b/g/n Wireless LAN Controller [14e4:4727] (rev 01)
04:00.0 VGA compatible controller [0300]: NVIDIA Corporation GT218 [ION] [10de:0a6f] (rev a2)
04:00.1 Audio device [0403]: NVIDIA Corporation High Definition Audio Controller [10de:0be3] (rev a1)

jxself
Hors ligne
A rejoint: 09/13/2010

I suspect the issue is that, for whatever reason, you don't have hardware-accelerated graphics and at the same time your Atom processor is not fast enough to be able to decode these videos in real-time.

jxself
Hors ligne
A rejoint: 09/13/2010

I should probably add that I'm not necessarily surprised at the lack of hardware acceleration because the free software community does not typically look to Nvidia for pro-freedom activities.

lembas
Hors ligne
A rejoint: 05/13/2010

I've read of trouble on systems with more than one GPU. Can you disable either in the BIOS setup?

Jayn
Hors ligne
A rejoint: 08/27/2010

I will try to turn of the NVIDIA hardware in the BIOS and report back.

Jayn
Hors ligne
A rejoint: 08/27/2010

Unfortunately, there was nothing in my BIOS to turn off the NVIDIA chipset. I am pretty sure if I could do that, the system would use my Intel integrated hardware and I'd have a better time.

icarolongo
Hors ligne
A rejoint: 03/26/2011

For non-accelerated graphics the best option is VLC. I tried this in 7-11 years old computers and works like a charm. Running 720p :-D

Jayn
Hors ligne
A rejoint: 08/27/2010

Thanks for the tip, I'll let you know if VLC does not freeze.

Jayn
Hors ligne
A rejoint: 08/27/2010

You were right about VLC working well, but things like Minitube still freeze my computer.

Jayn
Hors ligne
A rejoint: 08/27/2010

According to a site I found about Ubuntu on the same netbook, you have to switch chipsets via a ACPI call. There is a package on the site to do such a thing, but I do not know if it is Libre. Apparently, you have to send the ACPI call every time before you reboot since the NVIDIA default is hard-wired into the board.

It is frustrating that people like NVIDIA considering how Freedom-hostile they are.

This includes the "Linux" users who do not care about Freedom. If ALL users of GNU+Linux refused non-Free hardware, NVIDIA would have a lot fewer customers.

I have just read that there is a manual way to do the ACPI call with a GPLv3 module available at this site https://github.com/mkottman/acpi_call so I will look into that as well.

Jayn
Hors ligne
A rejoint: 08/27/2010

Sorry, the other site about Ubuntu is here: https://sites.google.com/site/mtrons/howtos/eeepc-1015pn

Jayn
Hors ligne
A rejoint: 08/27/2010

I cannot seem to build the module

make -C /lib/modules/3.2.0-49-generic/build M=/home/senobyte/Downloads/acpi_call modules
make: *** /lib/modules/3.2.0-49-generic/build: No such file or directory. Stop.
make: *** [default] Error 2

Jayn
Hors ligne
A rejoint: 08/27/2010

Ok, so it turns out I had noob'd it up and just had to install the linux-headers-generic to be able to build the module. I got that set up, then I did 'sudo insmod acpi_call.ko'. After that, I did "echo "\OSGS 0x01" > /proc/acpi/call" to activate the Intel graphics. I then edited the xorg.conf to read:
Section "Device"
Identifier "Device0"
Driver "intel"
VendorName "Intel GMA 3150"
BusID "PCI:0:2:0"
EndSection

finally, I did this as per a tutorial :

cp /usr/lib/xorg/modules/extensions/libglx.so /usr/lib/xorg/modules/extensions/libglx.so.intel
ln -s -f /usr/lib/xorg/modules/extensions/libglx.so.intel /usr/lib/xorg/modules/extensions/libglx.so
update-alternatives --set i386-linux-gnu_gl_conf /usr/lib/i386-linux-gnu/mesa/ld.so.conf
ldconfig

Note: I changed the i386 to x86_64 on my system.

finally, I rebooted and now when I do 'lspci -nn':

00:00.0 Host bridge [0600]: Intel Corporation Atom Processor D4xx/D5xx/N4xx/N5xx DMI Bridge [8086:a010] (rev 02)
00:02.0 VGA compatible controller [0300]: Intel Corporation Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller [8086:a011] (rev 02)
00:02.1 Display controller [0380]: Intel Corporation Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller [8086:a012] (rev 02)
00:1b.0 Audio device [0403]: Intel Corporation NM10/ICH7 Family High Definition Audio Controller [8086:27d8] (rev 02)
00:1c.0 PCI bridge [0604]: Intel Corporation NM10/ICH7 Family PCI Express Port 1 [8086:27d0] (rev 02)
00:1c.1 PCI bridge [0604]: Intel Corporation NM10/ICH7 Family PCI Express Port 2 [8086:27d2] (rev 02)
00:1c.3 PCI bridge [0604]: Intel Corporation NM10/ICH7 Family PCI Express Port 4 [8086:27d6] (rev 02)
00:1d.0 USB controller [0c03]: Intel Corporation NM10/ICH7 Family USB UHCI Controller #1 [8086:27c8] (rev 02)
00:1d.1 USB controller [0c03]: Intel Corporation NM10/ICH7 Family USB UHCI Controller #2 [8086:27c9] (rev 02)
00:1d.2 USB controller [0c03]: Intel Corporation NM10/ICH7 Family USB UHCI Controller #3 [8086:27ca] (rev 02)
00:1d.3 USB controller [0c03]: Intel Corporation NM10/ICH7 Family USB UHCI Controller #4 [8086:27cb] (rev 02)
00:1d.7 USB controller [0c03]: Intel Corporation NM10/ICH7 Family USB2 EHCI Controller [8086:27cc] (rev 02)
00:1e.0 PCI bridge [0604]: Intel Corporation 82801 Mobile PCI Bridge [8086:2448] (rev e2)
00:1f.0 ISA bridge [0601]: Intel Corporation NM10 Family LPC Controller [8086:27bc] (rev 02)
00:1f.2 SATA controller [0106]: Intel Corporation NM10/ICH7 Family SATA Controller [AHCI mode] [8086:27c1] (rev 02)
01:00.0 Ethernet controller [0200]: Qualcomm Atheros AR8132 Fast Ethernet [1969:1062] (rev c0)
02:00.0 Network controller [0280]: Broadcom Corporation BCM4313 802.11b/g/n Wireless LAN Controller [14e4:4727] (rev 01)

NVIDIA is not in the list anymore, BUT my system settings still say I am on the fallback driver. My LCD also seems less bright.

Jayn
Hors ligne
A rejoint: 08/27/2010

One error I may have made is that the acpi_call is not appearing in lsmod when I reboot. What file do I need to edit to change that?

Jayn
Hors ligne
A rejoint: 08/27/2010

Come to think of it, is the Intel 3150 even supported in Trisquel with any acceleration? If not, then I will just keep using the Unaccelerated NVIDIA ION because at least my LCD brigtness max is greater.

Magic Banana

I am a member!

I am a translator!

Hors ligne
A rejoint: 07/24/2010

I am pretty sure you can have the 3D acceleration with any Intel chipset. If it is recent, you may need to update your kernel. Either taking the 3.5 version available in Trisquel 6.0's repository (the package is named "linux-generic-lts-belenos") or even updating to the latest version.

Jayn
Hors ligne
A rejoint: 08/27/2010

The two tutorials I read were for Ubuntu and ArchLinux, were from 2011 (with a relatively old kernel), and did not mention installing any new Intel driver. Might it be that getting the 3150 to work relies on a non-Free blob in the kernel that they had as Ubuntu and Arch, but that we do not abide as Trisquel?

lembas
Hors ligne
A rejoint: 05/13/2010

Yes, that can be so. But perhaps the latest kernel contains a free stack, it's easy to test.

Jayn
Hors ligne
A rejoint: 08/27/2010

I installed the 3.5 belenos kernel, rebooted after switching the graphics chip, and verified I am running the 3.5 kernel. My LCD is still dimmer and the driver still says fallback. Perhaps this is just a non-Free intel GPU.

Jayn
Hors ligne
A rejoint: 08/27/2010

Or is that what you meant by 'testing'?

lembas
Hors ligne
A rejoint: 05/13/2010

Not really as 3.5 is relatively old. The easiest way to test the newest stable versions is by using jxself's repo at http://jxself.org/linux-libre/

icarolongo
Hors ligne
A rejoint: 03/26/2011

You can run compiz? Try with Super (Windows key) + S or Super + W with one or two windows opened.

If it works you have 3D acceleration. Probably all the computers with Intel Graphics from 2004 or newest works.

icarolongo
Hors ligne
A rejoint: 03/26/2011

The fallback mode probably is from GNOME.
You can change the graphics card in "Details" from System Settings (GNOME Control Center) installing mesa-utils.

Jayn
Hors ligne
A rejoint: 08/27/2010

After mesa-utils was installed, now I see "Gallium 0.4 on llvmpipe (LLVM 0x300) " as the driver, but the experience is still fallback. I will update kernel, switch chipsets, and report back

Jayn
Hors ligne
A rejoint: 08/27/2010

I just recovered from a minor disaster. I ran the 3.10.9 kernel which seemed fine at first, but then my whole system would freeze and my wifi adapter would not power on and there was no wifi icon in my notification area.In addition, I could not build the acpi_call module that built in 3.5 generic.

When I reboot into the Intel chipset, now Details shows Intel IGD, but again the "experience" line reads "fallback"

I was not able to get a result from Super+S or W, but I did try to run compiz with many windows and ALT+TAB'ed between them. A live preview of the open windows occured. Does this mean compiz works, and I therefore have mild 3d acceleration?

Another thing I remember from almost a year ago is that under the NVIDIA fallback driver, I was able to play Tux Racer (the 3d one) at decent framerates. Does this conclusively prove that even the NVIDIA chip has some acceleration? My main reason for thinking something is not right is that Minitube in particular freezes my system, as well as movie player on large videos. Might this be specific to the applications? VLC plays large video and DVD's fine, so maybe I should not be suspecting a driver here?

If I do in fact have acceleration for the Intel chipset, is there a way to get my LCD to not be so dim?

I am removing the 3.10 kernel to avoid any mishaps.

icarolongo
Hors ligne
A rejoint: 03/26/2011

The 'experience' fallback is from GNOME. Trisquel by default uses GNOME 3.4 Fallback (GNOME Panel) + Compiz or Metacity(from old GNOME 2) for computers without 3D acceleration.

You can change this using GNOME Shell the default from GNOME 3.

Since GNOME 3.8 the Fallback Mode (GNOME Panel like GNOME 2) was removed, now only works with GNOME Shell and 3D acceleration.

andrew
Hors ligne
A rejoint: 04/19/2012

On 30/08/13 13:11, icarolongo wrote:
> Since GNOME 3.8 the Fallback Mode (GNOME Panel like GNOME 2) was
> removed, now only works with GNOME Shell and 3D acceleration.

Fallback mode *is* still maintained AFAIK. It was announced last year
that it would be ended, then someone stepped up and became the new
maintainer[1]. It's now been renamed to GNOME Flashback[2]. But, as I've
said many times in the past, and I'm sure others will agree with me, I'm
not really impressed with the state of GNOME Fallback mode, or at least
the version packaged in this version of Trisquel.

GNOME 3.8 Shell works with llvmpipe (I can confirm this), so 3D
acceleration isn't /necessary/. Although in a VM it seems to struggle a
little.

1: http://jonathancarter.org/2013/02/05/gnome-panel-is-alive/
2: https://wiki.gnome.org/GnomeFlashback

Andrew.

lembas
Hors ligne
A rejoint: 05/13/2010

According to the man page intel supports the i810, i810-DC100, i810e, i815, i830M, 845G, 852GM, 855GM, 865G, 915G, 915GM, 945G, 945GM, 965G, 965Q, 946GZ, 965GM, 945GME, G33, Q33, Q35, G35, GM45, G45, Q45, G43, G41 chipsets, and Pineview-M in Atom N400 series, Pineview-D in Atom D400/D500 series, so no?

Jayn
Hors ligne
A rejoint: 08/27/2010

Ok, so I just sudo apt-get remove'ed the linux-libre64 and headers, removed the sources.list entry for the new kernel and ran update-grub but I am still booting into 3.10.9 by default.

What else do I need to do to get rid of the new kernel?

lembas
Hors ligne
A rejoint: 05/13/2010

Those are meta packages depending on the real deals. And dependencies are not removed when you remove a package. So you need to pop open synaptic and search for linux-image (state:installed) and remove the ones you wish.

Jayn
Hors ligne
A rejoint: 08/27/2010

Is there a more formal way to tell if I have acceleration enabled?

Jayn
Hors ligne
A rejoint: 08/27/2010

According to an Ubuntu page, the driver for the Intel 3150 is the i915. Is that Free?

Jayn
Hors ligne
A rejoint: 08/27/2010

I do not mean to continually re-raise this thread, but I have a new experience to relate.

I took to trying glxgears to give me information about each driver. Under the Gallium 0.4 (NVIDIA ION), I got scores of about 120 fps. Under the Intel IGD (by the way, I read the synaptic description for the xserver-intel package and it DID list the i9xx chipsets which includes mine) I got scores of no more than 60 fps. I did find out that I could not change the LCD brightness with the hotkeys, but I could send a message like this:
sudo setpci -s 00:02.0 f4.b=FF
where FF is the maximum value of brightness. It did bump up my display, but not to the degree the NVIDIA ION allowed. The dilemma comes in the fact that with the Intel IGD driver, Minitube DOES NOT FREEZE. I have been playing video for over half an hour, and what's more, grabbing the window and moving it around, which killed my system under the ION. Is it worth it for the lower brightness and lower glxgears score? I'm not really sure right now, but I do have more insight as to the problem.

So actually, even though it is seriously crippled, the NVIDIA chip still outperforms the Intel 3150. This may be important to me as I use Blender. The brightness is also a must for watching movies, graphic design, general comfort, etc.

For now I think I am sticking to the Gallium 0.4 fallback system.

Mampir
Hors ligne
A rejoint: 12/16/2009

If glxgears stays at 60 fps. with little variance, that means your computer is using your GPU efficiently. It's most probably capable of more.

What's happing is every hardware calculated frame is synchronised with your display's refresh rate. This is a feature you can disable, but I forgot how. I used to disable it before from some file in the /etc directory.

Mampir
Hors ligne
A rejoint: 12/16/2009

PS: The feature is called GLXVBlank. You can disable it from /etc/X11/xorg.conf, although I thought it did it from somewhere else. You can disable it for glxgears only like this:

vblank_mode=0 glxgears

With VBlank I have 60 FPS on average. Without it I have big variance, from 1600 to 3500 FPS.

Jayn
Hors ligne
A rejoint: 08/27/2010

And what is your GPU?

Really the only thing stopping me from switching to the IGD is the lower LCD brightness. Performanc feels no slower compared to the ION. If I can solve that, I will switch.

lembas
Hors ligne
A rejoint: 05/13/2010

Can you change the brightness with the Fn keys? Have you checked out what the corresponding brightness values are in sysfs? Maybe it doesn't go all the way for whatever reason but can be manually adjusted.

You can probably find the correct file with

find /sys -name brightness
Jayn
Hors ligne
A rejoint: 08/27/2010

Actually I checked again and in fact the Fn+F5 and F6 DO work to adjust brightness, it just doesn't go as high as the NVIDIA ION. I will check about that file.

Jayn
Hors ligne
A rejoint: 08/27/2010

For the NVIDIA GPU I get:

/sys/devices/pci0000:00/0000:00:1c.0/0000:04:00.0/backlight/acpi_video0/brightness
/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-1/leds/rtl8187-phy0::radio/brightness
/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-1/leds/rtl8187-phy0::rx/brightness
/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-1/leds/rtl8187-phy0::tx/brightness

Jayn
Hors ligne
A rejoint: 08/27/2010

for the Intel IGD, I get:

/sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-LVDS-1/intel_backlight/brightness
/sys/devices/pci0000:00/0000:00:02.0/backlight/acpi_video0/brightness
/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-1/leds/rtl8187-phy0::radio/brightness
/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-1/leds/rtl8187-phy0::rx/brightness
/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-1/leds/rtl8187-phy0::tx/brightness

it appears slightly differently, so what does this mean?
Am I to edit one such file?

lembas
Hors ligne
A rejoint: 05/13/2010

The first 2 seem interesting. Check their values as you change brightness. They probably change between 0 and 255.

You can try editing those files as super user. (Weird thing might happen if you should input a value outside of the range.)

Jayn
Hors ligne
A rejoint: 08/27/2010

The first one for the NVIDIA starts at 0 at the lowest backlight level and increments by 2 with each press of the brightness-up key. The highest it goes is 10.

lembas
Hors ligne
A rejoint: 05/13/2010

Look at the first 2 for intel.

Jayn
Hors ligne
A rejoint: 08/27/2010

The second file for the NVIDIA gpu seemed to stay at 255 no matter what the current brightness level was .

The first file for the Intel IGD stays at 250 no matter the brightness level.

The second Intel number increments from 0 to 10 going by 2 for every press of the brightness key. The max it goes to is 10.

lembas
Hors ligne
A rejoint: 05/13/2010

>The first file for the Intel IGD stays at 250 no matter the brightness level.

You could try changing this to 255 to see if that makes any difference. This might fry your hw, no idea.

Jayn
Hors ligne
A rejoint: 08/27/2010

I have fixed the problem.

What I had to do was add the following to the GRUB_CMDLINE_LINUX_DEFAULT="" field:
acpi_osi=Linux acpi_backlight=vendor

I am not sure which one statement is the one fixing the situation, so I am leaving both.

then of course I ran sudo update-grub

Now, finally the sudo setpci -s 00:02.0 f4.b=FF command I tried earlier REALLY DOES set the lcd to max as in the ION.

When resuming from a backlight dim or suspend, the command has to be run again, so I may disable lcd dimming and suspend when on battery.

Also, I still need to figure out how to load the acpi_call.ko module everytime at boot automatically.

in my /etc/rc.local file, I also have the commands to trigger Intel-only mode and power off the NVIDIA chip.

But even though it is manual for now, I am enjoying fully bright, accelerated Libre graphics. I can now see a solid preview in Blender, watch Minitube, etc.!

It is important to disregard the higher framerate numbers of the ION driver as even though they were higher, the 3d support was not there. The Intel IGD and glxgears WERE syncing to my refresh rate and the performance is very good, in spite of the "low" 60 fps value.

Thank you all for your help.

lembas
Hors ligne
A rejoint: 05/13/2010

Glad to hear you managed to figure it out. Put that insmod in your rc.local. You can include the setpci command in the resume scripts. Read pm-action manual page, that explains where the resume scripts are.

mYself
Hors ligne
A rejoint: 01/18/2012

The acpi_osi= Linux-kernel parameter by default switches off the dedicated (NVidia) GPU, allowing you to use only one graphic chip at a time. You can check this by entering

lspci|grep VGA

which should not output anything if the NVidia chip is not in use.

Also, I recommend SMTube over MiniTube, which I had previously happened to use. It is much better in design, and rather than using its own built-in player, it redirects the video stream into your favourite media player (Totem on Trisquel, and MPlayer on Trisquel-mini). Related information, including installation instructions can be found here.