Broadcom crystal hd установка в ноутбук
[ 1116.445682] Loading crystalhd 0.9.27
[ 1116.445795] PCI_INFO: Vendor:0x14e4 Device:0x1612 s_vendor:0x14e4 s_device: 0x2612
[ 1116.445848] Broadcom 70012 Decoder 0000:02:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[ 1116.447087] allocated 18 elem
[ 1116.447239] alloc irq_desc for 29 on node -1
[ 1116.447256] alloc kstat_irqs on node -1
[ 1116.447301] Broadcom 70012 Decoder 0000:02:00.0: irq 29 for MSI/MSI-X
[ 1116.447399] Starting BCM70012 Device
[ 1116.684240] clock is moving to 175 with n 35 with vco_mg 2
[ 1116.684272] CStopping BCM70012 Device
[ 1116.908158] Broadcom 70012 Decoder 0000:02:00.0: setting latency timer to 64
Теперь нам понадобятся исходники xbmc я использую pvr2 ветку, собирать их будем здесь же /usr/local/src, процесс довольно таки долгий, исходники занимают около гигабайта…
aptitude install subversion make g++ gcc gawk pmount libtool nasm automake cmake gperf unzip bison libsdl-dev libsdl-image1.2-dev libsdl-gfx1.2-dev libsdl-mixer1.2-dev libfribidi-dev liblzo2-dev libfreetype6-dev libsqlite3-dev libogg-dev libasound-dev python-sqlite libglew-dev libcurl3 libcurl4-openssl-dev x11proto-xinerama-dev libxinerama-dev libxrandr-dev libxrender-dev libmad0-dev libogg-dev libvorbisenc2 libsmbclient-dev libmysqlclient-dev libpcre3-dev libdbus-1-dev libhal-dev libhal-storage-dev libjasper-dev libfontconfig-dev libbz2-dev libboost-dev libfaac-dev libenca-dev libxt-dev libxtst-dev libxmu-dev libpng-dev libjpeg-dev libpulse-dev mesa-utils libcdio-dev libsamplerate-dev libmms-dev libmpeg3-dev libfaad-dev libflac-dev libiso9660-dev libass-dev libssl-dev fp-compiler gdc libwavpack-dev libmpeg2-4-dev
cd /usr/local/src/xbmc-pvr2
./bootstrap
./configure --enable-crystalhd --disable-joystick --enable-ccache
— XBMC Configuration:
— Debugging: Yes
Profiling: No
Optimization: Yes
OpenGL: Yes
VDPAU: No
CrystalHD: Yes
Joystick: No
XRandR: Yes
GOOM: No
PCRE Support: Yes
MID Support: No
ccache: Yes
PulseAudio: Yes
FAAC: Yes
DVDCSS: Yes
Avahi: Yes
Non-free: Yes
ASAP Codec: No
Deprecated libdts: No
Deprecated liba52: No
External Libraries: No
External FFmpeg: No
External liba52: No
External libdts: No
External libass: No
External Python: No
prefix: /usr/local
------------------------
checkinstall --fstrans=no --install=yes --pkgname=xbmc-crystal --pkgversion «last-svn-xbmc-pvr2-crystal»
Итак после проделаных манипуляций, имеем собранный пакет /usr/local/src/xbmc-pvr2/xbmc-crystal_last-svn-xbmc-pvr2-crystal-1_i386.deb, а так же установленный из SVN
XBMC-PVR2 готовый для работы с нашим аппаратным декодером, для активации декодера в XBMC, идем в настройки видео и выбираем драйвер crystalHD.
Приятного просмотра!
Второй — не универсален и ограничен. Мне известны два способа — установка кодека CoreAVC и опережающий воспроизведение буфер Crystal Player-а (см. Настройка нетбука на максимальную производительность для HDTV). В принципе, это вполне сносное решение для 720p. Однако, есть два больших минуса: 100% загрузки процессора и полная несостоятельность в случае с 1080p.
Третий кажется мне наиболее «правильным». Можно сразу купить нетбук с Nvidia ION — универсальное решение, которое дает дополнительные плюшки вроде вычислений CUDA и возможности играть в 3D игры (впрочем, удовольствие на маленьком экранчике сомнительное). К сожалению, Nvidia ION-powered нетбуки появились лишь недавно и пока еще дороги. Да и что поделать, если уже купил себе нетбук без всяких «понтов»?
Есть выход! Называется он Broadcom Crystal HD, и «ускорить» им свой EEE PC или Aspire One вполне реально и дешево.
Корпорация Broadcom год назад выпустила карту Crystal HD на интерфейсе Mini PCI Express, которая предоставляет аппаратное ускорение воспроизведения H.264 и MPEG 2,4 (а по слухам и Flash). Прелесть вся в том, что микросхемку можно всунуть в свободный PCIe слот нетбука. Дальше пойдет речь о том, как это чудо заполучить, как настроить и как оно работает.
Все, о чем дальше пойдет речь ниже, может при наличии очень кривых рук привести к потерям как денег, так и нетбука в целом.
Рассказывать я буду на своем примере. Моя конфигурация:
Acer Aspire One AOD 250:
Intel Atom Single Core N270 (1.60 ГГц/ 512 КБ/ FSB 533), 10.1" SD (1024x600), 2GB RAM
Windows 7 + Xubuntu 10.04 (beta)
Что нам потребуется
- наличие свободного mini PCIe слота
- около 30$ на PayPal или уже купленный Crystal HD
- если будете покупать — готовность ждать 2 месяца *
- специфический софт под Windows
- терпение и крепкие нервы (само собой)
Ссылка на mini PCIe с википедии.
Обычно у дешевого нетбука без Yota есть свободный слот под 3G карту, он как раз и есть нужный. В моем случае он был на задней стороне, слева от отсека для смены оперативной памяти. Точно знаю, что похожее есть и у старичка AOD150, но там нет коннектора (т.е. куда непосредственно втыкать плату). Если слота нет, а вставить микросхемку очень хочется, можно разобрать нетбук, заменить wifi-карту (которая в подавляющем большинстве случаев mini PCIe) на Crystal HD, а проблему с беспроводным интернетом решить покупкой USB wifi донгла.
Я покупал карту на eBay. Не исключено, что она продается на каких-то радиорынках. Времени бегать/узнавать у меня не было, зато были деньги на PayPal.
Список софта я опишу дальше.
Получаем Crystal HD
Покупаем микросхемку на eBay. Например здесь. Я покупал 2 месяца назад, и стояла она 23 бакса включая доставку. Сейчас видимо запас их подходит к концу, и стоят они гораздо дороже. Обращаю внимание, что есть 3 разновидности модели — 70010 (старая), 70012 (как у меня), 70015 (самая новая и крутая по фичам). 70012 вполне хорошо работает.
Ждем около 2 месяцев, пока ее доставят (мне прислали из Сингапура).
Заставляем железо работать
Когда я радостно вставил Crystal HD в свой нетбук, то сначала жестко обломался, потому что ее не видел ни Windows 7, ни Xubuntu. Команда
lspci | grep Broadcom
показала шиш с маслом. Не надо расстраиваться, друзья! Возможно, в этом случае дело не в том что микросхемку облучили чем-то на таможне или долбанули статикой в самолете, а банально в старой версии BIOS вашего нетбука. Действуя интуитивно и наугад, я перепрошил BIOS своего AOD250 с 1.06 до 1.27. О чудо! Карта определилась,
lspci | grep Broadcom
Multimedia controller: Broadcom Corporation BCM70012 Video Decoder [Crystal HD] (rev 01)
Возимся с кодеками
Ставим Haali Media Splitter (для контейнера MKV). Ставим AC3Filter (для Dolby AC3) и CoreAAC (для AAC).
Может, конечно, у некоторых счастливчиков после этого все сразу заработает, но я был явно не в их числе. При открытии первого попавшегося под руку 720p mkv (h.264) Windows Media Player-ом (и Media Player Classic Home Cinema тоже) я получил давно знакомые тормоза и 100% CPU. Здравствуй, codec hell.
Открыв этот файл в GraphStudio (File->Add Media file), я увидел, что h.264 видео поток по-прежнему декодируется встроенным в Windows 7 кодеком. DirectShow фильтр от Broadcom стоял. Убедиться в этом можно, найдя «Broadcom Video Decoder» в списке Graph->Insert filter…
Размеется, перезагрузка ничего не поменяла. На помощь приходит Windows 7 Preferred Filter Tweaker!
Запустив его, переключаем h.264 и MPEG2 с Microsoft на Broadcom. Видимо, в дальнейшем разработчики этой тулзы добавят заявленную поддержку Xvid, VC-1 и Divx для Broadcom-а, но на момент написания этого не было. Жмем Apply, в следующем окне везде ставим галки (отключаем все кодеки Microsoft, чтобы потом не мешались). Вуаля! GraphEdit показывает, что h.264 декодируется Broadcom-ом, звук — CoreAAC, Windows Media Player и др. уверенно показывает видео со звуком.
Возможно, у тех, у кого стоит Windows XP, такие проблемы не возникнут.
Настройка Crystal HD под Xubuntu тянет на отдельный топик…
Полевые испытания
… проводились на Windows Media Player 12, экране нетбука и питании от сети.
Media | Нагрузка CPU, avg | Нагрузка CPU, max | Качество |
720p MKV (3216MB, 2:18) Video: AVC 1280x544 24.00fps Audio: AAC 48000Hz 6ch | 30% | 40% | Отличное |
1080p MKV (8421MB, 1:43) AVC 1920x816 23.98fps Audio: Dolby AC3 48000Hz 6ch | 30% | 40% | Отличное |
DWM (эффекты Aero) ел до 15% CPU.
Под «отличным» качеством воспроизведения я имел в виду синхронизацию видео со звуком, отсутствие отставаний и рывков, насыщенность цвета, в общем обычный нормальный показ фильма. Время работы от стандартной 3-ячеечной батареи составило 2 часа в случае с 720p и 1 час 55 мин в случае с 1080p. Crystal HD сильно греется (не просто так на нем была специальная термонаклейка, рассеивающая тепло).
Обновление: я протестировал Crystal HD на внешнем мониторе. Youtube. Вердикт — «отлично». Монитор был SyncMaster 2223nw 1680x1050, 1080p видео — фрагмент фильма №2.
При обычной работе с нетбуком карта совсем не греется и не сказывается на времени автономной работы.
Broadcom Crystal HD годится для решения проблемы воспроизведения видео высокой четкости на нетбуках с ограниченными ресурсами процессора. Это относительно дешево и не имеет явных минусов.
Второй — не универсален и ограничен. Мне известны два способа — установка кодека CoreAVC и опережающий воспроизведение буфер Crystal Player-а (см. Настройка нетбука на максимальную производительность для HDTV). В принципе, это вполне сносное решение для 720p. Однако, есть два больших минуса: 100% загрузки процессора и полная несостоятельность в случае с 1080p.
Третий кажется мне наиболее «правильным». Можно сразу купить нетбук с Nvidia ION — универсальное решение, которое дает дополнительные плюшки вроде вычислений CUDA и возможности играть в 3D игры (впрочем, удовольствие на маленьком экранчике сомнительное). К сожалению, Nvidia ION-powered нетбуки появились лишь недавно и пока еще дороги. Да и что поделать, если уже купил себе нетбук без всяких «понтов»?
Есть выход! Называется он Broadcom Crystal HD, и «ускорить» им свой EEE PC или Aspire One вполне реально и дешево.
Корпорация Broadcom год назад выпустила карту Crystal HD на интерфейсе Mini PCI Express, которая предоставляет аппаратное ускорение воспроизведения H.264 и MPEG 2,4 (а по слухам и Flash). Прелесть вся в том, что микросхемку можно всунуть в свободный PCIe слот нетбука. Дальше пойдет речь о том, как это чудо заполучить, как настроить и как оно работает.
Все, о чем дальше пойдет речь ниже, может при наличии очень кривых рук привести к потерям как денег, так и нетбука в целом.
Рассказывать я буду на своем примере. Моя конфигурация:
Acer Aspire One AOD 250:
Intel Atom Single Core N270 (1.60 ГГц/ 512 КБ/ FSB 533), 10.1" SD (1024x600), 2GB RAM
Windows 7 + Xubuntu 10.04 (beta)
Что нам потребуется
- наличие свободного mini PCIe слота
- около 30$ на PayPal или уже купленный Crystal HD
- если будете покупать — готовность ждать 2 месяца *
- специфический софт под Windows
- терпение и крепкие нервы (само собой)
Ссылка на mini PCIe с википедии.
Обычно у дешевого нетбука без Yota есть свободный слот под 3G карту, он как раз и есть нужный. В моем случае он был на задней стороне, слева от отсека для смены оперативной памяти. Точно знаю, что похожее есть и у старичка AOD150, но там нет коннектора (т.е. куда непосредственно втыкать плату). Если слота нет, а вставить микросхемку очень хочется, можно разобрать нетбук, заменить wifi-карту (которая в подавляющем большинстве случаев mini PCIe) на Crystal HD, а проблему с беспроводным интернетом решить покупкой USB wifi донгла.
Я покупал карту на eBay. Не исключено, что она продается на каких-то радиорынках. Времени бегать/узнавать у меня не было, зато были деньги на PayPal.
Список софта я опишу дальше.
Получаем Crystal HD
Покупаем микросхемку на eBay. Например здесь. Я покупал 2 месяца назад, и стояла она 23 бакса включая доставку. Сейчас видимо запас их подходит к концу, и стоят они гораздо дороже. Обращаю внимание, что есть 3 разновидности модели — 70010 (старая), 70012 (как у меня), 70015 (самая новая и крутая по фичам). 70012 вполне хорошо работает.
Ждем около 2 месяцев, пока ее доставят (мне прислали из Сингапура).
Заставляем железо работать
Когда я радостно вставил Crystal HD в свой нетбук, то сначала жестко обломался, потому что ее не видел ни Windows 7, ни Xubuntu. Команда
lspci | grep Broadcom
показала шиш с маслом. Не надо расстраиваться, друзья! Возможно, в этом случае дело не в том что микросхемку облучили чем-то на таможне или долбанули статикой в самолете, а банально в старой версии BIOS вашего нетбука. Действуя интуитивно и наугад, я перепрошил BIOS своего AOD250 с 1.06 до 1.27. О чудо! Карта определилась,
lspci | grep Broadcom
Multimedia controller: Broadcom Corporation BCM70012 Video Decoder [Crystal HD] (rev 01)
Возимся с кодеками
Ставим Haali Media Splitter (для контейнера MKV). Ставим AC3Filter (для Dolby AC3) и CoreAAC (для AAC).
Может, конечно, у некоторых счастливчиков после этого все сразу заработает, но я был явно не в их числе. При открытии первого попавшегося под руку 720p mkv (h.264) Windows Media Player-ом (и Media Player Classic Home Cinema тоже) я получил давно знакомые тормоза и 100% CPU. Здравствуй, codec hell.
Открыв этот файл в GraphStudio (File->Add Media file), я увидел, что h.264 видео поток по-прежнему декодируется встроенным в Windows 7 кодеком. DirectShow фильтр от Broadcom стоял. Убедиться в этом можно, найдя «Broadcom Video Decoder» в списке Graph->Insert filter…
Размеется, перезагрузка ничего не поменяла. На помощь приходит Windows 7 Preferred Filter Tweaker!
Запустив его, переключаем h.264 и MPEG2 с Microsoft на Broadcom. Видимо, в дальнейшем разработчики этой тулзы добавят заявленную поддержку Xvid, VC-1 и Divx для Broadcom-а, но на момент написания этого не было. Жмем Apply, в следующем окне везде ставим галки (отключаем все кодеки Microsoft, чтобы потом не мешались). Вуаля! GraphEdit показывает, что h.264 декодируется Broadcom-ом, звук — CoreAAC, Windows Media Player и др. уверенно показывает видео со звуком.
Возможно, у тех, у кого стоит Windows XP, такие проблемы не возникнут.
Настройка Crystal HD под Xubuntu тянет на отдельный топик…
Полевые испытания
… проводились на Windows Media Player 12, экране нетбука и питании от сети.
Media | Нагрузка CPU, avg | Нагрузка CPU, max | Качество |
720p MKV (3216MB, 2:18) Video: AVC 1280x544 24.00fps Audio: AAC 48000Hz 6ch | 30% | 40% | Отличное |
1080p MKV (8421MB, 1:43) AVC 1920x816 23.98fps Audio: Dolby AC3 48000Hz 6ch | 30% | 40% | Отличное |
DWM (эффекты Aero) ел до 15% CPU.
Под «отличным» качеством воспроизведения я имел в виду синхронизацию видео со звуком, отсутствие отставаний и рывков, насыщенность цвета, в общем обычный нормальный показ фильма. Время работы от стандартной 3-ячеечной батареи составило 2 часа в случае с 720p и 1 час 55 мин в случае с 1080p. Crystal HD сильно греется (не просто так на нем была специальная термонаклейка, рассеивающая тепло).
Обновление: я протестировал Crystal HD на внешнем мониторе. Youtube. Вердикт — «отлично». Монитор был SyncMaster 2223nw 1680x1050, 1080p видео — фрагмент фильма №2.
При обычной работе с нетбуком карта совсем не греется и не сказывается на времени автономной работы.
Broadcom Crystal HD годится для решения проблемы воспроизведения видео высокой четкости на нетбуках с ограниченными ресурсами процессора. Это относительно дешево и не имеет явных минусов.
Ниже приведены настройки потоковой передачи моей сети:
1. Сервер MSI Wind Nettop Atom 330 под управлением Ubuntu Server (Lucid) и MiniDLNA
2. Телевизор LG 42LE5400, который может воспроизводить мультимедиа из MiniDLNA (без субтитров)
3. LG BD570 Bluray-плеер, который может воспроизводить мультимедиа из MiniDLNA (без субтитров) и SMB / CIFS (субтитры работают)
Итак, как только я подумал, что с сетевым потоковым вещанием у меня все настроено, я узнал о XBMC. Я попробовал это на своем ноутбуке и был впечатлен этим. Итак, я пошел дальше и установил на нем свой ясный сервер:
Все отлично работало. Я добавил несколько библиотек и попытался запустить некоторые файлы. Там проблема началась. Видео не шло гладко, и там были постоянные падения кадров. Кроме того, декодирование видео облагалось налогом на бедном Atom 330.
Поэтому я начал исследования и нашел видеодекодер Crystal HD от Broadcom. Хотя это нельзя сравнить с выделенной видеокартой, которая выполняет декодирование и отображение, она снимает нагрузку с декодирования видео с центрального процессора. Поэтому я подумал, что попробую и подключил его к порту mini PCIe на моем Wind box. Без улучшения.
Исследовал снова и обнаружил, что мне пришлось скомпилировать и установить Crystal HD драйверы и XMBC из исходного кода. Xbmc в репозитории не поддерживает Crystal HD. Я также попробовал новую установку Meerkat Maverick и XBMC, думая, что поддержка Crystal HD может быть включена. Нет, это все еще не работает.
Коробка Wind Atom 330 имеет ограниченные слоты расширения и имеет низкую мощность процессора. Но потребляет низкое энергопотребление, которое идеально от моего всегда на веб и файловом сервере. Crystal HD добавил еще одно использование, потребляя всего 1 лишний ватт. Мой процессор никогда не поднимается выше 20% при просмотре видео. Хотя этот процесс был утомительным (это была моя первая работа по компиляции из исходного кода), я действительно доволен своим результатом.
Карты Broadcom Crystal HD (BCM70012 и BCM70015) предоставляют возможность декодирования HD-видео 1080p для маломощных медиацентров и нетбуков. Программное декодирование HD-видео нагружает процессор и во многих случаях вызывает заикания и пропуски во время воспроизведения видео. В этом посте я объясню, как установить драйвер Broadcom Crystal HD в системах Ubuntu. Карта Broadcom Crystal HD необходима только в том случае, если у вас нет выделенной видеокарты или встроенной видеокарты, поддерживающей декодирование HD. Если вы похожи на меня, используете медиа / файловый сервер на процессоре Atom 330 или используете нетбук, вы можете установить карту Broadcom Crystal HD, чтобы добавить возможность HD. Это обновленная версия моего предыдущего поста накак установить XBMC на Ubuntu Server с картой Broadcom Crystal HD. Broadcom Crystal HD работает на всех трех основных платформах: Windows, Linux и OSX.
Обновления ядра Ubuntu
В моем случае я отключил все автоматические обновления, включая ядро. Но если вы обновите ядро Ubuntu, вам придется сделать следующее:
Broadcom Crystal HD обеспечивает преимущества сжатия видео высокой четкости H.264 и VC-1 для нетбуков, обеспечивая практически безупречное воспроизведение потокового мультимедиа и Blu-ray Disc®, файлового контента и вещания (и других телевизионных источников). Идите вперед, установите HD- карту Broadcom Crystal и наслаждайтесь видео высокой четкости на своем нетбуке, HTPC с процессором Intel Atom или Apple TV.
BCM70012 и BCM70015
Хотя вы можете установить Broadcom Crystal HD BCM70012 или BCM70015, последний более новый и поддерживает больше форматов. Но это также немного дороже, чем его предшественник.
Broadcom Crystal HD BCM70012 и BCM70015
Обратите внимание, что BCM70012 является полноразмерной картой, а BCM70015 – картой MiniPCIe половинной высоты (может поставляться с адаптером).
Скомпилируйте и установите драйвер Broadcom Crystal HD
Перейдите в crystalhd/driver/linux папку:
Затем выполните следующие команды по порядку:
Если у вас многоядерный процессор, то вы можете увеличить скорость компиляции, используя make -j4 (где 4 число ядер) вместо make . Вы можете получать CONFIG_DEBUG_SECTION_MISMATCH=y предупреждения в процессе сборки. Они “в целом” безвредны, поэтому игнорируйте их
Затем установите библиотеки Broadcom Crystal HD. Перейдите к crystalhd/linux_lib/libcrystalhd и выполните следующие команды:
Опять же, вы можете заменить make на make -j4 (заменить 4 на количество ядер в вашей системе).
После установки загрузите драйвер с помощью следующей команды:
Наконец, проверьте, была ли установка успешной, используя следующую команду:
Вы должны увидеть что-то подобное в выводе:
Не беспокойтесь, если ни одно приложение не использует его в настоящее время (вы можете увидеть «используется 0»).
Хотя вам может не потребоваться перезагрузка, я предпочитаю перезагрузку. Итак, перезагрузите ваш сервер. Затем проверьте, указан ли CrystalHD в выводе следующей команды.
Шаг 3: исправьте код для Ubuntu 11.10 и новее
Для Ubuntu 11.10 и более поздних версий необходимо выполнить следующее редактирование. Перейдите к crystalhd/driver/linux и отредактируйте crystalhd_flea_ddr .c :
Сохранить и выйти.
Установите драйвер Broadcom Crystal HD в Linux
Установка драйверов Linux сложна по сравнению с установкой драйверов Windows. Описанная ниже процедура (основанная на этом) предназначена для Ubuntu, но она также может работать в других дистрибутивах Linux.
Шаг 1. Установите необходимые пакеты
Перед установкой драйвера Broadcom Crystal HD вам необходимо установить пакеты, необходимые для компиляции исходных кодов и другие:
Обратите внимание, что многие из вышеперечисленных пакетов могут быть уже установлены, если вы не первый раз компилируете пакеты из исходного кода.
Клонируйте драйверы Crystal HD с помощью следующей команды:
Это должно загрузить необходимые файлы в папку, называемую crystalhd в активной папке.
Читайте также: