• Как конвертировать base64 в wav?

    mik777em
    @mik777em Автор вопроса
    спасибо.
    Вот так сделал и всё заработало:
    var CACHE_LIST_O4ISTILI = [[CACHE_LIST_O4ISTILI]];
    var ITOG = atob(CACHE_LIST_O4ISTILI);
    [[CACHE_LIST_O4ISTILI_ITOG]] = ITOG;
  • Как сохранить текст из окна батника в txt файл?

    mik777em
    @mik777em Автор вопроса
    Получилось сохранить в txt файл таким кодом:
    ffmpeg -i vidov_ska4ali_1.mp4 -hide_banner 2> filename_Info.txt


    Вот что сохранилось:
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'vidov_ska4ali_1.mp4':
      Metadata:
        major_brand     : mp42
        minor_version   : 0
        compatible_brands: mp42mp41isomavc1
        creation_time   : 2020-10-05T06:19:52.000000Z
      Duration: 00:00:18.44, start: 0.000000, bitrate: 2923 kb/s
      Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1080x1920, 2920 kb/s, 25 fps, 25 tbr, 25 tbn (default)
        Metadata:
          creation_time   : 2020-10-05T06:19:52.000000Z
          handler_name    : L-SMASH Video Handler
          vendor_id       : [0][0][0][0]
          encoder         : AVC Coding
    At least one output file must be specified
  • Как сохранить текст из окна батника в txt файл?

    mik777em
    @mik777em Автор вопроса
    Не получилось взять текст как вы предложили, чтоб распарсить циклом и записать в output.txt.
    Поэтому я попробовал так чтоб понять в чем ошибка:
    ffmpeg -i vidov_ska4ali_1.mp4 -hide_banner -v verbose >output.txt


    И в итоге файл output.txt - создаётся, но он пустой.
    Пробовал так - всё равно файл пустой:
    ffmpeg -i vidov_ska4ali_1.mp4 -hide_banner -v verbose >> output.txt


    И так файл пустой:
    ffmpeg -i vidov_ska4ali_1.mp4 -hide_banner -v verbose > C:\Users\mik777em\Downloads\ffmpeg\output.txt


    Почему-то не сохраняет от ffmpeg текст в txt файл.

    Подскажите куда "копать"?
    63e13ef924fa6142818705.png
  • Как на WP сайте в темном режиме отображать картинки неизменно?

    mik777em
    @mik777em Автор вопроса
    В заголовке есть инверсия всей страницы и грейскейл .8 на всю страницу
    63e0b480e91a2408468031.png
    То что стоит в картинке это инверсия от инверсии (тоесть возврат к нормальному) :
    63e0b4ff1e82d131387897.png
    Попробовал что что вы дали и оно отключает этот возврат к нормальному то есть отключает в картинке инверсию от инверсии.
  • Почему в батник не берет элементы из переменной?

    mik777em
    @mik777em Автор вопроса
    Сделал так процесс рандомайза и добавления и все заработало:

    set "skolkoShtykPerebivok=2"
        for /L %%x in (1,1,!skolkoShtykPerebivok!) do (
        set /a randomIndex=!random! %% 15 + 1
        echo randomIndex s vosk !randomIndex!
        call set "randomFile=vidov_ska4ali_!randomIndex!.mp4"
        set "imena_perebivok_dla_dobavleniya=!imena_perebivok_dla_dobavleniya! !randomFile!"
        )
        echo imena_perebivok_dla_dobavleniya !imena_perebivok_dla_dobavleniya!
  • Почему в батник не берет элементы из переменной?

    mik777em
    @mik777em Автор вопроса
    сергей кузьмин, если честно, то не понял как переделать ваш код к моему случаю)
  • Как используя ffmpeg правильно определить продолжительность mp3 файла?

    mik777em
    @mik777em Автор вопроса
    да, спасибо! Это отличное решение которое мне помогло.
    Вот так использую его в моем батнике:

    @echo OFF
    SETLOCAL ENABLEDELAYEDEXPANSION
    REM example output
    REM Duration: 00:05:22.17, start: 0.000000, bitrate: 326 kb/s
    
    for /F "tokens=2" %%. in ('ffmpeg -i file.mp3 2^>^&1 ^| find "Duration"') do SET z=%%.
    ECHO !Z!
    set Z1=!Z:~0,2!
    set Z2=!Z:~3,2!
    set Z3=!Z:~6,2!
    
    :: ECHO !Z1!
    :: ECHO !Z2!
    :: ECHO !Z3!
    
    REM
    set /A x=!Z1! * 3600 + !Z2! * 60 + !Z3!
    echo !x!
    
    ffmpeg -y -loop 1 -i file.jpg -i file.mp3 -r 30 -c:v libx264 -crf 18 -c:a aac -b:a 256k -t %x% -filter:a "volume=1.71" -s 1080x1920 result.mp4
  • Как отправить текст (кириллицу) в google sheets содержащий пробелы?

    mik777em
    @mik777em Автор вопроса
    Сергей Соколов, спасибо. Написал такой JS
    const uri = [[B_TITLE]];
    const encoded = encodeURIComponent(uri);
    
    [[ENCODED]] = encoded;


    В перем [[B_TITLE]] находится как пример: Отправка данных в Google Docs GET запросами

    На выходе имеем в [[ENCODED]] такое уже сконверченное: %D0%9E%D1%82%D0%BF%D1%80%D0%B0%D0%B2%D0%BA%D0%B0%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85%20%D0%B2%20Google%20Docs%20GET%20%D0%B7%D0%B0%D0%BF%D1%80%D0%BE%D1%81%D0%B0%D0%BC%D0%B8
  • Почему не заливает картинку post запросом в моем софте, а постманом заливает?

    mik777em
    @mik777em Автор вопроса
    Попробовал предварительно перевести файл jpg картинки в бинарный формат используя Node.js код и сохранил результат в [[IMAGE_BINARY]] :

    const fs = require('fs');
    
    // Read the image file into a buffer
    const buffer = fs.readFileSync('D:\\prev.jpg');
    
    // Convert the buffer to a binary string
    const binary_image = buffer.toString('binary');
    
    
    [[IMAGE_BINARY]] = binary_image;


    63a6ec095e606930633515.png

    Но мой софт выдал ошибку:
    63a6ed920acdf160754248.png

    Полный текст ошибки из моего софта:
    ~~CUSTOM~LOG~~[-][red][94101439] [13:50:44] Поток №1 : Не удалось загрузить файл ÿØÿá Exif  II*            ÿì Ducky     d  ÿáhttp://ns.adobe.com/xap/1.0/ <?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 6.0-c002 79.164352, 2020/01/30-15:50:38        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmpMM:OriginalDocumentID="xmp.did:f88fbf6a-dc4b-404b-9c5c-e1bd1ac5d86a" xmpMM:DocumentID="xmp.did:F6A9FB31080C11EB820EAB8B57A0BC39" xmpMM:InstanceID="xmp.iid:F6A9FB30080C11EB820EAB8B57A0BC39" xmp:CreatorTool="Adobe Photoshop CC 2019 (Macintosh)"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:277787d2-e00c-8449-88df-ead9bba9dbb2" stRef:documentID="adobe:docid:photoshop:b3eecc1c-7993-fc4c-bcad-be82027261dd"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>ÿî Adobe dÀ   ÿÛ  ÿÀ Ð  ÿÄ'              	
                	
     
    % !1AQa"	ðq2¡B#
    ±ÁÑáRb3$ñrSÓUV²C4TÔ%5µÕ&6v¶Ö'7Ww×8X¢ÒcsDte¥FGg§·(h³´u¦çx9E
    fH)Ãdò£¤ÄÅÆ 
    	 !1AQaqð¡"±ÁÑ2áñBR#³br²Ó¢Ò3Ss$Tdt´UÂCc£45u6D¤Ô%e7	ÃãÄäE&'âVòvÿÚ   ? ã[â
    «> %J4éý×·eQYs"fræjêd¬Òs.¾òÛ×2~ê'ÚkÃ!Â(µ¬ÔãÓñÓñ_Ïw>ú­2OGIÒ
    Ö÷n
    eß\½0%{ëÑ%ÍCöªªO]Y:Óñ¤(-í/8©öÅU	/i$: MV UeçZiû0ísqÏ×FläÊÓWΪQ /Q© ä$h|𿥧ÛJ·²©o*´u ÎÔ+ZMTÃinä=ôÕ÷ªW¼Ö/®îº¯U3:ÕOÃÐt!'	ãßI¤'3í5h¼ºP-DÔeUÈöª­Þ®úIÒÉ8w×yʨ>Qð÷s¨Á]#*/ôÄi¯K«):æ )ýò£"zûÄæ>ì°Q+̧®3=s)ë q)þøHè¡Ô
    GúZ
    |ð<Bxmü϶¼,«ûâ Ò
    4¯DTàsÇ>Ú4ö׺þµg@��«ÇËñ	Ì¢øÏ8kÒâéøT@Þkï©!\ÍtNñÄ¥ âU+Ä$j4§á÷òËôc¦Wsùk¦áî8U+ªJ+EGQøµ_Àü´
    Ãǽæ½õH$ê9Öª*ÒO'Þθ,}¦»öæU}uG¨¥P¨ÅA>îg 
     Ë
    xçïü4_üÏ´Õiubª
    XÊ¢ë#/»ñ_rzÍK'çï4=g¿Ñê+ï«3ì΢¸ÝqNú7þgÛ^­C«æ=ç<\
  • Почему не заливает картинку post запросом в моем софте, а постманом заливает?

    mik777em
    @mik777em Автор вопроса
    возможно в этом вопросе я не грамотен, за это заранее прошу прощения, но разве base64 формат изображения это не бинарный формат?
  • Найти пустую папку. Ошибка в коде?

    mik777em
    @mik777em Автор вопроса
    Сам разобрался:
    // Step 1
    // Get the path to the "D:\\2 отправленое\\АНАЛИЗ" folder
    const path = "D:\\2 отправленое\\АНАЛИЗ";
    
    // Create an empty list to store the paths to the folders inside the "creep-analysis" folder
    let spisok = [];
    
    // Use the fs (file system) module to read the contents of the "creep-analysis" folder
    const fs = require('fs');
    const files = fs.readdirSync(path);
    
    // Loop through the contents of the "creep-analysis" folder and add the paths to the folders to the "spisok" list
    files.forEach((file) => {
      // Check if the current item is a folder
      if (fs.lstatSync(path + '/' + file).isDirectory()) {
        // Add the path to the folder to the "spisok" list
        spisok.push(path + '/' + file);
      }
    });
    
    // Step 2
    // Sort the "spisok" list in descending order by the number that each folder name starts with
    spisok.sort((a, b) => {
      // Get the folder name from the path of each item in the list
      const folderNameA = a.split('/').pop();
      const folderNameB = b.split('/').pop();
    
      // Extract the number that each folder name starts with
      const numberA = parseInt(folderNameA.match(/^\d+/)[0]);
      const numberB = parseInt(folderNameB.match(/^\d+/)[0]);
    
      // Compare the numbers and sort the list in descending order
      return numberB - numberA;
    });
    
    // Step 3
    // Save the sorted "spisok" list to the "itog" variable
    [[SPISOK]] = spisok;
  • Где обойти ошибку в JS коде?

    mik777em
    @mik777em Автор вопроса
    Исправил, но тут проблема в том что нужно найти первую с конца папку перед которой есть папка больше чем 100мб ... а он просто находит первую папку вес которой >=100мб

    var fs = require('fs');
    
    // Step 1: Get the paths to all the folders inside the specified directory
    var directoryPath = "D:\\2 отправленое\\АНАЛИЗ";
    var folders = fs.readdirSync(directoryPath);
    
    // Step 2: Sort the list in descending order based on the numbers in the folder names
    folders.sort(function(a, b) {
    var aNumber = parseInt(a.match(/^\d+/)[0]);
    var bNumber = parseInt(b.match(/^\d+/)[0]);
    return bNumber - aNumber;
    });
    
    // Шаг 3: Найдите первую с конца пустую папку, после которой стоит папка с весом 100 мб и больше
    var pytkpystoypapke = "";
    for (var i = 0; i < folders.length; i++) {
    var folderPath = directoryPath + "\\" + folders[i];
    var folderSize = fs.statSync(folderPath).size;
    if (folderSize >= 100000000 && fs.readdirSync(folderPath).length == 0) {
    pytkpystoypapke = folderPath;
    break;
    }
    }
    
    [[ITOG]] = folderPath
  • Почему в дате сдвиг -3 часа вместо -2 часа?

    mik777em
    @mik777em Автор вопроса
    Вобщем, так решил задать желаемую дату в миллисекундах, причем дата будет сформирована не зависимо от того какой пояс UTC у меня на компе., Скрипт сам вычислит смещение и изменяет дату чтоб час в дате был именно такой какой я хочу, и результат в миллисекундах сохраняет в [[MILISEKI]]:
    var mesiaz = ([[MESIAZ]] - 1); // тут мы вычитаем из желаемого месяца единицу, тк в JS датах месяца начинаются с ноля
    var date_dla_poiasa = new Date(
        
        [[GOD]],
        mesiaz,
        [[MDEN]],
        [[4AS]],
        [[MINYTA]],
        [[SEKYNDA]],
        [[MILLISEK]]);
    
    var sdvig_4asy = date_dla_poiasa.getTimezoneOffset() / 60;     // -2
    
    
    
    if (sdvig_4asy < 0) {
      var chas_hochy = (Number([[4AS]]) - Number(sdvig_4asy)); // если UTC с минусом
    } else {
      var chas_hochy = (Number([[4AS]]) + Number(sdvig_4asy)); // если UTC с плюсом
    }
    
    
    var date_sformirovano_zelaemaia = new Date(
        
        [[GOD]],
        mesiaz,
        [[MDEN]],
        chas_hochy,
        [[MINYTA]],
        [[SEKYNDA]],
        [[MMILLISEK]]);
        
    var miliseki = date_sformirovano_zelaemaia.getTime();
    
    //[[4AS_HOCHY]] = chas_hochy
    //[[SVIG_4ASY]] = sdvig_4asy
    //[[DATE]] = date_sformirovano_zelaemaia
    
    [[MILISEKI]] = miliseki
  • Почему в дате сдвиг -3 часа вместо -2 часа?

    mik777em
    @mik777em Автор вопроса
    Rsa97, как только поставил декабрь:
    var date = new Date(2022, 11, 22, 19, 46, 27, 40);

    то показало сдвиг на -2 часа ...видимо проблема была из-за того что июле часы еще не меняли, а сейчас зимой (декабрь) часы поменяли на час назад
  • Почему в дате сдвиг -3 часа вместо -2 часа?

    mik777em
    @mik777em Автор вопроса
    в моей временной зоне переход был:
    На зимнее время	Воскресенье, 30 октября 2022 года в 4:00	На час назад
  • Как получить дату компа в миллисекундах?

    mik777em
    @mik777em Автор вопроса
    Сам разобрался. Вот готовый JS код может кому-то будет полезно:
    let chas = "60000";
    var now = new Date().getTimezoneOffset();    //now -120
    var millisek_smesh = Number(chas) * Number(now);
    var date = new Date();
    var mil = date.getTime();
    
    if (millisek_smesh < 0) {
      var millisek_smesh_itog = Number(mil) - Number(millisek_smesh);
    } else {
      var millisek_smesh_itog = Number(mil) + Number(millisek_smesh);
    }
    
    [[ITOG]] = millisek_smesh_itog
  • Как получить дату компа в миллисекундах?

    mik777em
    @mik777em Автор вопроса
    Александр,
    const date = new Date();
    date.setMinutes(-date.getTimezoneOffset());
    var itog = date.getTime()
    [[ITOG]] = itog


    Получил 1670083223916 что соответствует 03.12.2022 16:00:23,916 ..хотя время на часах компа было 03.12.2022 16:56:23,916

    То есть минуты отсутствуют(
  • Как получить дату компа в миллисекундах?

    mik777em
    @mik777em Автор вопроса
    Александр,

    const date = new Date();
    date.setMinutes(-date.getTimezoneOffset());
    [[ITOG]] = date


    В ITOG получаю: 2022-12-03T16:00:42.220Z . А как это перевести в миллисекунды?