Bug 29116

Summary: Отсутствует crystalhd модуль ядра.
Product: Sisyphus Reporter: Valentin Lutt <lutt>
Component: kernel-modules-staging-std-defAssignee: Vitaly Chikunov <vt>
Status: NEW --- QA Contact: qa-sisyphus
Severity: normal    
Priority: P3 CC: aen, anubix, dvd73, evg, first__pilot, kernelbot, placeholder, vt
Version: unstable   
Hardware: all   
OS: Linux   
URL: https://github.com/dbason/crystalhd
Bug Depends on: 30922    
Bug Blocks:    
Attachments:
Description Flags
исходники модуля ядра для crystalhd
none
crystalhd-std-def-2.14.37-alt1.patch
none
crystalhd-std-def-3.14.37-alt1.ko
none
crystalhd-std-def-3.14.38-alt1.ko
none
crystalhd-std-def-3.14.41-alt1.ko
none
crystalhd-3.14.44-std-def-alt1.tar.xz
none
crystalhd-3.14.45-std-def-alt1.tar.xz
none
crystalhd-3.14.48-std-def-alt1-x86_64.tar.xz
none
crystalhd-3.14.49-std-def-alt1-x86_64.tar.xz
none
crystalhd-3.14.50-std-def-alt1-x86_64.tar.xz
none
crystalhd-3.14.51-std-def-alt1-x86_64.tar.xz
none
crystalhd-std-def-3.14.51-alt1-src.tar.xz
none
crystalhd-std-def-3.18.21-alt1-src.tar.xz
none
crystalhd-3.18.21-std-def-alt1-x86_64.tar.xz
none
crystalhd-std-def-3.18.21-alt1.patch.bz2
none
crystalhd-3.14.53-std-def-0.M70P.1-x86_64.tar.xz
none
crystalhd-3.14.54-std-def-0.M70P.1-x86_64.tar.xz
none
crystalhd-4.1.12-std-def-alt1-x86_64.tar.xz none

Description Valentin Lutt 2013-06-27 11:29:58 MSK
Отсутствует модуль ядра для карты crystalhd. Сами библиотеки и firmware в репозитории наличествуют и имеется плагин для gstreamer. mplayer также собран с необходимой поддержкой. В файле libcrystalhd-3.10.0-alt1_4.qa1.src.rpm исходники для сборки модуля ядра присутствуют.
PS: Пробовал собрать самостоятельно для последнего std-def — ругается на отсутствие asm/system.h
Comment 1 Valentin Lutt 2013-06-27 21:12:07 MSK
Created attachment 5861 [details]
исходники модуля ядра для crystalhd
Comment 2 Valentin Lutt 2013-06-27 21:13:57 MSK
В продолжение.
После того, как выяснил что наличие отсутствия asm/system.h для ядра выше 3.3 это нормально, попробовал следуя рекомендациям закомментировать соответсвующие строки и нарвался на целую кучу других ошибок, которые выплывают уже на ядре выше 3.8 после чего утащил с убунтовского git'а патченные исходники и  откомпилировал их, не все разумеется, а только которые в /driver/linux для модуля ядра, остальное было оставлено альтовское. Собралось без проблем, как для последнего std-def в виртуалке, так и для последнего un-def на реальном нетбуке. Как на виртуалке не знаю, а на нетбуке работает.
Исходники которые компилировались прилагаются.
Comment 3 AEN 2013-06-27 21:18:33 MSK
(В ответ на комментарий №2)
> В продолжение.
> После того, как выяснил что наличие отсутствия asm/system.h для ядра выше 3.3
> это нормально, попробовал следуя рекомендациям закомментировать соответсвующие
> строки и нарвался на целую кучу других ошибок, которые выплывают уже на ядре
> выше 3.8 после чего утащил с убунтовского git'а патченные исходники и 
> откомпилировал их, не все разумеется, а только которые в /driver/linux для
> модуля ядра, остальное было оставлено альтовское. Собралось без проблем, как
> для последнего std-def в виртуалке, так и для последнего un-def на реальном
> нетбуке. Как на виртуалке не знаю, а на нетбуке работает.
> Исходники которые компилировались прилагаются.

