Что использовать для быстрого редактирования аудио/видео?

Вопрос или проблема

Если нужно просто обрезать аудио/видео из более длинного трека, что я могу использовать? Я пробовал OpenShot, но нахожу экспорт видео медленным, возможно, он компилирует все “слои” в новый фильм? Может быть, мне просто нужен простой инструмент “обрезки” для аудио/видео?

Я собирался упомянуть команды, такие как ffmpeg или avconv (новая версия), которые очевидно могут разделять файлы на группы. Например:

FFMPEG

ffmpeg -ss 00:00:00 -t 00:30:00 -i input.avi -vcodec copy -acodec copy output1.avi
ffmpeg -ss 00:30:00 -t 00:30:00 -i input.avi -vcodec copy -acodec copy output2.avi  
ffmpeg -ss 01:00:00 -t 00:30:00 -i input.avi -vcodec copy -acodec copy output3.avi

Или

ffmpeg -ss 0 -t 100 -i source.m4v -vcodec copy -acodec copy part1.m4v
ffmpeg -ss 100 -t 100 -i source.m4v -vcodec copy -acodec copy part2.m4v  
ffmpeg -ss 200 -t 100 -i source.m4v -vcodec copy -acodec copy part3.m4v  
ffmpeg -ss 300 -t 100 -i source.m4v -vcodec copy -acodec copy part4.m4v

AVCONV

avconv -i input.avi -vcodec copy -acodec copy -ss 00:00:00 -t 00:30:00 output1.avi
avconv -i input.avi -vcodec copy -acodec copy -ss 00:30:00 -t 00:30:00 output2.avi  
avconv -i input.avi -vcodec copy -acodec copy -ss 01:00:00 -t 00:30:00 output3.avi

Или

avconv -ss 0 -i source.m4v -t 100 -vcodec copy -acodec copy part1.m4v
avconv -ss 100 -i source.m4v -t 100 -vcodec copy -acodec copy part2.m4v
avconv -ss 200 -i source.m4v -t 100 -vcodec copy -acodec copy part3.m4v  
avconv -ss 300 -i source.m4v -t 100 -vcodec copy -acodec copy part4.m4v

Или создать скрипт, как здесь: http://icephoenix.us/notes-for-myself/auto-splitting-video-file-in-equal-chunks-with-ffmpeg-and-python/

С новой версией от Ubuntu avconv

avconv -i srcFileName -c:a copy -c:v copy -ss 00:03:40 -t 00:01:12 targetFileName
  • Первый аргумент времени — начало времени
  • Второй аргумент — длительность (не конечное время). Длительность может быть задана либо в секундах, либо в формате “чч:мм:сс[.xxx]”.

Чтобы указать конечное время, используйте опцию -to [конечное время].

Смотрите документацию по ffmpeg для более подробной информации.

kdenlive является (по моему опыту) самым простым программным обеспечением, которое позволяет выполнить эту задачу в несколько шагов и без проблем. Но также проект OpenShot Video Editor полезен, но ему еще предстоит много работы, чтобы приблизиться к kdenlive.

Вот скриншоты kdenlive и openshot соответственно:

enter image description here

enter image description here

Удачи!

LosslessCut ориентирован исключительно на обрезку/резку, прост в использовании и не перекодирует, благодаря чему экспорт происходит быстро:

sudo snap install losslesscut

Screenshot of LosslessCut

Чтобы гарантировать синхронизацию аудио с изображением, используйте опцию нарезки по ключевым кадрам.

Репозиторий Github.

Мне нравится использовать kdenlive для завершения работы или обрезки небольших фрагментов… но если ему нужно разделить большую лекцию на более мелкие части, он мог бы попробовать:

ffmpeg -i input.mpg -ss 00:00:10 -t 00:00:30 out1.mpg -ss 00:00:35 -t 00:00:30 out2.mpg

обсуждение команды здесь: http://ubuntuforums.org/showthread.php?t=480343

OpenShot Video Editor выглядит многообещающе. Вы проверили его? Ознакомьтесь с функциями: http://www.openshot.org/features/

Официальный метод установки через AppImage доступен по адресу https://www.openshot.org/download/

Чтобы установить его, просто откройте терминал и выполните следующие команды:

sudo add-apt-repository ppa:jonoomph/openshot-edge
sudo apt-get update
sudo apt-get install openshot openshot-doc

Просто попробуйте.
alt text

Я использую интерфейс ffmpeg CLI для этого. Это очень просто и быстро:

  • для обрезки видео:

    ffmpeg -i InputFile -vcodec copy -acodec copy -ss 00:00:00 -t 00:01:32 OutPutFile
    
  • для обрезки аудио:

    ffmpeg -i InputFile  -vn -acodec copy -ss 00:00:00 -t 00:01:32 OutPutFile
    

