Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Цифровые технологии » Видео и аудио: обработка и кодирование » [решено] "брак" при склейке видео через ffmpeg

Ответить
Настройки темы
[решено] "брак" при склейке видео через ffmpeg

Старожил


Сообщения: 286
Благодарности: 10

Профиль | Отправить PM | Цитировать


Изменения
Автор: 9119
Дата: 05-07-2021
Добрый.
обрабатываю видео mp4 в ffmpeg.
Первоначальные видео делаются в Camtasia.
Потом от каждого отрезается 7 секунд в начале.
Код: Выделить весь код
#ШАПКА
$ffmpeg = "E:\!!Youtube\автосборка_роликов\ffmpeg\ffmpeg\bin\ffmpeg.exe" #путь до ffmpeg.exe
$cut = "7" #количество секунд, которое нужно обрезать в начале каждого ролика

start-process "$ffmpeg" -arg "-i $сut_name1.mp4 -ss $cut -vcodec copy -acodec copy $сut_name1.mp4.mp4" -Wait -NoNewWindow

start-process "$ffmpeg" -arg "-i $сut_name2.mp4 -ss $cut -vcodec copy -acodec copy $сut_name2.mp4.mp4" -Wait -NoNewWindow

start-process "$ffmpeg" -arg "-i $сut_name3.mp4 -ss $cut -vcodec copy -acodec copy $сut_name3.mp4.mp4" -Wait -NoNewWindow

start-process "$ffmpeg" -arg "-i $сut_name4.mp4 -ss $cut -vcodec copy -acodec copy $сut_name4.mp4.mp4" -Wait -NoNewWindow
Потом перекод в ts, потом склейка.
Код: Выделить весь код
#перекодируем все файлы перед склейкой
start-process "$ffmpeg" -arg "-i $name1 -acodec copy -vcodec copy -vbsf h264_mp4toannexb -f mpegts $name1.ts" -Wait -NoNewWindow

start-process "$ffmpeg" -arg "-i $сut_name1.mp4.mp4 -acodec copy -vcodec copy -vbsf h264_mp4toannexb -f mpegts $сut_name1.ts" -Wait -NoNewWindow

start-process "$ffmpeg" -arg "-i $сut_name2.mp4.mp4 -acodec copy -vcodec copy -vbsf h264_mp4toannexb -f mpegts $сut_name2.ts" -Wait -NoNewWindow

start-process "$ffmpeg" -arg "-i $сut_name3.mp4.mp4 -acodec copy -vcodec copy -vbsf h264_mp4toannexb -f mpegts $сut_name3.ts" -Wait -NoNewWindow

start-process "$ffmpeg" -arg "-i $сut_name4.mp4.mp4 -acodec copy -vcodec copy -vbsf h264_mp4toannexb -f mpegts $сut_name4.ts" -Wait -NoNewWindow


#Cобираем видео

start-process "$ffmpeg" -arg "-i concat:$name1.ts|$сut_name1.ts|$сut_name2.ts|$сut_name3.ts|$сut_name4.ts -vcodec copy -acodec copy $name1_path\!8_минут_видео.mp4" -Wait -NoNewWindow

В финальном файле следующая проблема....
В местах склейки ... при переходе от одного видео к другому - идет просто черный экран 1-3 секунды. При этом музыка идет сразу нормалльно.
Т.е звук пошел, а вместо видео 1-3 секунды черный экран... потом появляется видео.

Как это исправить в финальном файле? Или что сделать чтобы в нем этого не было? Посредством ffmpeg.
Спасибо.

Отправлено: 23:58, 04-07-2021

 

Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6493
Благодарности: 1465

Профиль | Отправить PM | Цитировать


Прочтите статью и экспериментируйте.
https://trac.ffmpeg.org/wiki/Seeking

Ещё оттуда:
Цитата:
Using -ss as input option together with -c:v copy might not be accurate

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

И зачем перекодировать в .ts?

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)


Последний раз редактировалось DJ Mogarych, 05-07-2021 в 09:42.

Это сообщение посчитали полезным следующие участники:

Отправлено: 09:35, 05-07-2021 | #2



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

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Старожил


Сообщения: 286
Благодарности: 10

Профиль | Отправить PM | Цитировать


Цитата DJ Mogarych:
И зачем перекодировать в .ts? »
как я понял это чтобы склейка была без потери качества (хоть мне это и не очень важно), и к тому же "concat:" не работает с Mp4
а обычный concat требует предварительного создания list.txt (хотя это тоже не важно)

Мне бы получить желаемый результат)

Последний раз редактировалось 9119, 05-07-2021 в 12:41.


Отправлено: 11:59, 05-07-2021 | #3


Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6493
Благодарности: 1465

Профиль | Отправить PM | Цитировать


Цитата 9119:
чтобы склейка была без потери качества »
Вы одним перекодированием в TS теряете гораздо больше.

Если тяжело с ffmpeg, воспользуйтесь AviDemux, там и резать можно по ключевым кадрам, и склеивать.

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:00, 05-07-2021 | #4


Старожил


Сообщения: 286
Благодарности: 10

Профиль | Отправить PM | Цитировать


DJ Mogarych,

все таки сделал через ffmpeg.
c использованием команды -copyts. результат меня устроил.
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:51, 06-07-2021 | #5



Компьютерный форум OSzone.net » Цифровые технологии » Видео и аудио: обработка и кодирование » [решено] "брак" при склейке видео через ffmpeg

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Ошибка - Firefox браузер по умолчанию через "установка и удаление" и "set access and defaults" jz828059 Microsoft Windows 2000/XP 2 17-01-2014 17:22
[решено] При открытие "vk.com", "выкидывает" на страницу для "разморозки страницы" sovenok Лечение систем от вредоносных программ 17 21-11-2013 04:09
[FFMPEG] Скринкаст со звуком от "Стерео микшира" KrotMen Флейм 0 08-03-2013 16:06
При установки "видео-драйверов" слетает ОС _SneG_ Непонятные проблемы с Железом 5 26-04-2010 01:17
Интерфейс - [решено] Как удалить папку "Моя музыка","Мои Картинки", "Мое видео"? verdix Microsoft Windows 2000/XP 3 03-10-2009 23:46




 
Переход