Инструменты для разработки

Здесь освещаются пути и тонкости в разработке собственных приложений Dune HD
Ответить
Аватара пользователя
gusav
Малообщительный
Сообщения: 18
Зарегистрирован: 09 апр 2020, 17:25

Инструменты для разработки

Сообщение gusav » 21 апр 2020, 16:24

Всем здравствуйте.Может кто-нибудь знает, есть ли какой нибудь рабочий способ вытащить cramfs из 102/303/connect прошивки? На sigmaplayer.com нашел екстрактор - http://www.sigmaplayer.com/filebase.php ... t=c&page=1 , но ссылка недоступна - просить зарегистрироваться или залогиниться, несмотря на то, что я итак залогинен. Может проблема с моей учеткой? Просьба, если у кого есть данный экстрактор поделиться или, если есть учетка на Сигма плеер попробовать скачать. Заранее спасибо.
Dune 301 (150721_0136_B9) Сист.флешка присутствует

Аватара пользователя
Brigadir
Администратор
Сообщения: 2932
Зарегистрирован: 07 янв 2018, 18:28
Откуда: С просторов необъятной
Контактная информация:

Сообщение Brigadir » 21 апр 2020, 19:04

Это можно на самой дюне исполнить:
http://files.dune-hd.com/sdk/doc/html/d ... stem_image
Dune HD Pro One 8K Plus (240201_2116_r22)
Dune HD Real Vision 4K (230929_0206_r21)
Dune HD 303D (190919_0242_r11) Сист. флешка присутствует, тестовая
-------------------------------
Keenetic Giga (KN-1010)

Чтобы получить log-файл плагинов, нужно создать на первом носителе, доступном пользователю (обычно внутренний HDD, или любое другое USB-хранилище при отсутствии внутреннего HDD) папку "dune_plugin_logs". Если вы используете USB-флешку, то отформатируйте ее в FAT32 перед тем, как создать папку для логов. После чего перезагрузите дюну и начните пользоваться плагином, в папке dune_plugin_logs появится файл лога.

Все мои (и не только) плагины Dune HD
Гранд-обзор Dune HD Pro One 8K Plus
Краткий обзор Dune HD Pro 4K II
Краткий обзор Dune HD Neo 4K с картинками


Отблагодарить автора (ЮMoney)

Аватара пользователя
gusav
Малообщительный
Сообщения: 18
Зарегистрирован: 09 апр 2020, 17:25

Сообщение gusav » 21 апр 2020, 19:54

Требуется инструмент для извлечения именно из прошивки, если доступа к Дюне нет.
Dune 301 (150721_0136_B9) Сист.флешка присутствует

Аватара пользователя
gusav
Малообщительный
Сообщения: 18
Зарегистрирован: 09 апр 2020, 17:25

Сообщение gusav » 21 апр 2020, 20:43

Задача решена с помощью bash скрипта.

Код: Выделить всё

#!/bin/bash
var=22548992
mkdir extract
touch cramfs
while [ $var -lt 128190976 ] #размер прошивки в байтах
do
dd if=file_in of=extract/file-$var bs=1 skip=$var count=2032 #file_in - имя файла прошивки
cat cramfs extract/file-$var >> cramfs
rm -rf extract/file-$var
var=$(($var+2048))
done
rm -rf extract
Обратите внимание на необходимость указать имя файла прошивки и размер в байтах.
На решение натолкнула тема http://forum.hdtv.ru/index.php?showtopic=19285 за что автору огромное спасибо)
Dune 301 (150721_0136_B9) Сист.флешка присутствует

Аватара пользователя
Brigadir
Администратор
Сообщения: 2932
Зарегистрирован: 07 янв 2018, 18:28
Откуда: С просторов необъятной
Контактная информация:

Сообщение Brigadir » 21 апр 2020, 21:36

Отлично. Осталось посчитать длину файла в скрипте и реализовать передачу имени файла параметром. Получится универсальный инструмент, легкий в использовании.
Dune HD Pro One 8K Plus (240201_2116_r22)
Dune HD Real Vision 4K (230929_0206_r21)
Dune HD 303D (190919_0242_r11) Сист. флешка присутствует, тестовая
-------------------------------
Keenetic Giga (KN-1010)

Чтобы получить log-файл плагинов, нужно создать на первом носителе, доступном пользователю (обычно внутренний HDD, или любое другое USB-хранилище при отсутствии внутреннего HDD) папку "dune_plugin_logs". Если вы используете USB-флешку, то отформатируйте ее в FAT32 перед тем, как создать папку для логов. После чего перезагрузите дюну и начните пользоваться плагином, в папке dune_plugin_logs появится файл лога.