В обоих случаях -ss это начальная точка, а -t это длительность фрагмента.

Вы можете рассчитать длительность, например, используя LibreOffice Calc или пакет Python dateutil, или вы можете использовать опцию -to, которая принимает конечное время напрямую.

Мое предпочтение для легкой обрезки видео всегда было avidemux.
Avudemux logo

Просто установите кодирование видео и аудио на Копировать и выберите формат контейнера, который вы хотите, в пределах разумного.

Установка:

запись в apps.ubuntu.com Install avidemux

sudo apt-get install avidemux

Есть также WinFF, который является графическим интерфейсом для avconv. Работает отлично. Я установил его через Ubuntu Software Center.

Вот скриншот:
WinFF

Попробуйте Avidemux (Ubuntu 14.04 и ранее).

sudo apt-get install avidemux

или LiVES

sudo apt install lives

Для обрезки, объединения, изменения масштаба и т. д. можно использовать… Blender (да, этот 3D редактор, но у него есть и часть для редактирования видео). Вам нужно будет потратить около 20 минут на учебник, чтобы освоиться с интерфейсом, но затем он оказывается неожиданно удобным в использовании.

Я использую Kdenlive, но не удивлюсь, если вы сможете даже нарезать видео таким образом в PiTiVi:

  1. Создайте новый проект с полной лекцией.
  2. Установите начальные и конечные точки для первого “управляемого фрагмента” в мониторинге клипа.
  3. Перетащите из видео в мониторинге клипа на временную шкалу. Это будет только выбранный вами фрагмент.
  4. Установите новые начальные и конечные точки в мониторинге клипа и повторяйте по мере необходимости.

В PiTiVi 0.13.5 (Ubuntu 10.10) я смог просто выбрать клип и перейти в Timeline > Split (или просто нажать “S”).

Для быстрого резания я использовал MythTV. Я записывал шоу, позволял ему автоматически искать рекламные паузы и корректировал найденные маркеры. После этого я запускал функцию архивации Myth и записывал все на DVD, без рекламы.

Должен признаться, это работало отлично с 2006 года или около того. Где-то в 2008 или 2009 году какое-то обновление все испортило, и мои маркеры были как-то смещены.

Сейчас я на стадии переустановки этого мита, чтобы посмотреть, смогу ли я заставить редактор и архиватор работать.

Если вам нужна графическая программа, вы можете использовать dmMediaConverter, интерфейс для ffmpeg, который имеет функцию разделения без перекодировки, быстро. Просто добавьте точки разделения и нажмите запуска. Кроме того, он может делать много других вещей.
http://dmsimpleapps.blogspot.ro/2014/04/dmmediaconverter.html
Split function example

vidcutter – это очень полезный инструмент для резки, обрезки и объединения видео в ubuntu:

Установите vidcutter:

sudo add-apt-repository ppa:ozmartian/apps
sudo apt update
sudo apt install vidcutter

работает в ubuntu 17.10

Вчера я обнаружил, что могу сделать это онлайн,
с помощью учетной записи youtube 🙂 Если у вас нет достаточно времени, чтобы попробовать, какое программное обеспечение ubuntu вам подходит,
то сделайте это онлайн.

Перейдите в учетную запись youtube, загрузите свое видео, затем
выберите
Менеджер видео,
есть опция Улучшение,
в правом нижнем углу есть опция Обрезка

Посмотрите это 1-минутное руководство, если до сих пор не можете найти

Screen Capture of the Trim menu

Для обрезки без перекодировки

(копирования вместо этого) я предлагаю использовать скрипт yad, который будет запускаться из файла запуска на рабочем столе.

Я нашел скрипт здесь.

Я немного его изменил, чтобы включить форматы видео и избежать перекодировки.

Он выглядит следующим образом:

#!/bin/bash

INPUT=$(yad --width=600 --height=400 --file-selection --file-filter="*.mp3 *.mp4 *.avi *.m4a *.ogg *.flac *.aac *.opus")

eval $(yad --width=400 --form --field=start --field=end --field=output:SFL "00:00:00" "00:00:00" "${INPUT/%.*}-out.${INPUT##*.}" | awk -F'|' '{printf "START=%s\nEND=%s\nOUTPUT=\"%s\"\n", $1, $2, $3}')
[[ -z $START || -z $END || -z $OUTPUT ]] && exit 1

DIFF=$(($(date +%s --date="$END")-$(date +%s --date="$START")))
OFFSET=""$(($DIFF / 3600)):$(($DIFF / 60 % 60)):$(($DIFF % 60))

ffmpeg -ss "$START" -t "$OFFSET" -i "$INPUT" -c copy -map 0 "$OUTPUT"