Спасибо. Мы собираем из этого гита, так что вопрос только в том, чтобы включить модуль в config. При следующей сборке ядра сделаем.
Comment 4 Anton V. Boyarshinov 2013-07-05 10:22:44 MSK
> > нетбуке. Как на виртуалке не знаю, а на нетбуке работает.
> > Исходники которые компилировались прилагаются.
> 
> Спасибо. Мы собираем из этого гита, так что вопрос только в том, чтобы включить
> модуль в config.
Увы, мы собираем ядро из убунтовского гита, но не из этого -- это внешний модуль.
Попробую собрать в ближайшие дни.
Comment 5 Anton V. Boyarshinov 2013-07-05 10:25:13 MSK
Поясню, почему не "прямо сейчас": по хорошему надо упаковать kernel-source-crystalhd из libcrystalhd и сделать на них патч из этих исходников.
Comment 6 Anton V. Boyarshinov 2013-07-05 14:03:34 MSK
вообще-то модуль crystalhd.ko находится во всех +- свежих ядрах в подпакете -staging
Comment 7 AEN 2013-07-05 14:50:32 MSK
(В ответ на комментарий №6)
> вообще-то модуль crystalhd.ko находится во всех +- свежих ядрах в подпакете
> -staging

2lutt: прошу проверить, установив соответствующий пакет.
Comment 8 Valentin Lutt 2013-07-05 15:33:13 MSK
Да я уже сам rpm вытянул и распаковал. Есть там этот модуль. Насколько рабочий пока не знаю. Вечером могу установить для ядра std-def и проверить. Для un-def трогать пока не хочу, там самосборный живёт.
Кстати, они почему то по разным путям встают.
Самосборный живёт в /lib/modules/kernel_version/kernel/drivers/video/broadcom/
а штатный в  /lib/modules/kernel_version/kernel/drivers/staging/crystalhd/
Comment 9 Valentin Lutt 2013-07-05 20:27:07 MSK
Установил для последнего std-def. Файл с такими параметрами
Complete name                            : /home/valentin/Документы/Видео/00019.m4v
Format                                   : MPEG-4
Format profile                           : Base Media / Version 2
Codec ID                                 : mp42
File size                                : 67.2 MiB
Duration                                 : 28s 629ms
Overall bit rate mode                    : Variable
Overall bit rate                         : 19.7 Mbps
Movie name                               : 00019
Encoded date                             : UTC 2013-07-03 17:56:52
Tagged date                              : UTC 2013-07-03 17:58:02
Writing application                      : HandBrake rev0 2013021199

Video
ID                                       : 1
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format profile                           : High@L4.0
Format settings, CABAC                   : Yes
Format settings, ReFrames                : 4 frames
Codec ID                                 : avc1
Codec ID/Info                            : Advanced Video Coding
Duration                                 : 28s 533ms
Bit rate mode                            : Variable
Bit rate                                 : 19.3 Mbps
Width                                    : 1 920 pixels
Height                                   : 1 080 pixels
Display aspect ratio                     : 16:9
Frame rate mode                          : Constant
Frame rate                               : 30.000 fps
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Bits/(Pixel*Frame)                       : 0.311
Stream size                              : 65.8 MiB (98%)
Writing library                          : x264 core 129
Encoding settings                        : cabac=1 / ref=3 / deblock=1:-1:-1 / analyse=0x3:0x113 / me=hex / subme=7 / psy=1 / psy_rd=1,00:0,15 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-3 / threads=12 / lookahead_threads=2 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=300 / keyint_min=30 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=crf / mbtree=1 / crf=22,0 / qcomp=0,60 / qpmin=4 / qpmax=69 / qpstep=4 / vbv_maxrate=25000 / vbv_bufsize=31250 / crf_max=0,0 / nal_hrd=none / ip_ratio=1,40 / aq=1:1,00
Encoded date                             : UTC 2013-07-03 17:56:52
Tagged date                              : UTC 2013-07-03 17:58:02
Color primaries                          : BT.709-5, BT.1361, IEC 61966-2-4, SMPTE RP177
Transfer characteristics                 : BT.709-5, BT.1361
Matrix coefficients                      : BT.709-5, BT.1361, IEC 61966-2-4 709, SMPTE RP177