Все мои (и не только) плагины Dune HD
Гранд-обзор Dune HD Pro One 8K Plus
Краткий обзор Dune HD Pro 4K II
Краткий обзор Dune HD Neo 4K с картинками


Отблагодарить автора (ЮMoney)

Аватара пользователя
gusav
Малообщительный
Сообщения: 18
Зарегистрирован: 09 апр 2020, 17:25

Сообщение gusav » 21 апр 2020, 22:01

Отлично. Осталось посчитать длину файла в скрипте и реализовать передачу имени файла параметром. Получится универсальный инструмент, легкий в использовании.
Без проблем) Имя файла передается через пробел после имени скрипта. Например - ./cramfs_extractor_102 dune_firmware_tv102_190919_0242_r11.dff

Код: Выделить всё

#!/bin/bash
var=22548992
filesize=$(stat -c%s "$1")
mkdir extract
while [ $var -lt $filesize ]
do
dd if=$1 of=extract/file-$var bs=1 skip=$var count=2032
cat extract/file-$var >> tango.cramfs
rm -rf extract/file-$var
var=$(($var+2048))
done
rm -rf extract
Dune 301 (150721_0136_B9) Сист.флешка присутствует

Аватара пользователя
gusav
Малообщительный
Сообщения: 18
Зарегистрирован: 09 апр 2020, 17:25

Сообщение gusav » 22 апр 2020, 02:15

Кстати кто знает, что означают цифры в заголовке прошивки в hex редакторе? DUNE FIRMWARE FILE [hdtv_301] format2150721_0136_b 8710195 до этого момента понятно. А вот дальше нет. Я извлек cramfs из прошивки, отредактировал содержащиеся там файлы, запаковал обратно, а прошивка не ставится. Подозреваю что как раз нужно менять что то в данных параметрах. А руками загонять cramfs в /dev/nblock8 каждый раз не хочется.
Dune 301 (150721_0136_B9) Сист.флешка присутствует

Аватара пользователя
gusav
Малообщительный
Сообщения: 18
Зарегистрирован: 09 апр 2020, 17:25

Сообщение gusav » 22 апр 2020, 04:35

Задача решилась правильной установкой checksum. Checksum была в заголовке прошивки после размера прошивки в байтах. Как она генерируется, я так и не понял, но у Дюны есть очень информативный /tmp/run/shell.log. Он то мне все и рассказал - и какую я ему контрольную сумму дал, и какую он ожидал от меня получить. В общем после правки контрольной суммы все успешно прошилось.
Dune 301 (150721_0136_B9) Сист.флешка присутствует

Аватара пользователя
Brigadir
Администратор
Сообщения: 2932
Зарегистрирован: 07 янв 2018, 18:28
Откуда: С просторов необъятной
Контактная информация:

Сообщение Brigadir » 22 апр 2020, 06:14

Вряд ли изобретали что-то экзотическое, стандартный crc16 или 32 наверное. Вот как это на баше изобразить не знаю, не силен. Я в баш только с мануалом в руках лезу, и то стараюсь не лезть лишний раз))

Что дальше, если не секрет?
Dune HD Pro One 8K Plus (240201_2116_r22)
Dune HD Real Vision 4K (230929_0206_r21)
Dune HD 303D (190919_0242_r11) Сист. флешка присутствует, тестовая
-------------------------------
Keenetic Giga (KN-1010)

Чтобы получить log-файл плагинов, нужно создать на первом носителе, доступном пользователю (обычно внутренний HDD, или любое другое USB-хранилище при отсутствии внутреннего HDD) папку "dune_plugin_logs". Если вы используете USB-флешку, то отформатируйте ее в FAT32 перед тем, как создать папку для логов. После чего перезагрузите дюну и начните пользоваться плагином, в папке dune_plugin_logs появится файл лога.

Все мои (и не только) плагины Dune HD
Гранд-обзор Dune HD Pro One 8K Plus
Краткий обзор Dune HD Pro 4K II
Краткий обзор Dune HD Neo 4K с картинками


Отблагодарить автора (ЮMoney)

Аватара пользователя
gusav
Малообщительный
Сообщения: 18
Зарегистрирован: 09 апр 2020, 17:25

Сообщение gusav » 22 апр 2020, 07:07

