Thanks Thanks:  17
Likes Likes:  19
Page 3 of 3 FirstFirst 123
Results 31 to 40 of 40

Thread: ALi Tools & Tutorials

  1. #31
    Member Beginner nexactor52's Avatar
    Join Date
    02 Feb 2016
    Location
    Down on Earth
    Posts
    20

    Default

    Pentru convertirea fișierelor imagine (JPG, PNG) în video (M2V) ce poate fi integrat în firmware-ul receptoarelor, se poate folosi utilitarul gratuit ffmpeg sau avconv de la linia de comandă (ca alternativă la TMPGEnc). Comanda pentru Amiko 8260 arată cam așa:

    Code:
    ffmpeg -framerate 30000/1001 -i fisier_photo.png -color_primaries smpte170m -color_trc smpte170m -colorspace smpte170m -c:v mpeg2video -b:v 30000k -minrate 30000k -maxrate 30000k -aspect 16:9 -s 1920x1080 -pix_fmt yuv420p logo_out.m2v
    Pentru alte receptoare, argumentele vor fi ajustate astfel încât să se obțină un fișier video cu parametri cât mai apropiați de cel original (se extrage întâi M2V-ul original, se analizează cu MediaInfo).

    Bitrate-ul va trebui micșorat dacă fișierul M2V rezultat nu încape în secțiunea corespunzătoare din firmware. Un exemplu de logo pentru Amiko 8260 generat prin această metodă: logo_amiko_light.m2v.



    Integrarea fișierului în firmware se poate face cu diverse utilitare (?) sau manual utilizând un editor hexazecimal (ex. HxD).

    Procedura este destul de complexă, iar dacă este efectuată incorect, încărcarea firmware-ului modificat în receptor poate duce la defectarea lui, fără posibilitatea de a rescrie un firmware bun prin metode accesibile.


    Vom deschide un fișier ABS cu HxD. Secțiunile care conțin logo-uri au în nume inclus „logo_” (de ex. logo_boot, logo_user, logo_menu, logo_radio). Se caută folosind Ctrl+F (șir text).



    O dată ajunși la secțiunea care ne interesează, ne uităm la secvența de 16 bytes anterioară celei în care se găsește „logo_”.



    Primii 4 bytes reprezintă identificatorul secțiunii. Următorii 4 reprezintă mărimea fișierului M2V plus cei 0x70 bytes aferenți metadatelor. Următorii 4 arată mărimea secțiunii în totalitate (cu acest header, metadatele, fișierul M2V și octeții liberi de la sfârșit). Ultimii 4 reprezintă CRC32 al blocului de bytes ce conține metadatele și fișierul M2V.

    1. Extragerea fișierului video original

    Punem cursorul la începutul fișierului video (click la începutul primului rând după metadate - care în exemplu începe cu 0x000001B3). Vom selecta blocul de conține doar fișierul M2V (Editare - Selectare bloc, sau Ctr+E). Bifăm lungime. Vom scrie aici mărimea minus 0x70 (adică fără metadate). Conform exemplului, ADEF - 70 = AD7F.



    Acum putem copia blocul selectat (Ctrl +C), facem un fișier nou (Ctrl +N), punem aici (Ctrl +V) - apăsăm OK, salvăm (Ctrl +S) cu extensia M2V.

    2. Inserarea noului fișier

    Înainte de a insera noul fișier, va trebui să îl eliminăm pe cel anterior. Cu blocul de bytes aferent fișierului video încă selectat (în tabul anterior), mergem la Editare - Umplere selecție. Setăm valori hex FF.



    După ce apăsați OK, nu trebuie să apară un dialog de avertisment referitor la modificarea mărimii fișierului.

    Punem din nou cursorul în locul aferent începutului fișierului video. Căutăm înapoi șirul text „logo_” pe care îl vom modifica, și punem cursorul 7 rânduri mai jos (unde octeții sunt scriși cu roșu).



    Pregătim noul fișier video. Acesta nu poate fi mai mare decât mărimea secțiunii - 0x80 (în exemplu 27f80-80 = 27F00 = 163584 bytes). Deschidem fișierul video într-un tab nou în HxD. Apăsăm Ctrl+A (selectare totală) și notăm mărimea fișierului (bara de jos specifică mărimea în format hexazecimal - fișierul ales de mine are mărimea 1E84A, mai mică decât 27F00). Cu toții octeții selectați apăsăm Ctrl+C și ne întoarcem în tabul ce conține firmware-ul deschis și cursorul poziționat. Apăsăm Ctrl+B (Editare - Alipire scriere).

    Căutăm din nou înapoi șirul text „logo_” pentru secțiunea pe care o modificăm. Va trebui să modificăm secvența de 4 bytes care conținea mărimea fișierului video + metadate (marcată cu roșu în imaginea de sus). Vom pune aici mărimea fișierului video la care adăugăm 0x70 (în exemplu 1E84A + 70 = 1E8BA, pe care o vom scrie așa: 00 01 E8 BA înlocuind valorile existente, nu adăugând alți octeți).

    3. Calcul CRC32

    Punem cursorul la începutul metadatelor (începutul șirului „logo”). Mergem la Editare - Selectare bloc, și setăm lungimea la valoarea pe care am calculat-o anterior (mărimea) (în exemplu 1E8BA).



    Cu blocul respectiv selectat, din meniul Analize, alegem Suma de control. Selectăm CRC Ales (32 bit) și apăsăm butonul CRC obișnuit (custom CRC).



    În dialogul care apare, setăm următoarele: suma termenilor = 4C11DB7 și valoare inițială = FFFFFFFF.



    Apăsând OK, ne întoarcem la dialogul precedent, verificăm să fie bifat Selecție și opțiunea CRC ales (32-bit) și apăsăm OK.

    Ne ducem din nou, la începutul secțiunii și punem valoarea calculată în câmpul aferent CRC-ului.



    Acum putem salva fișierul. După salvare, recomand redeschiderea în HxD ca read-only, selectarea primului bloc (bootloader-ul), calcularea unei sume de control pentru acest bloc și compararea blocul dintr-un firmware oficial, nemodificat. Dacă sumele de control nu corespund, nu încărcați firmware-ul în receptor.

    Procedura prin care este calculat CRC-ul este următoarea:

    Code:
    unsigned int crc32Be(unsigned int crc, const char *p, unsigned int len){
        int i;
        while (len--) {
            crc ^= *p++ << 24;
            for (i = 0; i < 8; i++)
            crc = (crc << 1) ^ ((crc & 0x80000000) ? 0x04C11DB7 : 0);
        }
        return crc;
    }
    Funcția poate fi folosită astfel, cu un pointer către secvența de octeți (char *data) și un integer reprezentând mărimea secvenței (int size):

    Code:
    unsigned int crc = crc32Be(~0, data, size);

  2. #32

    Join Date
    18 Apr 2008
    Location
    Sudul României
    Posts
    1,856

    Default

    Ai schimbat vreodata logo dupa procedura descrisa de tine ?

  3. #33
    Member Beginner nexactor52's Avatar
    Join Date
    02 Feb 2016
    Location
    Down on Earth
    Posts
    20

    Default

    Da. De vreo două ori.

  4. #34

    Join Date
    18 Apr 2008
    Location
    Sudul României
    Posts
    1,856

    Default

    Posteaza un sw aici (pt amiko 8260+).Vreau sa ma uit prin el.

  5. #35
    Member Beginner nexactor52's Avatar
    Join Date
    02 Feb 2016
    Location
    Down on Earth
    Posts
    20

    Default

    E bazat pe cel postat de tine. I-am schimbat logo_boot și logo_radio. Îl am și pe receptor.
    Last edited by konstantine; 05-02-17 at 16:59. Reason: Link removed

  6. #36

    Join Date
    18 Apr 2008
    Location
    Sudul României
    Posts
    1,856

    Default

    Sw. pare in regula.N-are erori dar nu prea vad bootlogo.Doar un fond negru.


  7. #37
    Member Beginner nexactor52's Avatar
    Join Date
    02 Feb 2016
    Location
    Down on Earth
    Posts
    20

    Default

    Da, nici mie nu mi-l arată într-un soft (by Dekolte) - nu înțeleg de ce. Fișierul M2V introdus în firmware este exact același pe care l-am postat în tutorial ca exemplu. Compară-l cu ce ai extras din firmware...

    La mine pe receptor merge. Captura pe care ai postat-o este din timpul pornirii receptorului?

  8. #38

    Join Date
    18 Apr 2008
    Location
    Sudul României
    Posts
    1,856

    Default

    Captura e din blocul bootlogo.Nici cu ali background viewer nici cu alt utilitar nu afiseaza bootlogo.Concluzia : ai avut mare curaj sa faci schimbari direct in soft(*.abs).

    ---------- Post added at 16:20 ---------- Previous post was at 16:13 ----------

    Urca imaginea la calitatea originala .Nici logo_amiko_light.m2v nu e in regula.
    O sa pun eu bootlogo in sw. asa cum trebuie.

  9. #39
    Member Beginner nexactor52's Avatar
    Join Date
    02 Feb 2016
    Location
    Down on Earth
    Posts
    20

    Default

    Nu cred că există vreun soft oficial (public) pentru modificarea logo-urilor, așa că am preferat să editez firmware-ul direct, măcar dacă-mi stric receptorul să știu că eu l-am stricat Oricum, atât timp cât bootloader-ul rămâne intact, totul e bine (sper).

    Te referi la imaginea PNG? Aici. Mi s-a părut că arată mai bine cu culorile inversate (cum ai făcut tu) decât originalul, așa că am făcut aproape la fel: am extras din fw oficial logo-ul, am inversat culorile dar am păstrat culoarea elementului din interiorul literei O.

  10. #40
    Standard RSP member
    Join Date
    21 Oct 2009
    Posts
    153

    Default

    Un editor canale pt Amiko NEo Combo SE se poate ?
    Multumesc anticipat !

Page 3 of 3 FirstFirst 123

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •