Вы должны войти, чтобы создавать сообщения и темы.

Полезные пункты контекстного меню для mp4 | ffmpeg

1◄Страница 36 из 37►

4UBAKA, Так винда сама назначает дату, ее никак не оставить прежней, возможно можно как то оставлять дату или править ее после обработки, но геморойно я думаю)

«Любой дурак может знать. Дело в том, чтобы понять.» — Альберт Эйнштейн

Всем привет🖖

По дате создания и изменения
Нашёл, точнее ИИ нянька от гугла подсказала, утилиту - BulkFileChanger от Nirsoft. Удобная, особенно за не имением другого.
Но, нянька и про PowerShell говорила, типа пара команд решает вопрос назначения этих дат

Для даты создания:Скопировано
$(Get-Item "C:\путь\к\файлу.txt").CreationTime = "01.01.2024 12:00"

Для даты изменения:Скопировано
$(Get-Item "C:\путь\к\файлу.txt").LastWriteTime = "01.01.2024 12:00"

Возможно это как-то применить в этом регфайле, что бы даты не менялись и сохранялись прежними?

Заранее спасибо за внимание🖖

4UBAKA, Привет.
Это надо создавать powershell скрипт где-то на компе отдельно, подключать его в реестре, то есть запуск powershell, а скрипт там уже делает свое дело.
В общем:
Создаешь txt, вставляешь в него это ⬇️ и меняешь расширение на ps1

param(
    [string]$src
)

$dst = "$src.mp4"

$ctime = (Get-Item $src).CreationTime
$mtime = (Get-Item $src).LastWriteTime

ffmpeg -i "$src" -map_metadata 0 -crf 22 "$dst"

(Get-Item $dst).CreationTime = $ctime
(Get-Item $dst).LastWriteTime = $mtime

Это для Оригинального сжатия, не 720, для 720, тоже самое, только код внутри ffmpeg смени на 720-ый и все.
Далее в reg файле кусок, который отвечает за сжатие меняем на:

Скопировано[HKEY_CURRENT_USER\SOFTWARE\Classes\SystemFileAssociations\.mp4\shell\FFmpeg\shell\Сжать MP4\shell\Оригинал\command]
Скопировано@="powershell.exe -ExecutionPolicy Bypass -File \"C:\\Users\\Admin\\Desktop\\Data.ps1\" \"%1\""

Путь до ps1 файла замени на свой.

Лайкнул 4UBAKA
4UBAKA
«Любой дурак может знать. Дело в том, чтобы понять.» — Альберт Эйнштейн

Всем привет🖖
МИР ТРУД МАЙ )))
Mikhail, большое Вам спасибо за внимание и помощь!
С оригинальным размером всё получилось. А вот с 720 кадром не совладал(((

Вот скрин - что делал

1 - этот код для 720 кадра работает, скопировал правильно, судя по всему )))
2 - скопировал (перенёс), если правильно понял что и как в скрипт ps1.
3 - указал путь в регфайле ( для оригинального размера работает, для 720 не хочет) 

Подскажите, пожалуйста, что не так делаю.
Заранее спасибо за внимание 🖖

4UBAKA, Привет.
Такой попробуй.

param([string]$src)

$src = $src -join ""

$base = [System.IO.Path]::GetFileNameWithoutExtension($src)
$dir  = [System.IO.Path]::GetDirectoryName($src)
$dst  = Join-Path $dir ($base + "_720p.mp4")

$ctime = (Get-Item $src).CreationTime
$mtime = (Get-Item $src).LastWriteTime

ffmpeg -i "$src" -map_metadata 0 -vf "scale=1280:720:force_original_aspect_ratio=decrease,pad=1280:720:(ow-iw)/2:(oh-ih)/2" -crf 22 "$dst"

(Get-Item $dst).CreationTime = $ctime
(Get-Item $dst).LastWriteTime = $mtime
«Любой дурак может знать. Дело в том, чтобы понять.» — Альберт Эйнштейн

Всем привет🖖
Mikhail, не получилось для 720 конвертировать с сохранением даты создания/изменения.

На втором, более мощном ноуте, тоже протестировал:
- "оригинал" работает, и, что особенно заметил - окно хода выполнения - это окно PowerShel (синее окно)
- "720" тоже стал работать, но окно выполнения - чёрное, при этом дата создания/изменения новая