Итак, установите yad, сохраните скрипт как cut_audio-video.sh и сделайте его исполняемым.

Затем создайте файл ~/.local/share/applications/cut-audio-video.desktop аналогично:

[Desktop Entry]
Name=Cut audio & video
Exec=/ПУТЬ/К/cut_audio-video.sh
Icon=/КАКОЙ-ТО/ЗВУК/ИКОНКА/Audio-icon.png
Terminal=false
Type=Application
Categories=GNOME;GTK;Settings;HardwareSettings;X-GNOME-Settings-Panel;System;

Измените строки Exec и Icon.

Затем он может быть запущен с помощью лаунчера приложений, такого как Synapse:

enter image description здесь

Выберите файл, затем введите время начала и окончания обрезки

enter image description здесь

Используйте это

enter image description здесь

Я написал его, чтобы вырезать рекламу из записанных ТВ-видео. Используя включенный ремаксёр, вам даже не придется перекодировать его. Ничего особенного. Просто быстро.

Я написал помощника для ffmpeg, который имитирует синтаксис substr().

Использование

ffslice infile [start [duration [outfile [ffmpeg-args]]]]

Примеры

# Получить последние 5 минут MP3
ffslice input.mp3 -5:00

# Получить первые 30 секунд webm
ffslice input.webm 0 30

# Получить 5 минут видео, начиная с 2 минут
ffslice input.mp4 2:00 5:00

Код

#!/bin/bash
# substr() для MPEG-кодированных файлов

infile="$1"; shift
start="$1"; shift
end="$1"; shift
outfile="$1"; shift
args=()

# Преобразовать время в секунды
# https://unix.stackexchange.com/questions/412868/bash-reverse-ан-array
timetosec() {
  rev="$(<<< "$1" tr ':' '\n' | sed 's/^0\+\([0-9]+\)/$1/' | tac | tr '\n' ' ')"
  IFS=' ' read -a times <<< "$rev"
  let secs="${times[0]:-0} + (${times[1]:-0} * 60) + (${times[2]:-0} * 3600)"
  printf '%i' "$secs"
}

# Входной файл обязателен
if [ -z "$infile" ]; then
  echo "Usage: $(basename -- "$0") infile [start [end [outfile [ffmpeg-args]]]]" >&2
  echo "Пример: $(basename -- "$0") input.mp3 -5:00" >&2
  exit 1
fi

# Начало (отрицательные значения начинаются с конца)
if [ "${start:0:1}" = "-" ]; then args+=('-sseof' "$start")
elif [ -n "$start" ]; then args+=('-ss' "$start")
fi

# Входные данные
args+=('-i' "$infile")

# Окончание (используйте + или - для указания относительно начальной точки)
if [ "${end:0:1}" = "+" ]; then args+=('-to' "$end")
elif [ "${end:0:1}" = "-" ]; then args+=('-sseof' "$end")
elif [ -n "$end" ]; then
  let dur="$(timetosec "$end") - $(timetosec "$start")"
  args+=('-to' "$dur")
fi

# Стандартное имя выходного файла
filename=$(basename -- "$infile")
extension="${filename##*.}"
filename="${filename%.*}"
defaultOutfile="${filename}-${start}-${end}.${extension}"
if [ -z "$outfile" ]; then
  outfile="$defaultOutfile"
elif [ -d "$outfile" ]; then
  outfile="${outfile}/${defaultOutfile}"
fi

# В имени файла не может быть двоеточия с ffmpeg
# https://unix.stackexchange.com/questions/412519/ffmpeg-protocol-не-находит-обычный-имя-файла
outfile="$(printf '%s' "$outfile" | sed 's/:/./g')"

# Разрезать аудио
ffmpeg "${args[@]}" -c copy "$@" "$outfile" 1>&2

# Вывод конечного расположения
printf '%s' "$(readlink -f "$outfile")"

Предостережение

Имейте в виду, что ffmpeg будет разделять только по ключевым кадрам. Это обычно работает достаточно хорошо в большинстве случаев, но если вам нужны точные видеосегменты, см. Как извлечь точные по времени видеосегменты с помощью ffmpeg?. Вы можете добавить все необходимые ключевые кадры перед сегментацией.

Я столкнулся с этой же проблемой, имея большой видеофайл, который я хочу нарезать и сохранить как отдельные сцены. Попробовав это сделать в большинстве уже упомянутых программ других пользователей, я в конце концов использовал Kino.

Вам нужно будет импортировать файл, так как Kino требует его в формате dv (что это такое), и затем вы можете указать начальные и конечные точки для каждого клипа на вкладке Редактирование, затем экспортировать каждый клип индивидуально на вкладке Экспорт. Работает отлично и быстро, самая медленная часть – это первоначальный импорт видеофайла. Вы даже можете добавить эффекты, такие как заголовки для каждого клипа.

