Bug 10359

Summary: Артефакты изображения на IA32
Product: Sisyphus Reporter: Vyacheslav Dikonov <slava>
Component: ffmpegAssignee: Anton Farygin <rider>
Status: CLOSED NOTABUG QA Contact: qa-sisyphus
Severity: normal    
Priority: P2 CC: darktemplar, led, rider
Version: unstable   
Hardware: all   
OS: Linux   

Description Vyacheslav Dikonov 2006-12-03 11:55:44 MSK
После очередного обновления обнаружилось, что на машинах IA32 перестало
нормально воспроизводиться видео. Изображение квадратит и "рвет", некоторые
фрагменты не перерисовываются вовремя.

Проблема возникает сразу после установки libavcodec.so.51 в истории изменений
которого упоминается правка для IA64. Откат на  libavcodec.so.50 решает
проблему, но не позволяет установить многие связанные с видео приложения из
Сизифа из-за зависимостей.
Steps to Reproduce:
1. Установить последний libavcodec
2. Смотреть кино

Actual Results:  
Испорченное изображение

Expected Results:  
Нормальное изображение
Comment 1 Konstantin Pavlov 2006-12-03 12:57:45 MSK
Сэмпл предоставить можете?
Comment 2 Konstantin Pavlov 2006-12-03 13:05:06 MSK
Да, и чем кино смотрите и ведет ли себя так же ffplay и остальные
мультимедиа-плееры, основанные на ffmpeg?
Какие форматы при этом себя так ведут, какие не ведут?
Comment 3 led 2006-12-04 12:08:03 MSK
(In reply to comment #1)
> Сэмпл предоставить можете?

В качестве сэмпла - практически любой файл с видео в XviD (может и другие 
MPEG4), но... только на проигрывателях, использующих движок libxine. Похоже это 
баг не ffmpeg, а libxine "перестал уметь" работать с обновлённым ffmpeg :(
Comment 4 Konstantin Pavlov 2006-12-04 13:17:44 MSK
Странно. Проверил свои xvid-файлы на xine-ui-0.99.4-alt2, все хорошо.
Правда, у меня ffmpeg несколько свежее на этой машине, чем в сизифе.
libffmpeg-0.5.0-alt1.svn7113.
Comment 5 Anton Farygin 2006-12-04 14:36:12 MSK
Подтверждаю - воспроизводится в xine на x86_64.

mplayer при этом показывает нормально.
$ rpm -qa|egrep "libxine|ffmpeg"
libxine-devel-1.1.2-alt8
libxine-1.1.2-alt8
libffmpeg-devel-0.5.0-alt1.svn7103
libffmpeg-0.5.0-alt1.svn7103
Comment 6 Vyacheslav Dikonov 2006-12-04 23:10:02 MSK
Про xine неправда! У меня эффект возник сначала в Mplayer и только потом я его
заметил в xine. Пример у меня есть, но это avi чуть больше DVD, который
перестает воспроизводиться, если от его отрезать кусок (многопроходное
кодирование). 

Артефакт хорошо заметен в популярной заставке XХ cеntury FОХ. После движущейся
грани остается хвост из неперерисовавшихся квадратиков.
Comment 7 Anton Farygin 2006-12-05 12:22:57 MSK
Что значит "неправда"? 

Я говорю то что вижу.
Comment 8 Vyacheslav Dikonov 2006-12-06 11:07:45 MSK
Методом исключения становится понятно, что libxine ни в чем ни виноват. У меня
артефакты возникали в MPayer, а в xine все было в порядке. 

Затем после пляски с библиотеками я добился того, что артефакты стали появляться
везде. После этого я откатился на libavcodec.so.50 и все, что потребовалось по
зависимостям. Теперь показывает нормально. 
Comment 9 Konstantin Pavlov 2006-12-06 19:33:18 MSK
Вячеслав, а на какую именно версию Вы откатились?
Comment 10 led 2006-12-06 20:30:52 MSK
(In reply to comment #6)
> Пример у меня есть, но это avi чуть больше DVD, который
> перестает воспроизводиться, если от его отрезать кусок (многопроходное
> кодирование). 

avisplit'ом разве нельзя отрезать? Или
mencoder -ovc copy -oac copy -endpos 00:01:00
?
Comment 11 Vyacheslav Dikonov 2006-12-06 21:44:42 MSK
Вот на это я и откатился:

libavcodec-0.5.0-alt1.svn6847
libavformat-0.5.0-alt1.svn6847
libffmpeg-0.5.0-alt1.svn6847

они изображение не портят.

Comment 12 Vyacheslav Dikonov 2006-12-06 21:53:37 MSK
    > avisplit'ом разве нельзя отрезать? Или
    > mencoder -ovc copy -oac copy -endpos 00:01:00

    Кхе-кхе, этими генераторами псевдослучайных последовательностей байтов резать
    ничего нельзя. Не играет кино после этого. ...Хотя... эффект продемонстрирован
    отлично. 

Comment 13 Vyacheslav Dikonov 2006-12-06 22:02:10 MSK
1 минута типичного avi 720p весит 30 Мб и сюда не пролезает. Кроме того, ее
невозможно смотреть кусок оторванный от целого не играет. 


AVI: ODML: Построение индекса ODML (3 звеньев супериндекса).
VIDEO:  [XVID]  1280x528  12bpp  23,976 fps  4384,5 kbps (535,2 kbyte/s)
[V] filefmt:3  fourcc:0x44495658  size:1280x528  fps:23,98  ftime:=0,0417
видеокодек: копирование кадров (1280x528 12bpp fourcc=44495658)
аудиокодек: копирование кадров (формат=2000 цепочек=2 скорость=48000 битов=0
Б/с=48000 образец=1)
Запись заголовка...
ODML: Aspect information not (yet?) available or unspecified, not writing vprp
header.
Запись заголовка...
ODML: Aspect information not (yet?) available or unspecified, not writing vprp
header.
Запись индекса...4f ( 0%) 17,75fps Trem:   9min 139mb  A-V:0,038 [2463:0]
Запись заголовка...
ODML: Aspect information not (yet?) available or unspecified, not writing vprp
header.

Video stream: 2463,579 kbit/s  (307947 B/s)  size: 308255 bytes  1,001 secs  24
frames
Audio stream:  384,000 kbit/s  (48000 B/s)  size: 48000 bytes  1,000 secs
Comment 14 Konstantin Pavlov 2006-12-19 09:24:33 MSK
Проблема понятна и локализована, видимо, все дело в revision 6942 пакета ffmpeg.
По словам авторов ffmpeg, regression тесты в этой ревизии были выявлены, но
исправлены в более поздних версиях. Я им отослал отрывок из видеофайла, пока что
молчат.

Боюсь, пока что Вам придется пользоваться более другими плеерами, чем
xine/xine-based, в mplayer/ffplay/vlc такой проблемы не наблюдается ни у меня,
ни у мантейнера xine/mplayer.
Comment 15 Vyacheslav Dikonov 2006-12-29 00:38:11 MSK
Именно Mplayer я сейчас и использую (xine после очередного обновления ffmpeg
просто падает). Так вот в Mplayer все артефакты есть. Проявляются они на тех же
сценах и так же как было в xine.

Кроме того, неквадратящая старая версия ffmpeg сильно тормозит (1 кадр в 4-5
секунд) на динамичных сценах фильмов в формате mkv. Новые квадратящие от этого
бага избавились.  
Comment 16 Konstantin Pavlov 2007-01-15 04:08:59 MSK
Ну что, все еще проявляется в свете libxine-1.1.3-alt1?
Повторюсь, что подобных проблем я не видел ни в mplayer, ни в чем либо еще
другом, использующем ffmpeg, кроме libxine.
Comment 17 Vyacheslav Dikonov 2007-01-17 21:20:25 MSK
Нет :( Xine стал просто падать, так что никаких артефактов не видно. Просто
segfault.
Comment 18 led 2007-01-17 21:47:41 MSK
(In reply to comment #17)
> Нет :( Xine стал просто падать, так что никаких артефактов не видно. Просто
> segfault.

Тогда:
1) однозначно закрывайте этот баг на ffmpeg, потому как libxine-1.1.3-alt1 не 
использует ничего из пакетов ffmpeg.
2) странно, но, похоже, что ни у кого кроме вас Xine "просто так" не падает, 
тем более с segfault :(. Ищите что-то у себя в системе: железо, целостность 
установленных пакетов, под вновь созданным пользователем попробуйте... 
Запустите xine с --verbose - может это что-нибудь прояснит.
Comment 19 Konstantin Pavlov 2007-01-18 12:31:03 MSK
resolved / invalid
Comment 20 Konstantin Pavlov 2007-02-27 14:00:58 MSK
Закроем?
Comment 21 led 2007-02-27 14:08:31 MSK
(In reply to comment #20)
> Закроем?

Её изначально надо было закрыть как INVALID, потому как проблема была с 
libxine, а не с ffmpeg. Закрывай, потому как, думаю, у автора 
багрепорта "катастрофически нет времени на такие пустяки":)
Comment 22 Konstantin Pavlov 2007-02-27 14:14:57 MSK
Закрой ты, а то мне неприлично -- я ж типа как AssignedTo :)
Comment 23 led 2007-02-27 14:20:29 MSK
это резолвить"неприлично", а закрывать - в самый раз:)
Comment 24 Vyacheslav Dikonov 2007-02-28 09:00:00 MSK
Эта проблема была в ffmpeg. Сейчас версия сменилась и ее больше не заметно.
Поэтому и следует закрыть. В xine свои проблемы, с этим не связанные.