На слабом ноуте, на работе, проверю есть ли разница эта. До этого вообще окно выполнения процесса могло не открываться. Появлялось и сразу закрывалось, это про "720" формат было, потому не могу сейчас точно сказать PS(синее) или CMD(чёрное) было.

Т.е сейчас получилось только для "оригинала" на двух ноутах - оба на 10ке (домашняя и профи) настроить сжатие с сохранением даты создания/изменения.
"720" формат пока не смог.

Может я что не так делаю? ... на что обратить внимание или какие скриншоты дополнительно сделать?
Большое спасибо за ваше внимание и помощь в решении вопроса!🖖

4UBAKA, Привет.
Все работает, я проверял перед тем как выложить, Gif записал.

Лайкнул 4UBAKA
4UBAKA
«Любой дурак может знать. Дело в том, чтобы понять.» — Альберт Эйнштейн

Всем привет🖖
Mikhail, спасибо за помощь!
На слабом ноуте, пока только на нём, сегодня, получилось запустить и 720 формат. Окно выполнения PowerShel (синее) 
Не знаю что не так делал на другом ноуте, тот поновее и помощнее. Проверю позже. Сегодня нет к нему доступа.

Если не затруднит, можете ещё подсказать ещё нюансик один )))
Проверял на одном не большом видео и заметил, что выходной файл, на оригинале, да и на других файлах замечал такое, что "сжатый" файл чуть больше или даже не совсем "чуть", например, вместо входного 230Мб на выходе около 280 получается. По данным файла понял что это битрейт ("скорость передачи данных" и "общая скорость потока") стали по значениям больше.

Как-то можно это понять перед конвертированием, что бы не терять время? 
Можно как-то этим управлять и что кроме запроса  к ИИ няньке гугла - "битрейт и как им управлять в FFmpeg" можно и полезно посмотреть?
Может что-то в рамках этого решения "простое" дополнение есть? Если, конечно, я правильно понял этот нюанс.

Ещё раз спасибо вам за помощь и внимание🖖
 ....оооочень большое спасибо !!!! )))

4UBAKA, Привет.

Как-то можно это понять перед конвертированием, что бы не терять время? 

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

«Любой дурак может знать. Дело в том, чтобы понять.» — Альберт Эйнштейн

Добрый день.

Кто-нибудь пережимал видео с HDR?
Пробовал вчера пережать фильм AV1 с HDR и после пережатия картинка фиолетовая получается. 
Этот же фильм без пережатия нормально воспроизводится в MPC HC. 

Может какой-то аргумент для сжатия надо добавить?

Голова дана человеку не для того, чтобы кушать, а для того, чтобы думать.

Андрей, Привет.
Пожимал парочку видео, вроде норм на стандарте пережимал, показывает нормально ¯\_(ツ)_/¯, в ffmpeg нарыл есть такие аргументы.
Скопировано-color_primaries 9 -color_trc 16 -colorspace 9 -pix_fmt yuv420p10le

А тот файл у тебя фиолетовый остался?, седлай на него проверку Скопированоffprobe -show_streams "hdr.mp4" | findstr color, там должно быть что-то типа Скопированоyuv420p10le(tv, bt2020nc/bt2020/smpte2084) и color_space=bt2020nc, color_transfer=smpte2084, color_primaries=bt2020, значит hdr перенеся.

«Любой дурак может знать. Дело в том, чтобы понять.» — Альберт Эйнштейн

Mikhail, Привет. 

Вот такая информация при проверке.

Вот кусочек видео, которое я хотел ужать. 

Голова дана человеку не для того, чтобы кушать, а для того, чтобы думать.

Hdr да нет, неперенеся, ты мне скинул уже покрашенный я так понял, а скинь нормальный кусок.

«Любой дурак может знать. Дело в том, чтобы понять.» — Альберт Эйнштейн

Mikhail, это не покрашенный.

Вот скрин из MPC HC данного видео. В MPC HC должен быть включен его рендерер. 

Голова дана человеку не для того, чтобы кушать, а для того, чтобы думать.
1◄Страница 36 из 37►