Разрыв экрана в 11.10 с графикой intel [закрыто]

15

У меня небольшой разрыв экрана при просмотре видео в Ubuntu 11.10 x64, очень раздражает. Как в Unity, так и в GNOME-Shell. Пожалуйста, сфокусируйтесь на ответе GS, так как это мой основной DE, и я хочу, чтобы он работал.

Это то, что я использую:

  • Строка поставщика OpenGL: Tungsten Graphics, Inc
  • Строка рендеринга OpenGL: Mesa DRI Intel® Sandybridge Mobile
  • Строка версии OpenGL: 2.1 Mesa 7.11
  • Строка версии языка затенения OpenGL: 1.20
  • Расширения OpenGL:

Я думаю, это потому, что я не могу заставить экран синхронизироваться по вертикали, но я не знаю, как это исправить. Я нашел поток, говорящий о driconf, и я установил там настройки "всегда синхронизировать по вертикали". Что я могу сделать больше, чтобы исправить это?

Пожалуйста, помогите, любой ответ приветствуется :) было бы плохо, если я не могу смотреть видео с комфортом на моем новом ноутбуке.

Обновить:

Я подумал, что это может быть связано с частотой обновления экрана, поэтому я попытался изменить это вручную. Я нашел онлайн документацию для моего ноутбука (DELL LATITUDE E5420):

http://support.dell.com/support/edocs/systems/late5520/en/SM_EN/GUID-89CF3778-9361-4F01-A0A4-1D257AE39CAD.html

Там я обнаружил, что частота обновления экрана была 60 Гц, но я не знаю, как изменить это вручную в GNOME-Shell, поэтому я попытался изменить настройки compiz в Unity, чтобы увидеть, есть ли какая-либо разница. У меня все еще была проблема, но я думаю, что она не была такой серьезной, трудно сказать.

Обновление 2:

Проблема существует также в Unity 2D и Gnome-classic. Таким образом, эта проблема, возможно, ограничена настройкой дисплея или проблемой драйвера?

Обновление 3:

Решение для GNOME-Shell - в комментариях к принятому ответу.

Никлас
источник
Этот вопрос касается ошибки, которая была исправлена ​​в более поздних выпусках. Обходной путь может больше не понадобиться, или любой «новый» ответ недействителен (поскольку никто не должен использовать 11.10 ... я думаю). Если кто-то испытывает эту проблему, пожалуйста, откройте отчет об ошибке, поскольку это не ожидаемое поведение.
Брайам

Ответы:

20

Это ошибка с графикой Intel Sandy Bridge.

Единство

Обходной путь для Unity (или Unity 2D с Compiz) состоит в том, чтобы включить опции Принудительно перерисовывать весь экран (перестановка буфера) при перерисовке и, возможно, также не ждать синхронизации видео в Обходных решениях секции CompizConfig Settings Manager:

введите описание изображения здесь

GNOME Shell

В GNOME Shell вы можете обойти эту ошибку, установив CLUTTER_PAINTпеременную окружения в / etc / environment :

CLUTTER_PAINT=disable-clipped-redraws:disable-culling
CLUTTER_VBLANK=True
htorque
источник
Это заставило его работать в Unity! Я просто надеюсь, что кто-то давно принесет хорошее решение для GNOME-Shell ...
Niklas
Здравствуй! Если этот ответ оказался полезным, вы можете пометить его как «принятый», нажав на значок галочки слева от него. :)
htorque
Извините, я надеялся, что кто-нибудь с решением для GNOME-Shell придет, но после прочтения комментариев об ошибках я понял, что еще не было исправления (хотя для некоторых это помогло изменить вывод видео на opengl). Поэтому я забыл изменить статус здесь :) спасибо за подробный ответ!
Никлас
Обходной путь был найден в GNOME-Shell! Для меня это сработало, отредактировав файл / etc / environment и добавив строку: CLUTTER_PAINT = disable-clipped-redraws: disable-culling
Niklas
О вышеупомянутом обходном пути было сообщено в вышестоящем отчете об ошибке.
Никлас
1

У меня старый чипсет Intel (G965), но та же проблема. Единственный способ заставить его работать на 100% «правильно» - использовать наложение видео. Недостатком этого является то, что он не работает правильно с 3D-эффектами и композитингом. Я не знаю, поддерживается ли наложение видео на Sandy Bridge. Если это так, то как это использовать.

Используйте xvinfoдля получения подробного описания всех адаптеров XVideo. В моем случае есть два, «Intel (R) текстурированное видео» и «Intel (R) Video Overlay»). Второй работает для меня, и вывод xvinfo выглядит так:

  Adaptor #1: "Intel(R) Video Overlay"
    number of ports: 1
    port base: 93
    operations supported: PutImage 

В данном случае вам нужен номер порта 93.

Чтобы использовать это в mplayer, либо начните с него, mplayer -vo xv:port=93либо вставьте что-то подобное в ваш $HOME/.mplayer/config:

[default]
vo=xv:port=93

Настройка xv:adaptor=1может также работать.

Для xine есть параметр конфигурации, video.device.xv_portкоторый можно установить в $HOME/.xine/config.

GStreamer имеет свойство deviceдля , xvimagesinkно я не знаю , как это сделать . (Я использую только mplayer).

bseibold
источник
Спасибо за ваш подробный ответ, хотя он не работает для меня, так как я использую Gstreamer, и он не решает эти проблемы при просмотре Flash-видео. Хотя я верю, что это может помочь кому-то еще :)
Niklas