Switch to English?
Yes
Переключитись на українську?
Так
Переключиться на русскую?
Да
Przełączyć się na polską?
Tak
Розмістіть свій проєкт безплатно та почніть отримувати пропозиції від фрилансерів-виконавців уже через хвилини після публікації!

АВТОМАТИЗАЦІЯ з FFMPEG

Translated30 983 UAH

  1. 21933
     20  0

    10 днів30 983 UAH

    Привіт! Готова виконати завдання з автоматизації через FFmpeg: генерація відео з титрами, ефектами, масками, водяним знаком, а також озвучування тексту через API синтезу мови (наприклад, ElevenLabs або Google TTS). Реалізую форму для завантаження великих текстів (до 100 000 символів) з подальшою обробкою та збиранням відео. Оцінка за термінами — до 14 днів. Все буде автоматизовано та протестовано. Деталі готова обговорити у приватних повідомленнях.

  2. 232  
    3 дні30 983 UAH

    Доброго вечора, я розробляю дуже схожу програму вже 10 місяців. Всі функції там є, вам просто потрібно вибрати те, що вам потрібно.

  3. 99  
    5 днів30 983 UAH

    Ваш проект з генерації відео виглядає цікаво. Я можу створити скрипт для субтитрів, ефектів, масок і водяних знаків, а також синтезу голосу через API та інтеграції ChatGPT. У мене є досвід у подібних завданнях, наприклад, у AI-платформах і багатомовних асистентах, тож я знаю, як обробляти великі тексти. Давайте обговоримо деталі.

    Мої попередні роботи:
    https://elysianai.com/
    https://storyai.cc/

  4.    1  2   3
    5 днів30 983 UAH

    Привіт! Розумію ваше завдання: потрібен скрипт, який зможе автоматично генерувати відео з накладанням субтитрів, ефектів, масок і водяних знаків, а також з озвучкою через API ChatGPT. Пропоную реалізувати це через зв’язку Python + FFMPEG + сторонню інтеграцію текст-в-розмову для генерації аудіо. Форму для завантаження великих текстів можна зробити через Flask або FastAPI з підтримкою об’ємних даних. Вже є напрацювання, готовий оперативно приступити і налаштувати робочу систему під ваші вимоги

  5. 260    1  1
    2 дні30 983 UAH

    все буде максимально швидко, буде готово сьогодні, але я пропоную краще ніж скрипт, напишіть мені в особисті повідомлення, розповім більше.

  6. 1660    100  5   3
    10 днів31 241 UAH

    Добрий день! Цікавий проект. Пишіть, буду радий співпрацювати з Вами!

  7. 4189    123  0
    14 днів30 931 UAH

    Я можу створити такий скрипт. Я використаю Python + ffmpeg.
    для API генерації голосу openai

  8. 120  
    2 дні31 034 UAH

    Я готовий зробити ваш проект. Я знаю, як працювати з GraphicsMagick і FFMPEG. Я знаю bash-скриптинг.

  9. Ще 2 ставки приховано
  • Якоб Ингерс
    12 травня 2025, 20:47 |

    Sample (without API of ChatGPT (pay for)).



    #!/bin/ksh

    ############################################
    input_video="input.mp4"
    output_video="output_with_k.mp4"
    watermark_text="КR"
    font_size=100
    font_color="white"
    font_file="Arial"
    watermark_x=50
    watermark_y=50
    audio_description_prompt="dsgddfgdfdgfg bbbdfbd"
    generated_audio_file="generated_audio.mp3"

    #0
    watermark_image="watermark_k.png"
    echo "Generating with letter K '$watermark_text'..."
    gm convert -background none -fill "$font_color" -font "$font_file" -pointsize "$font_size" label:"$watermark_text" "$watermark_image"
    if [ $? -ne 0 ]; then
      echo "Error genereating watermark"
      exit 1
    fi
    echo "Image for watermark  '$watermark_image' created"

    #1
    echo "adding to video '$input_video'..."
    ffmpeg -i "$input_video" -i "$watermark_image" -filter_complex "overlay=x=$watermark_x:y=$watermark_y" -c:a copy "video_with_watermark.mp4"
    if [ $? -ne 0 ]; then
      echo "error"
      rm -f "$watermark_image"
      exit 1
    fi
    echo "1th step of video: video_with_watermark.mp4"



  • Якоб Ингерс
    12 травня 2025, 23:17 |

    The sample of my new script: 

    ./finale.ksh  -size 122  -i input.mp4 -label sdfds  -shadow -x 250 -y 250 -font Helvetica -wave -color white
    The result:



    This is a shell script (.ksh) designed to add a text watermark to a video file. It utilizes two command-line tools:

    1. GraphicsMagick (gm convert, gm composite): Used to generate the watermark image with optional shadow and wave effects.
    2. FFmpeg (ffmpeg): Used to overlay the generated watermark image onto the input video.

    Key functionalities:

    • Takes input video and watermark text as mandatory arguments.
    • Offers several optional parameters:
      • -font: Specifies the font for the text watermark.
      • -color: Sets the color of the text.
      • -size: Controls the size of the text.
      • -shadow: Enables a shadow effect behind the text.
      • -wave: Applies a wave distortion effect to the text.
      • -x and -y: Define the position of the watermark on the video.
    • Lists available fonts using the --help fonts option.
    • Generates a PNG image of the text watermark (with shadow and wave if enabled) using GraphicsMagick.
    • Overlays the generated PNG image onto the input video using FFmpeg.
    • Outputs the watermarked video to a file named output_with_wm.mp4.
    • Handles errors such as missing mandatory arguments or failures in image generation or video processing.
    • Cleans up by removing the temporary watermark image file after processing.

    In essence, the script automates the process of creating a text-based watermark with optional visual enhancements and embedding it into a video file.


    #!/bin/ksh


    # --- Default parameters ---

    input_video=""
    watermark_text=""
    selected_font="Arial"
    text_color="white"
    text_size=50
    enable_shadow=0
    enable_wave=0
    watermark_x=10
    watermark_y=10


    # --- Function to list available fonts ---
    list_fonts() {
      echo "Avaiable Fonts:"
      fc-list | awk -F: '{print $1}' | sort -u
    }


    # --- Argument processing ---
    while [ $# -gt 0 ]; do
      case "$1" in
        -i)
          if [ $# -gt 1 ]; then
            input_video="$2"
            shift 2
          else
            echo "Error: Expected filename after -i."
            exit 1
          fi
          ;;
        -label)
          if [ $# -gt 1 ]; then
            watermark_text="$2"
            shift 2
          else
            echo "Error: Expected text after -label."
            exit 1
          fi
          ;;
        -font)
          if [ $# -gt 1 ]; then
            selected_font="$2"
            shift 2
          else
            echo "Error: Expected font name after -font."
            exit 1
          fi
          ;;
        -color)
          if [ $# -gt 1 ]; then
            text_color="$2"

            shift 2

          else

            echo "Error: Expected color after -color."

            exit 1

          fi

          ;;

        -size)

          if [ $# -gt 1 ]; then

            text_size="$2"

            shift 2

          else

            echo "Error: Expected size after -size."

            exit 1

          fi

          ;;

        -shadow)

          enable_shadow=1

          shift

          ;;

        -wave)

          enable_wave=1

          shift

          ;;

        -x)

          if [ $# -gt 1 ]; then

            watermark_x="$2"

            shift 2

          else

            echo "Error: Expected value after -x."

            exit 1

          fi

          ;;

        -y)

          if [ $# -gt 1 ]; then

            watermark_y="$2"

            shift 2

          else

            echo "Error: Expected value after -y."

            exit 1
          fi
          ;;

        --help)
          case "$2" in
            fonts)
              list_fonts
              exit 0
              ;;

            *)

              echo "Usage: $0 -i <input_video> -label \"text\" [options]"
              echo "Options: -font <font_name>, -color <color>, -size <size>, -shadow, -wave, -x <number>, -y <number>"
              echo "           $0 --help fonts"
              exit 0

              ;;
          esac
          exit 0
          ;;

        *)

          echo "Unknown parameter: '$1'"
          echo "Usage: $0 -i <input_video> -label \"text\" [options]"
          echo "           $0 --help fonts"
          exit 1
          ;;
      esac

    done


    # --- Check for mandatory parameters ---

    if [ -z "$input_video" ] || [ -z "$watermark_text" ]; then
      echo "Error: You must specify -i <input_video> and -label \"text\"."
      echo "Usage: $0 -i <input_video> -label \"text\" [options]"
      echo "           $0 --help fonts"
      exit 1
    fi


    # --- GraphicsMagick settings ---

    watermark_text_safe=$(echo "$watermark_text" | sed 's/ /_/g')
    watermark_image="watermark_${watermark_text_safe}_${selected_font}_${text_color}_${text_size}.png"
    font_file="$selected_font"
    shadow_color="#00000080" # Semi-transparent black

    shadow_offset="+2+2"
    wave_amplitude=5
    wave_length=20
    watermark_x_offset=0
    watermark_y_offset=0

    output_video="output_with_wm.mp4"

    echo "Input video file: $input_video"
    echo "Watermark text: $watermark_text"
    echo "Font: $selected_font"
    echo "Text color: $text_color"
    echo "Text size: $text_size"
    echo "Position (x, y): ($watermark_x, $watermark_y)"

    if [ $enable_shadow -eq 1 ]; then
      echo "Shadow enabled."
    fi

    if [ $enable_wave -eq 1 ]; then
      gm convert "$watermark_image" -bordercolor none -border 10x10 -wave "$wave_amplitude"x"$wave_length" -trim "$watermark_image"
      echo "Wave effect enabled."
    fi

    # --- 1. Generating the image with text and effects using GraphicsMagick ---
    echo "Generating image with text '$watermark_text' in font '$selected_font', color '$text_color', size '$text_size'..."

    text_image="text_$watermark_image"
    shadow_image="shadow_$watermark_image"
    final_image="$watermark_image"

    # Create image with main text
    gm convert -background none -font "$font_file" -pointsize "$text_size" -fill "$text_color" label:"$watermark_text" "$text_image"

    # Create shadow image (offset text)
    if [ $enable_shadow -eq 1 ]; then
      gm convert -background none -font "$font_file" -pointsize "$text_size" -fill "#00000080" label:"$watermark_text" -bordercolor none -border 5x5 "$shadow_image"

      gm composite -geometry "+12+12" "$text_image" "$shadow_image" "$final_image"
    else
      cp "$text_image" "$final_image"
    fi

    rm -f "$text_image" "$shadow_image"

    if [ $? -ne 0 ]; then
      echo "Error generating watermark image."
      exit 1
    fi

    if [ $enable_wave -eq 1 ]; then
      gm convert "$watermark_image" -bordercolor none -border 200x200 "$watermark_image"
      gm convert "$watermark_image" -wave "$wave_amplitude"x"$wave_length" "$watermark_image"
      gm convert "$watermark_image" -trim "$watermark_image"
    fi

    # Trim the final image
    gm convert "$final_image" -trim "$watermark_image"

    echo "Watermark image '$watermark_image' created."

    # --- 2. Adding the watermark to the video using FFmpeg ---
    echo "Adding watermark to video '$input_video'..."
    ffmpeg -i "$input_video" -i "$watermark_image" -filter_complex "overlay=x=$watermark_x:y=$watermark_y" -c:a copy "$output_video"


    if [ $? -ne 0 ]; then
      echo "Error adding watermark to video."
      rm -f "$watermark_image"
      exit 1
    fi

    echo "Watermark added. Output file: $output_video"
    rm -f "$watermark_image"


    echo "Script finished."


    exit 0


  • Якоб Ингерс
    12 травня 2025, 23:17 |

    The sample of my new script: 

    ./finale.ksh  -size 122  -i input.mp4 -label sdfds  -shadow -x 250 -y 250 -font Helvetica -wave -color white
    The result:

    image


    This is a shell script (.ksh) designed to add a text watermark to a video file. It utilizes two command-line tools:

    1. GraphicsMagick (gm convert, gm composite): Used to generate the watermark image with optional shadow and wave effects.
    2. FFmpeg (ffmpeg): Used to overlay the generated watermark image onto the input video.

    Key functionalities:

    • Takes input video and watermark text as mandatory arguments.
    • Offers several optional parameters:
      • -font: Specifies the font for the text watermark.
      • -color: Sets the color of the text.
      • -size: Controls the size of the text.
      • -shadow: Enables a shadow effect behind the text.
      • -wave: Applies a wave distortion effect to the text.
      • -x and -y: Define the position of the watermark on the video.
    • Lists available fonts using the --help fonts option.
    • Generates a PNG image of the text watermark (with shadow and wave if enabled) using GraphicsMagick.
    • Overlays the generated PNG image onto the input video using FFmpeg.
    • Outputs the watermarked video to a file named output_with_wm.mp4.
    • Handles errors such as missing mandatory arguments or failures in image generation or video processing.
    • Cleans up by removing the temporary watermark image file after processing.

    In essence, the script automates the process of creating a text-based watermark with optional visual enhancements and embedding it into a video file.


    #!/bin/ksh


    # --- Default parameters ---

    input_video=""
    watermark_text=""
    selected_font="Arial"
    text_color="white"
    text_size=50
    enable_shadow=0
    enable_wave=0
    watermark_x=10
    watermark_y=10


    # --- Function to list available fonts ---
    list_fonts() {
      echo "Avaiable Fonts:"
      fc-list | awk -F: '{print $1}' | sort -u
    }


    # --- Argument processing ---
    while [ $# -gt 0 ]; do
      case "$1" in
        -i)
          if [ $# -gt 1 ]; then
            input_video="$2"
            shift 2
          else
            echo "Error: Expected filename after -i."
            exit 1
          fi
          ;;
        -label)
          if [ $# -gt 1 ]; then
            watermark_text="$2"
            shift 2
          else
            echo "Error: Expected text after -label."
            exit 1
          fi
          ;;
        -font)
          if [ $# -gt 1 ]; then
            selected_font="$2"
            shift 2
          else
            echo "Error: Expected font name after -font."
            exit 1
          fi
          ;;
        -color)
          if [ $# -gt 1 ]; then
            text_color="$2"

            shift 2

          else

            echo "Error: Expected color after -color."

            exit 1

          fi

          ;;

        -size)

          if [ $# -gt 1 ]; then

            text_size="$2"

            shift 2

          else

            echo "Error: Expected size after -size."

            exit 1

          fi

          ;;

        -shadow)

          enable_shadow=1

          shift

          ;;

        -wave)

          enable_wave=1

          shift

          ;;

        -x)

          if [ $# -gt 1 ]; then

            watermark_x="$2"

            shift 2

          else

            echo "Error: Expected value after -x."

            exit 1

          fi

          ;;

        -y)

          if [ $# -gt 1 ]; then

            watermark_y="$2"

            shift 2

          else

            echo "Error: Expected value after -y."

            exit 1
          fi
          ;;

        --help)
          case "$2" in
            fonts)
              list_fonts
              exit 0
              ;;

            *)

              echo "Usage: $0 -i <input_video> -label \"text\" [options]"
              echo "Options: -font <font_name>, -color <color>, -size <size>, -shadow, -wave, -x <number>, -y <number>"
              echo "           $0 --help fonts"
              exit 0

              ;;
          esac
          exit 0
          ;;

        *)

          echo "Unknown parameter: '$1'"
          echo "Usage: $0 -i <input_video> -label \"text\" [options]"
          echo "           $0 --help fonts"
          exit 1
          ;;
      esac

    done


    # --- Check for mandatory parameters ---

    if [ -z "$input_video" ] || [ -z "$watermark_text" ]; then
      echo "Error: You must specify -i <input_video> and -label \"text\"."
      echo "Usage: $0 -i <input_video> -label \"text\" [options]"
      echo "           $0 --help fonts"
      exit 1
    fi


    # --- GraphicsMagick settings ---

    watermark_text_safe=$(echo "$watermark_text" | sed 's/ /_/g')
    watermark_image="watermark_${watermark_text_safe}_${selected_font}_${text_color}_${text_size}.png"
    font_file="$selected_font"
    shadow_color="#00000080" # Semi-transparent black

    shadow_offset="+2+2"
    wave_amplitude=5
    wave_length=20
    watermark_x_offset=0
    watermark_y_offset=0

    output_video="output_with_wm.mp4"

    echo "Input video file: $input_video"
    echo "Watermark text: $watermark_text"
    echo "Font: $selected_font"
    echo "Text color: $text_color"
    echo "Text size: $text_size"
    echo "Position (x, y): ($watermark_x, $watermark_y)"

    if [ $enable_shadow -eq 1 ]; then
      echo "Shadow enabled."
    fi

    if [ $enable_wave -eq 1 ]; then
      gm convert "$watermark_image" -bordercolor none -border 10x10 -wave "$wave_amplitude"x"$wave_length" -trim "$watermark_image"
      echo "Wave effect enabled."
    fi

    # --- 1. Generating the image with text and effects using GraphicsMagick ---
    echo "Generating image with text '$watermark_text' in font '$selected_font', color '$text_color', size '$text_size'..."

    text_image="text_$watermark_image"
    shadow_image="shadow_$watermark_image"
    final_image="$watermark_image"

    # Create image with main text
    gm convert -background none -font "$font_file" -pointsize "$text_size" -fill "$text_color" label:"$watermark_text" "$text_image"

    # Create shadow image (offset text)
    if [ $enable_shadow -eq 1 ]; then
      gm convert -background none -font "$font_file" -pointsize "$text_size" -fill "#00000080" label:"$watermark_text" -bordercolor none -border 5x5 "$shadow_image"

      gm composite -geometry "+12+12" "$text_image" "$shadow_image" "$final_image"
    else
      cp "$text_image" "$final_image"
    fi

    rm -f "$text_image" "$shadow_image"

    if [ $? -ne 0 ]; then
      echo "Error generating watermark image."
      exit 1
    fi

    if [ $enable_wave -eq 1 ]; then
      gm convert "$watermark_image" -bordercolor none -border 200x200 "$watermark_image"
      gm convert "$watermark_image" -wave "$wave_amplitude"x"$wave_length" "$watermark_image"
      gm convert "$watermark_image" -trim "$watermark_image"
    fi

    # Trim the final image
    gm convert "$final_image" -trim "$watermark_image"

    echo "Watermark image '$watermark_image' created."

    # --- 2. Adding the watermark to the video using FFmpeg ---
    echo "Adding watermark to video '$input_video'..."
    ffmpeg -i "$input_video" -i "$watermark_image" -filter_complex "overlay=x=$watermark_x:y=$watermark_y" -c:a copy "$output_video"


    if [ $? -ne 0 ]; then
      echo "Error adding watermark to video."
      rm -f "$watermark_image"
      exit 1
    fi

    echo "Watermark added. Output file: $output_video"
    rm -f "$watermark_image"


    echo "Script finished."


    exit 0