crc32 и md5 проверял - не оно. Дальше кастомизация прошивки, выпиливание ненужных предустановленных плагинов из firmware_ext и тд
Dune 301 (150721_0136_B9) Сист.флешка присутствует

Аватара пользователя
Brigadir
Администратор
Сообщения: 2932
Зарегистрирован: 07 янв 2018, 18:28
Откуда: С просторов необъятной
Контактная информация:

Сообщение Brigadir » 22 апр 2020, 08:40

Контрольная сумма похожа на crc32 или 16, на md5 или любой другой хэш ни разу не похожа. Это на 99% crc. А под виндовс можете портировать? Было бы удобней в разы, чем с этим линуксом.
Dune HD Pro One 8K Plus (240201_2116_r22)
Dune HD Real Vision 4K (230929_0206_r21)
Dune HD 303D (190919_0242_r11) Сист. флешка присутствует, тестовая
-------------------------------
Keenetic Giga (KN-1010)

Чтобы получить log-файл плагинов, нужно создать на первом носителе, доступном пользователю (обычно внутренний HDD, или любое другое USB-хранилище при отсутствии внутреннего HDD) папку "dune_plugin_logs". Если вы используете USB-флешку, то отформатируйте ее в FAT32 перед тем, как создать папку для логов. После чего перезагрузите дюну и начните пользоваться плагином, в папке dune_plugin_logs появится файл лога.

Все мои (и не только) плагины Dune HD
Гранд-обзор Dune HD Pro One 8K Plus
Краткий обзор Dune HD Pro 4K II
Краткий обзор Dune HD Neo 4K с картинками


Отблагодарить автора (ЮMoney)

Аватара пользователя
gusav
Малообщительный
Сообщения: 18
Зарегистрирован: 09 апр 2020, 17:25

Сообщение gusav » 22 апр 2020, 08:58

С Windows сложнее, тк в нем нет аналога линуксового dd - программы для побайтового копирования данных. То есть штатными средствами на коленке написать скрипт не получится. Нужно или искать какое то аналогичное ПО, работающее в silent режиме, или писать, например, на Delphi. Но, и в том, и в другом случае нужен сам Windows, которого у меня нету(
Dune 301 (150721_0136_B9) Сист.флешка присутствует

Аватара пользователя
gusav
Малообщительный
Сообщения: 18
Зарегистрирован: 09 апр 2020, 17:25

Сообщение gusav » 22 апр 2020, 09:04

Если Windows 10, то там можно запускать bash-скрипты.

https://itsecforu.ru/2019/07/15/%F0%9F% ... indows-10/
Dune 301 (150721_0136_B9) Сист.флешка присутствует

Аватара пользователя
gusav
Малообщительный
Сообщения: 18
Зарегистрирован: 09 апр 2020, 17:25

Сообщение gusav » 22 апр 2020, 09:26

Brigadir писал(а):
22 апр 2020, 06:14
Что дальше, если не секрет?
Да кстати, я портировал dune_api.php из r11 в b9 прошивку. Не думаю, что для использования, например, sel_id или post_action в open_folder() не хватит производительности моей 301 Дюны)
Dune 301 (150721_0136_B9) Сист.флешка присутствует

Аватара пользователя
Brigadir
Администратор
Сообщения: 2932
Зарегистрирован: 07 янв 2018, 18:28
Откуда: С просторов необъятной
Контактная информация:

Сообщение Brigadir » 22 апр 2020, 09:49

gusav писал(а):
22 апр 2020, 09:26
Да кстати, я портировал dune_api.php из r11 в b9 прошивку. Не думаю, что для использования, например, sel_id или post_action в open_folder() не хватит производительности моей 301 Дюны)
Одним портированием не обойтись, сам шелл должен быть обновлен)) Ведь json c параметрами ему отсылаются. Да и сам api - автогенерируемый файл, предполагаю самим шеллом.
Dune HD Pro One 8K Plus (240201_2116_r22)
Dune HD Real Vision 4K (230929_0206_r21)
Dune HD 303D (190919_0242_r11) Сист. флешка присутствует, тестовая
-------------------------------
Keenetic Giga (KN-1010)

Чтобы получить log-файл плагинов, нужно создать на первом носителе, доступном пользователю (обычно внутренний HDD, или любое другое USB-хранилище при отсутствии внутреннего HDD) папку "dune_plugin_logs". Если вы используете USB-флешку, то отформатируйте ее в FAT32 перед тем, как создать папку для логов. После чего перезагрузите дюну и начните пользоваться плагином, в папке dune_plugin_logs появится файл лога.