Audio #1
ID                                       : 2
Format                                   : AAC
Format/Info                              : Advanced Audio Codec
Format profile                           : LC
Codec ID                                 : 40
Duration                                 : 28s 629ms
Bit rate mode                            : Variable
Bit rate                                 : 160 Kbps
Maximum bit rate                         : 169 Kbps
Channel(s)                               : 2 channels
Channel positions                        : Front: L R
Sampling rate                            : 48.0 KHz
Compression mode                         : Lossy
Stream size                              : 559 KiB (1%)
Encoded date                             : UTC 2013-07-03 17:56:52
Tagged date                              : UTC 2013-07-03 17:58:02

Audio #2
ID                                       : 3
Format                                   : AC-3
Format/Info                              : Audio Coding 3
Mode extension                           : CM (complete main)
Codec ID                                 : ac-3
Duration                                 : 28s 608ms
Bit rate mode                            : Constant
Bit rate                                 : 256 Kbps
Channel(s)                               : 2 channels
Channel positions                        : Front: L R
Sampling rate                            : 48.0 KHz
Bit depth                                : 16 bits
Compression mode                         : Lossy
Stream size                              : 894 KiB (1%)
(В качестве исходника брался MTS файл с AVCHD камеры) Rosa MP вообще не показывает, только звук на сером фоне идёт, xbmc проигрывает с жуткими тормозами и раcсинхронизацией. Этот же файл на ядре un-def с самосборным модулем Rosa проигрывает без особых проблем, xbmc заикается.
Машинка обыкновенный нетбук на N270 с 950GMA. В ~/.mplayer/config прописано
vc=ffmpeg12crystalhd,ffodivxcrystalhd,ffh264crystalhd,ffvc1crystalhd,
lavdopts=o=crystalhd_downscale_width=1024,
PS: Сырое видео с камеры этому модулю не по зубам.
PPS: Попозже переключусь на ядро 3.8.3 посмотрю что там mplayer в консоль пишет, но на modprobe crystalhd ругани не было.
Comment 10 Anton V. Boyarshinov 2013-07-08 13:18:45 MSK
Хорошо бы проверить всё-таки на un-def, так как у ядра un-def лучше отзывчивость на таких задачах.
Comment 11 Valentin Lutt 2013-07-08 14:40:23 MSK
(В ответ на комментарий №10)
> Хорошо бы проверить всё-таки на un-def, так как у ядра un-def лучше
> отзывчивость на таких задачах.
Не, ядро не при чём. В общем то с ситуацией разобрался. Дело в том, что в процессе экспериментов я ещё фирмварь на более свежую подмахнул и сейчас имеется следующая ситуация:
Со свежей фирмварью и опцией lavdopts=o=crystalhd_downscale_width=1024 самосборный модуль отрабатывает нормально (загрузка процессора не более 40%), а с модулем из репозитория mplayer эту опцию обработать не может.
Без этой опции одинаковые тормоза что с самосборным модулем, что с модулем из репозитория.Что и понятно, поскольку больше данных туда-сюда гонять приходится.
Со старой фирмварью и этой опцией затык mplayr'а независимо от того, какой модуль используется и одинаковые тормоза без этой опции.
Хотя более лёгкое видео 1080p, например отсюда http://mirror.bigbuckbunny.de/peach/bigbuckbunny_movies/big_buck_bunny_1080p_surround.avi проигрывается без проблем без всякого предварительного масштабирования платой и с обеими вариантами модулей или фирмвари.
Comment 12 Sergey V Turchin 2015-04-06 18:45:38 MSK
(В ответ на комментарий №11)
> с модулем из репозитория mplayer эту опцию обработать не может.
В пакете модуль сильно устарел.
AW-VD920 (PCIID 14e4:1615) в нем вообще не поддерживается.
Comment 13 Zerg 2015-04-06 21:46:15 MSK
(В ответ на комментарий №12)
> AW-VD920 (PCIID 14e4:1615)
BCM70015 имеется ввиду.
Comment 14 Zerg 2015-04-07 00:02:51 MSK
Created attachment 6266 [details]
crystalhd-std-def-2.14.37-alt1.patch
Comment 15 Zerg 2015-04-07 00:04:19 MSK
На BCM70015 с патчем у меня заработало ускорение в gnome-mplayer.
Comment 16 Zerg 2015-04-07 00:05:48 MSK
(В ответ на комментарий №14)
> crystalhd-std-def-2.14.37-alt1.patch
Источники:
http://packages.altlinux.org/en/Sisyphus/srpms/libcrystalhd
https://github.com/frugalware/frugalware-current/tree/master/source/xmultimedia/crystalhd
Comment 17 Anton Farygin 2015-04-07 00:06:09 MSK
Антон, приложи пожалуйста, раз уж у нас есть на чём тестировать.
Comment 18 Anton Farygin 2015-04-07 00:07:13 MSK
И да, наверное надо на Sisyphus перевешивать ?
Comment 19 Zerg 2015-04-18 02:00:51 MSK
Created attachment 6275 [details]
crystalhd-std-def-3.14.37-alt1.ko
Comment 20 Zerg 2015-04-18 02:01:26 MSK
Created attachment 6276 [details]
crystalhd-std-def-3.14.38-alt1.ko
Comment 21 Zerg 2015-05-12 17:16:49 MSK
Created attachment 6282 [details]
crystalhd-std-def-3.14.41-alt1.ko
Comment 22 Zerg 2015-06-16 23:47:14 MSK
Created attachment 6301 [details]
crystalhd-3.14.44-std-def-alt1.tar.xz
Comment 23 Zerg 2015-07-01 13:42:05 MSK
Created attachment 6313 [details]
crystalhd-3.14.45-std-def-alt1.tar.xz
Comment 24 Zerg 2015-07-22 22:40:39 MSK
Created attachment 6321 [details]
crystalhd-3.14.48-std-def-alt1-x86_64.tar.xz
Comment 25 Zerg 2015-08-11 23:12:19 MSK
Created attachment 6340 [details]
crystalhd-3.14.49-std-def-alt1-x86_64.tar.xz
Comment 26 Zerg 2015-08-19 12:46:15 MSK
Created attachment 6344 [details]
crystalhd-3.14.50-std-def-alt1-x86_64.tar.xz
Comment 27 Zerg 2015-08-19 21:27:35 MSK
Created attachment 6346 [details]
crystalhd-3.14.51-std-def-alt1-x86_64.tar.xz
Comment 28 Zerg 2015-09-23 17:31:37 MSK
Created attachment 6378 [details]
crystalhd-std-def-3.14.51-alt1-src.tar.xz
Comment 29 Zerg 2015-09-23 21:38:59 MSK
Created attachment 6379 [details]
crystalhd-std-def-3.18.21-alt1-src.tar.xz
Comment 30 Zerg 2015-09-23 21:39:34 MSK
Created attachment 6380 [details]
crystalhd-3.18.21-std-def-alt1-x86_64.tar.xz
Comment 31 Zerg 2015-09-23 22:05:06 MSK
Created attachment 6381 [details]
crystalhd-std-def-3.18.21-alt1.patch.bz2
Comment 32 Zerg 2015-09-24 20:50:31 MSK
*** Bug 30922 has been marked as a duplicate of this bug. ***
Comment 33 Zerg 2015-09-24 20:55:36 MSK
(В ответ на комментарий №6)
> вообще-то модуль crystalhd.ko находится во всех +- свежих ядрах в подпакете
> -staging
Уже нет.
Да и был он слишком древний.
Comment 34 Sergey V Turchin 2015-09-28 09:02:14 MSK
Created attachment 6384 [details]
crystalhd-3.14.53-std-def-0.M70P.1-x86_64.tar.xz
Comment 35 Zerg 2015-10-07 10:20:43 MSK
Created attachment 6393 [details]
crystalhd-3.14.54-std-def-0.M70P.1-x86_64.tar.xz
Comment 36 Zerg 2015-10-31 19:01:34 MSK
https://github.com/dbason/crystalhd
Comment 37 Zerg 2015-11-04 17:43:22 MSK
Created attachment 6419 [details]
crystalhd-4.1.12-std-def-alt1-x86_64.tar.xz
Comment 38 dvpartizan 2016-10-02 09:10:51 MSK
Здравствуйте.
Есть ли возможность возобновить сборку модуля ядра для текущего ядра (4.4.19-std-def-alt0.M80P.1 #1 SMP Sun Aug 21 02:56:18 UTC 2016 x86_64 GNU/Linux) ну и далее везде? Спасибо.
(Прошу прощения за возможные неверные статусы, это первое обращение).
Comment 39 dvpartizan 2016-10-02 09:50:57 MSK
Здравствуйте.
Есть ли возможность возобновить сборку модуля ядра для текущего ядра (4.4.19-std-def-alt0.M80P.1 #1 SMP Sun Aug 21 02:56:18 UTC 2016 x86_64 GNU/Linux) ну и далее везде? Спасибо.
(Прошу прощения за возможные неверные статусы, это первое обращение).
Comment 40 Sergey V Turchin 2016-10-03 13:05:19 MSK
(В ответ на комментарий №39)
> Есть ли возможность возобновить сборку модуля ядра
Есть. Даже у вас.
Так же у вас есть возможность установить 4.1.12-std-def-alt1 из архивов.
Я у себя на той машине его оставил и лень обновлять.

Драйвер из ядра исключили совсем, поэтому теперь его можно собирать отдельным пакетом, но у меня руки неизвестно, дойдут ли когда-нибудь.
Comment 41 dvpartizan 2016-10-03 13:09:07 MSK
(В ответ на комментарий №40)
> (В ответ на комментарий №39)
> > Есть ли возможность возобновить сборку модуля ядра
> Есть. Даже у вас.
> Так же у вас есть возможность установить 4.1.12-std-def-alt1 из архивов.
> Я у себя на той машине его оставил и лень обновлять.
> 
> Драйвер из ядра исключили совсем, поэтому теперь его можно собирать отдельным
> пакетом, но у меня руки неизвестно, дойдут ли когда-нибудь.
Да, спасибо, разобрался только что.
Ссылка на форум:
https://forum.altlinux.org/index.php?topic=37391.msg296088#msg296088
Comment 42 dvpartizan 2016-10-03 15:47:50 MSK
(В ответ на комментарий №40)
> (В ответ на комментарий №39)
> Драйвер из ядра исключили совсем, поэтому теперь его можно собирать отдельным
> пакетом, но у меня руки неизвестно, дойдут ли когда-нибудь.

Самое то ли забавное, то ли печальное, но пакеты с для этой платы:

gstreamer-plugin-crystalhd - Gstreamer crystalhd decoder plugin
libcrystalhd - Broadcom Crystal HD device interface library
firmware-crystalhd - Firmware for the Broadcom Crystal HD video decoder

не просто имеются в наличии и поддерживаются в свежем дистрибутиве, но и устанавливаются по умолчанию даже без этой железяки...
Comment 43 Sergey V Turchin 2016-10-03 16:42:43 MSK
(В ответ на комментарий №42)
> не просто имеются в наличии и поддерживаются в свежем дистрибутиве, но и
> устанавливаются по умолчанию даже без этой железяки...
Разве вы хотели больше движений делать?

P.S.
Я и kodi в бранчах патчу для добавления поддержки.
Comment 44 Dmitry 2024-10-04 13:46:46 MSK
Драйвер доступен для сборки и сейчас, [тут](https://aur.archlinux.org/packages/libcrystalhd) я описал весь процесс. Смысл  в том, что кроме драйвера под определённое ядро надо еще иметь FFmpeg версии ниже 6.0.