Lista winnt@man.lodz.pl
[Lista archiwów] [Inne Listy]

[WINNT] MPC-HC Media Player Classic Home Cinema, linia komend do przyspi

To: winnt@man.lodz.pl
Subject: [WINNT] MPC-HC Media Player Classic Home Cinema, linia komend do przyspieszenia audio+video wydłubać z programu
From: "jedrek" <j@j.j>
Date: Mon, 4 Mar 2024 20:32:35 +0100
Po ustawieniu w opcjach playera  MPC-HC v 1.7.13,  -> Playback
W dziale "Control" Speed step = 5%
można sobie regulować szybkość (nie mylić z regulacją tempa, jakie stosują inne playery, jak np. VLC, czy youtubowe odtwarzacz na www, gdzie szybciej znaczy pociąć głoski z zachowaniem tej samej barwy głosu) odtwarzania filmu, na zasadzie jakby przyspieszanej taśmy w magnetofonie. Metoda bardziej czytelna, bo nie kastruje słów jak YT przy przyspieszeniu, zmienia się tu tylko ten tzw. PITCH czyli też podobnie jak w YT czas odtwarzania.
Chłop mówi jak baba, ale są nadal niepokastrowane słowa jak na YT.
Stąd w MPC-HC da się więcej przyspieszać bez utraty zrozumienia mowy.
W YT przy 1,5x już niektóre przemowy są mocno degradowane tą kastracją.

I teraz np MPC-HC ustawiamy sobie na prędkość odtwarzania 1.3x
Co daje z typowego materiału 25 klatek, frame rate = 32,5 klatek.

Czy da się odkopać jaką wtedy linią komend MPC-HC karmi swój wbudowany ffmpeg
by w locie robić tą bezstratną konwersję przyspieszającą odtwarzanie?

Widzę, że nie są to raczej komendy opisane np. tutaj:
https://trac.ffmpeg.org/wiki/How%20to%20speed%20up%20/%20slow%20down%20a%20video

do przyspieszenia audio nie chodzi też o komendę "atempo", bo ta działa
podobnie jak player YT od kastrowania słów.
Co do video to wygląda, że MPC-HC w linii komend (która jest generowana
gdzieś tam pewnie w RAM-ie na działającym programie) na przyspieszenie video
używa przypuszczalnie komendy coś zbliżonej do
"setpts=0.5*PTS"
Ale ta komenda ma tą wadę, że ponoć parametr musi być wielokrotnością 0.5

A przyspieszenie x1.3 to wynika, że by było: 0.333
co wyklucza wielokrotność 0.5

Na stronach o ffmpeg powtarzają się te schematy przyspieszające, ale efekt końcowy jak nakrmi się tymi komendami ffmpeg, daleki jest od tego co robi MPC-HC w locie.
Albo na stronach widać jakieś kosmiczne rozbudowane skrypty.
Zakładam, że komenda w MPC-HC jest jakaś prosta, bez cudowania.
Da się jakość wyciągnąć z programu MPC-HC jakimi on liniami komend karmi swój wbudowany ffmpeg? Czyli jakiś szablon, gdzie w zależności czy chcemy przyspieszyć o 1,3 lub 1,5 lub 1,6x
zmieniać sobię jedną zmienną i konwertujemy bezstratnie bez rekompresji.
Aby potem znając jego linię przyspieszającą w locie odtwarzane wolne przemówienia, można było nakarmić zewnętrznie, ręcznie takim gotowcem z MPC-HC program ffmpeg i wszelkie materiały bezstratnie, bez rekompresji szybko przemontować do nowrgo kontenera, na taki co ma już nowe info o większej ilości klatek na sekundę "ściśniętych" i za tak podkręconymi klatkami podążą też przyspieszona fonia na zasadzie szybciej przesuwającej się taśmy w magnetofonie, a nie jak robi to np VLC kastrując głoski. Czyli móc za jednym rozdaniem przemielić video i audio by się zaczęło odtwarzać z wyplutego pliku szybciej w dowolnym innym odtwarzaczu, gdzie
nie ma możliwości regulacji szybkości odtwarzania materiału.

Ręczne przerabianie-przyspieszanie fonii - by szybciej materiał oglądnąć-wysłuchać - w np. Audacity, gdzie jest wbudowane narzędzie do zmian szybkości jest dość żmudne, bo trzeba przechodzić przez pośredniczący WAVE i przewalać GB danych na dysku jak materiał ma kilka godzin do podkręcenia prędkości i dopiero z przyspieszonego WAVE robić ponowną kompresję do AAC, MP3 i muxować z video. A ilość klatek video na sekundę zmieniać w czasie nowego muxowania, przemontowując wynikowy kontener np. programem mkvtoolnix, gdzie zmieniam parametr FPS dla wskazanego przyspieszenia 1.3x i wklepuję 32.5p (gdy źródło miało 25p), i po zmotowaniu video z przyspieszoną Audacity fonią mam w miarę to, co realizuje w locie bez przewalania GB danych MPC-HC. Mając możliwość wydłubania poleceń jakimi karmii MPC-HC ffmpeg byłoby szybciej.

<Pop. w Wątku] Aktualny Wątek [Nast. w Wątku>