Все мои (и не только) плагины Dune HD
Гранд-обзор Dune HD Pro One 8K Plus
Краткий обзор Dune HD Pro 4K II
Краткий обзор Dune HD Neo 4K с картинками


Отблагодарить автора (ЮMoney)

Аватара пользователя
gusav
Малообщительный
Сообщения: 18
Зарегистрирован: 09 апр 2020, 17:25

Сообщение gusav » 22 апр 2020, 10:36

Shell без исходников никак не обновить(
Dune 301 (150721_0136_B9) Сист.флешка присутствует

Аватара пользователя
Brigadir
Администратор
Сообщения: 2932
Зарегистрирован: 07 янв 2018, 18:28
Откуда: С просторов необъятной
Контактная информация:

Сообщение Brigadir » 22 апр 2020, 11:04

Ну это понятно. Я к тому что эти подмены ничего не дают, самое главное, ядро так сказать, остается без изменений((
Dune HD Pro One 8K Plus (240201_2116_r22)
Dune HD Real Vision 4K (230929_0206_r21)
Dune HD 303D (190919_0242_r11) Сист. флешка присутствует, тестовая
-------------------------------
Keenetic Giga (KN-1010)

Чтобы получить log-файл плагинов, нужно создать на первом носителе, доступном пользователю (обычно внутренний HDD, или любое другое USB-хранилище при отсутствии внутреннего HDD) папку "dune_plugin_logs". Если вы используете USB-флешку, то отформатируйте ее в FAT32 перед тем, как создать папку для логов. После чего перезагрузите дюну и начните пользоваться плагином, в папке dune_plugin_logs появится файл лога.

Все мои (и не только) плагины Dune HD
Гранд-обзор Dune HD Pro One 8K Plus
Краткий обзор Dune HD Pro 4K II
Краткий обзор Dune HD Neo 4K с картинками


Отблагодарить автора (ЮMoney)

Аватара пользователя
Fatallity
Новичок
Сообщения: 1
Зарегистрирован: 23 июн 2020, 18:24

Сообщение Fatallity » 27 июн 2020, 17:08

Brigadir писал(а):
22 апр 2020, 11:04
Ну это понятно. Я к тому что эти подмены ничего не дают, самое главное, ядро так сказать, остается без изменений((
Здравствуйте, подскажите на форуме есть ли разработчики плагинов IPTV? Новому сервису Smile TV нужен фирменный плагин для Dune. Само собой работа разработчика оплачивается.
Если таковые есть подскажите пожалуйста к кому можно обратиться.
Service IPTV-Fox TV

Аватара пользователя
ddaaff
Администратор
Сообщения: 2544
Зарегистрирован: 08 янв 2018, 00:07
Откуда: Приморский край

Сообщение ddaaff » 27 июн 2020, 18:58

Fatallity писал(а):
27 июн 2020, 17:08
Здравствуйте, подскажите на форуме есть ли разработчики плагинов IPTV? Новому сервису Smile TV нужен фирменный плагин для Dune. Само собой работа разработчика оплачивается.
Если таковые есть подскажите пожалуйста к кому можно обратиться.
https://forum.zlostnyi.tech/viewtopic.php?f=7&t=243
Dune HD 102 (190919_0242_r11)
Dune HD Neo 4K (tv173b 230929_0206_r21)
Dune HD Pro 4K II (tv175h 240619_0210_r22)
Dune Magic 4K Plus (tv175r 230929_0206_r21)
Dune Hd Pro One 8K Plus (tv288b 240116_2340_r22)
Dune Hd Pro Vision 4K (tv184a 240810_0200_r22)
На молоко На конфеты

Аватара пользователя
EdMoor
Новичок
Сообщения: 1
Зарегистрирован: 03 май 2023, 12:43

Сообщение EdMoor » 03 май 2023, 13:00

Здравствуйте все, вопрос имею в наличии бокс Duna HD продукт ktv_tv177k от картина тв ,проживаю на территории Германии, в связи с санкциями у нас отключены официально первые каналы россий , версия прошивки 230119_1300_r19.
Мог ли кто-нибудь помочь чтобы он показывал первый и второй канал, если у кого-то есть какая-то информация прошу её скинуть мне, как и куда прописать патчь или что-то подобное .
заранее сердечно благодарен

Ответить