Актуальні фриланс-проєкти в категорії C та C++

Консультація та аудит поточного проєкту на Odoo 19 Community Edition

Шукаємо Odoo Developer — соло-розробника з досвідом розробки на Odoo 19 Community Edition, у тому числі за допомогою Claude Code. Нам потрібен спеціаліст, який має успішно реалізовані проєкти в Odoo та практичний досвід розробки з використанням Claude Code. Важливо: розглядаємо…

C та C++Javascript та Typescript ∙ 1 день 8 годин тому ∙ 5 ставок

Створення або доопрацювання прошивки та логіки під три автономні LoRa-станції на базі ESP32.

5000 UAH

створення або доопрацювання прошивки та логіки під три автономні LoRa-станції на базі ESP32. Пристрої повинні піднімати Wi-Fi точку доступу, віддавати локальний сайт через браузер (HTTP), приймати текст та зображення в радіусі 5-10 км (плюс-мінус), зберігати дані (бажано на…

C та C++C# ∙ 1 день 10 годин тому ∙ 3 ставки

Розробка ПЗ для Arduino (RF-модулі 3–7.5 ГГц, автоматичне сканування частот)

Потрібно розробити систему на Arduino для автоматичного пошуку активного аналогового відеосигналу та автоматичного налаштування передавача на виявлену частоту.Планується використання трьох окремих приймально-передавальних модулів: 3000–4200 МГц; 4900–6000 МГц; 6100–7500…

C та C++Вбудовані системи та мікроконтролери ∙ 2 дні 8 годин тому ∙ 4 ставки

Чорна Україна (RP-проект на базі MTA)

51 638 UAH

Виправлення помилок різної складності, як на зображеннях. Коригування навігації карти. Виправлення дірок на карті, адаптація транспортних засобів до проекту, видалення логотипів або їх переписування.

C та C++Python ∙ 3 дні 20 годин тому ∙ 19 ставок

Інженер інфраструктури резидентних проксі

Ми будуємо мережу резидентних проксі з нуля — повністю власну, без сторонніх постачальників. Нам потрібен один винятковий мережевий інженер, щоб побудувати всю технічну основу. Що ви будете будувати: - Android фоновий SDK, який маршрутизує проксі-трафік через пристрої…

C та C++DevOps ∙ 8 днів 4 години тому ∙ 13 ставок

Замовник
David Tourino TouxStudio
Іспанія Las Palmas  6  0
Проєкт опублікований
1 рік тому
185 переглядів
Мітки
  • ffmpeg
  • API
  • ЧатGPT