Я считаю, что в Kino трудно найти точное место для нарезки, и когда я проигрываю видео в встроенном плеере, звуков нет (есть при экспорте) и оно проигрывается слишком быстро, поэтому я воспроизводил видео в avidemux, находил время или номер кадра, где хочу его нарезать, затем использовал эту информацию в Kino.

Я заметил, что он довольно часто вылетает (я использую Ubuntu 15.04 Kino v1.3.4), но он восстановит то место, где вы остановились при перезапуске.


Обновление на веб-странице Kino:

Kino – мертвый проект
( 05.08.2013 14:15 )
Kino не поддерживается с 2009 года. Мы рекомендуем вам попробовать другие видеоредакторы для Linux, такие как Shotcut, Kdenlive, Flowblade, OpenShot, PiTiVi, LiVES и LightWorks.

Я всегда использую Kdenlive.
Просто импортируйте видео, перетащите его на временную шкалу, щелкните в том месте, где хотите его разделить, щелкните правой кнопкой мыши и выберите “Разрезать”. Затем удалите ту часть, которую не нужно.

.

Ответ или решение

Если вы хотите быстро обрезать аудио или видеофайлы и ищете эффективный инструмент для выполнения этой задачи, ваш выбор будет зависеть от конкретных требований и ваших предпочтений в использовании интерфейсов. В данном случае речь идет о простой обрезке без необходимости преобразования файлов, что значительно сокращает время экспорта. Рассмотрим доступные варианты и технологии, которые помогут вам быстро выполнить задачу.

Теория

Когда вам нужно обрезать аудио или видео, основная задача заключается в извлечении определенной части из существующего файла без потери качества. Это достигается путем копирования сегмента файла, что позволяет избежать повторного кодирования, требующего значительных вычислительных ресурсов и времени.

Важным аспектом является поддержка ключевых кадров (keyframes) в видеофайлах. При обрезке видео на уровне ключевых кадров вы избегаете необходимости в повторном кодировании, тем самым ускоряя процесс обработки. Выбор подходящего инструмента зависит от операционной системы, с которой вы работаете, и ваших требований к графическому или командному интерфейсу.

Примеры

  1. FFmpeg

    FFmpeg – это мощный инструмент для обработки аудио и видео, который поддерживает некодированную обрезку файлов. Командная строка для обрезки видеофайла может выглядеть так:

    ffmpeg -ss 00:00:00 -t 00:30:00 -i inputfile.mp4 -vcodec copy -acodec copy outputfile.mp4
    • -ss: начальная точка обрезки.
    • -t: продолжительность сегмента.
    • -vcodec copy -acodec copy: указывает на копирование потоков без перекодирования.
  2. LosslessCut

    LosslessCut – это инструмент с графическим интерфейсом, разработанный специально для обрезки видео без повторного кодирования. Доступен как в виде установочного пакета, так и через команду для установки из Snap:

    sudo snap install losslesscut
  3. Avidemux

    Avidemux предлагает простой в использовании интерфейс для обрезки видео. Настройки кодека следует оставить в положении "Copy", чтобы обойти этап перекодирования:

    sudo apt-get install avidemux
  4. Kdenlive

    Kdenlive – еще один мощный видео редактор с поддержкой множества функций, включая удобные инструменты для обрезки видео. Хотя он часто используется для более сложного монтажа, он может быть полезен и для основного редактирования:

    sudo apt install kdenlive

Применение

Чтобы выбрать подходящий инструмент, начните с вашего уровня комфорта в работе с командной строкой или графическими интерфейсами. Если быстрота обработки является приоритетом и вы не возражаете против выполнения команд в консоли, FFmpeg будет отличным выбором. Он предоставляет наиболее гибкий подход для профессионалов, которым нужно быстро обрабатывать большие объемы данных.

Для пользователей, которые предпочитают графические интерфейсы, LosslessCut – идеальный выбор благодаря своей простоте и скорости обработки. Avidemux и Kdenlive также предлагают пользователю дружелюбные возможности с более широкими вариантами редактирования, что может быть полезно, если у вас есть дополнительные потребности в монтаже видео.

Выбор инструмента во многом зависит от характеристик вашего файла и вашего рабочего процесса. Если важно сохранить высокое качество видео при процессе обрезки, выбирайте инструменты, которые поддерживают копирование потоков без перекодировки. Надеюсь, это руководство поможет вам быстро найти наиболее эффективно средство для обрезки аудио и видеофайлов, что позволит вам оптимизировать рабочие процессы и сэкономить время при выполнении этой задачи.

Оцените материал
Добавить комментарий

Капча загружается...