Перейти к содержимому



Сжимаем фильмы с помощью ffmpeg


  • Вы не можете ответить в тему
  • Вы не можете создать новую тему
Сообщений в теме: 70

#61 OFFLINE   Damian

 

    Ветеран

  • Постоянные посетители
  • PipPipPipPipPipPipPipPipPip
  • сообщений: 863
    Последний визит:
    20 фев 2021 05:17
  • Пол:Мужчина
 

Отправлено 11 Февраль 2021 - 12:13

Не знаю у меня всегда на 100% загружен процессор во время кодирования.

#62 OFFLINE   Al71

 

    Мастер

  • [eMule-Rus]
  • сообщений: 2 143
    Последний визит:
    Вчера, 16:09
  • Пол:Мужчина
  • Откуда:Москва
 

Отправлено 11 Февраль 2021 - 14:01

Damian, можешь привести скриншот команды
top -H
во время кодирования?

#63 OFFLINE   Damian

 

    Ветеран

  • Постоянные посетители
  • PipPipPipPipPipPipPipPipPip
  • сообщений: 863
    Последний визит:
    20 фев 2021 05:17
  • Пол:Мужчина
 

Отправлено 11 Февраль 2021 - 15:17

Скрытый текстtop -H


#64 OFFLINE   Al71

 

    Мастер

  • [eMule-Rus]
  • сообщений: 2 143
    Последний визит:
    Вчера, 16:09
  • Пол:Мужчина
  • Откуда:Москва
 

Отправлено 11 Февраль 2021 - 16:28

Damian, я вижу только два работающих ( R ) процеccа ffmpeg, один грузит поток на 73,4%, другой грузит второй поток на 28,3%. Откуда ты взял 100%, я не понимаю. Если хочешь посмотреть суммарную загрузку процессора ffmpeg'ом, можешь запустить top без -H, только эту величину надо делить на число потоков.

#65 OFFLINE   Damian

 

    Ветеран

  • Постоянные посетители
  • PipPipPipPipPipPipPipPipPip
  • сообщений: 863
    Последний визит:
    20 фев 2021 05:17
  • Пол:Мужчина
 

Отправлено 12 Февраль 2021 - 10:39

 Al71 сказал:

Откуда ты взял 100%, я не понимаю.
из коньков и взял на 2 ядра по 100% и показывают там плюс минус.Кстати посмотри правильно я сделал,пока не запускал ещё
ffmpeg -i zout.mp4 -filter_complex \
"[0:v]trim=duration=333[av];[0:a]atrim=duration=333[aa];\
[0:v]trim=start=350,setpts=PTS-STARTPTS[bv];\
[0:a]atrim=start=350,asetpts=PTS-STARTPTS[ba];\
[av][bv]concat[outv];[aa][ba]concat=v=0:a=1[outa]" -map [outv] -map [outa] out.mp4



#66 OFFLINE   Al71

 

    Мастер

  • [eMule-Rus]
  • сообщений: 2 143
    Последний визит:
    Вчера, 16:09
  • Пол:Мужчина
  • Откуда:Москва
 

Отправлено 12 Февраль 2021 - 12:42

 Damian сказал:

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

 Damian сказал:

из коньков и взял на 2 ядра по 100% и показывают там плюс минус
Можешь во время кодирования запустить top (без -H), нажать t и показать вывод. Мне этот момент не до конца ясен. Ну и коньки заодно покажи, с процессами.

#67 OFFLINE   Damian

 

    Ветеран

  • Постоянные посетители
  • PipPipPipPipPipPipPipPipPip
  • сообщений: 863
    Последний визит:
    20 фев 2021 05:17
  • Пол:Мужчина
 

Отправлено 13 Февраль 2021 - 06:09

Скрытый текстTOP

Изображение

#68 OFFLINE   Al71

 

    Мастер

  • [eMule-Rus]
  • сообщений: 2 143
    Последний визит:
    Вчера, 16:09
  • Пол:Мужчина
  • Откуда:Москва
 

Отправлено 13 Февраль 2021 - 11:19

У тебя всего два потока, поэтому кодек грузит процессор практически по максимуму (на ~90%, остальное коньки и система). При этом температура 55-58оС выглядит более адекватно. У меня при двадцати потоках с этой командой загрузка всего около 30%. Если ограничить число потоков до двух и привязать к ядрам, то получается примерно как у тебя (80-90% на поток). И от разрешения этот процент тоже зависит, как заметил UrryMan.

#69 OFFLINE   Damian

 

    Ветеран

  • Постоянные посетители
  • PipPipPipPipPipPipPipPipPip
  • сообщений: 863
    Последний визит:
    20 фев 2021 05:17
  • Пол:Мужчина
 

Отправлено 13 Февраль 2021 - 11:58

Просмотр сообщенияAl71 сказал:

У тебя всего два потока,
не знаю,я не разбираюсь,почему-то после вырезания размер наоборот увеличился что было неожиданностью почти в 2 раза.

#70 OFFLINE   Al71

 

    Мастер

  • [eMule-Rus]
  • сообщений: 2 143
    Последний визит:
    Вчера, 16:09
  • Пол:Мужчина
  • Откуда:Москва
 

Отправлено 13 Февраль 2021 - 14:10

Просмотр сообщенияDamian сказал:

почему-то после вырезания размер наоборот увеличился что было неожиданностью почти в 2 раза

Бывает, что при перекодировании размер увеличивается. Это может зависеть от исходного видео и заданного crf кодера (по умолчанию 23). К сожалению, просто скопировать видеоряд без перекодирования с одновременной фильтрацией не получится, так как фильтры применяются к raw-формату (mp4-->decoder-->raw-->filter-->encoder-->mp4), но можно явно указать CRF кодера, добавив в последнюю строку -c:v h264 -crf N, где N -- нужный CRF. Например:

ffmpeg -i zout.mp4 -filter_complex \
"[0:v]trim=duration=333[av];[0:a]atrim=duration=333[aa];\
[0:v]trim=start=350,setpts=PTS-STARTPTS[bv];\
[0:a]atrim=start=350,asetpts=PTS-STARTPTS[ba];\
[av][bv]concat[outv];[aa][ba]concat=v=0:a=1[outa]" -c:v h264 -crf 25 -map [outv] -map [outa] out.mp4

Хотя качество при этом вряд ли улучится.

Если использовать первый способ вырезания фрагмента (с опциями -ss и -to), то там можно обойтись без перекодирования, но высока вероятность артефактов, если обрезать не по ключевому кадру. Это, кстати, относится и к графическим редакторам.

#71 OFFLINE   Damian

 

    Ветеран

  • Постоянные посетители
  • PipPipPipPipPipPipPipPipPip
  • сообщений: 863
    Последний визит:
    20 фев 2021 05:17
  • Пол:Мужчина
 

Отправлено 14 Февраль 2021 - 07:21

Просмотр сообщенияAl71 сказал:

добавив в последнюю строку -c:v h264 -crf N, где N -- нужный CRF. Например:
это кусок строки из скрипта для кодирования,он может быть полезен когда размер нужен небольшой.





Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных