Recenze  |  Aktuality  |  Články
Doporučení  |  Diskuze
Filmy a seriály, streamovací služby
Televize  |  Projektory
Audio a domácí kina
Multimediální centra  |  Ostatní
Svět hardware  |  Digimanie
Svět mobilně

Převod .m2ts do .mkv bez ztráty?

Najlvin (61)|2.5.2014 00:54
Ahoj. Chtěl bych se zeptat na takovou drobnost, jelikož co se týče kodeků a kontejnerů jde tak trochu mimo mě. Je převod filmu z .m2ts do .mkv bezztrátový?

Trochu vám přiblížím moji situaci. Mám ve Vegasu sestříhané fullhd video 1920x1080 50i (tedy prokládané). Tento projekt následně vyexportuji pomocí Sony AVC/MVC kodeku jako finální film ve formátu .m2ts s datovým tokem 16000kbps (to mi tak kvalitativně stačí). Problém je, že z nějakých záhadných důvodů mi v PC tento .m2ts film jde přehrát jen z půlky. Prostě vždy ve stejném místě někde kolem 41. minuty se to začne sekat a až do konce už jde jen zvuk (dělá to i u jiných takto vyrobených filmů). Video by ale podle všeho mělo být v pořádku. Takže jsem si stáhl Avidemux a bez problémů do něj načetl můj .m2ts film. A teď přichází to hlavní - za předpokladu, že v Avidemuxu ponechám Video output: Copy a Audio output: Copy - následně zvolím Output format: Mkv muxer a nechám to zpracovat, je pak výsledný .mkv film ve zcela stejné kvalitě jako ten .m2ts? Velikost souboru se totiž o něco zmenší, ale na pohled kvalita vypadá stejně. A hlavně mi už pak jde film přehrát celý bez jediného záseku.

Chápu to dobře, že to .mkv je jen jakýsi kontejner, v němž je vlastně uložený ten nezměněný .m2ts soubor? Nebo tam k nějaké konverzi v obraze přece jen dochází?

Předem díky za vaše cené informace a vysvětlění:-)
ai (2993)|2.5.2014 03:24
m2ts je take kontejner s H.264 videem a AC3 audiem uvnitr, ale je to transport stream, mkv je take kontejner,

na tvorbu mkv kontjneru pouzivej mkvtoolnix (mkvmerge) , nepouzivej avidemux,
mkvmerge ti nebude enkodovat nic, na to se muzes spolehnout, protoze to ani neumi, ten jen "zabaluje" do MKV, ale Avidemux se musi nastavit, ale jak rikam, na mkv je mkvmerge specialni program
Najlvin (61)|2.5.2014 12:59
Ok, díky. To vyzkouším. Každopádně teď jsem asi přišel na to, proč mi to video v .m2ts nechce v PC fungovat jak má. Ve vegasu má video na časové ose 1:27:47, ale když jej vyexportuji do .m2ts (používám jejich template pro AVCHD video 1920x1080 50i 16Mbps), tak má najednou to video 1:29:06. Tady asi bude zdroj toho problému. Nevíte, proč to Vegas takhle blbě vyexportuje? Když zvednu bitrate na 20Mps, pak má najednou video stopáž 1:51:41 -ale přitom mi ani nepřijde, že by to šlo nějak pomaleji. Každopádně když to .m2ts video nechám převést do .mkv v Avidemuxu, tak už je zase stopáž taková, jaká by měla být - a proto to asi taky jde přehrát bez problémů... Nesetkal jste se s tím někdo?
ai (2993)|2.5.2014 14:43
Jakym prehravacem to prehravas?
Najlvin (61)|2.5.2014 15:47
VLC nebo WMP - oaba s tím mají stejný problém. Navíc když si nechám zobrazit vlastnosti toho fimového souboru .m2ts, tak to tam uvádí špatnou délku :-/

Jinak teď jsem ještě přišel na to, že po převedení videa do .mkv se zhorší jeho plynulost. Skoro jako kdyby to odstranilo prokládání. Je to možné, nebo dělám něco špatně? Dělá to jak Avidemux, tak ten mkvmerge. Při rychlejším pohybu se ten obraz jakoby třese, dost podobné tomu, když odstraní z videa prokládaní metodou interpolate. Myslel jsem, že to v tom .mkv zůstane stejné jako ve zdrojovém .m2ts souboru.

Možná bych mohl zkusit ještě převod do jiného kontejneru. Třeba .mp4? Je na to nějaký podobný program? A umí tyhle kontejnery vůbec prokládané video?
ai (2993)|2.5.2014 23:20
Tady se nevi co je spatne, pokud mas treba nejaky kratky klip v pohybu, par sekund, treba pokud mozno i ten original.
vivid.sk (11472)|2.5.2014 23:38
[QUOTE=Najlvin;488143] Myslel jsem, že to v tom .mkv zůstane stejné jako ve zdrojovém .m2ts souboru.
[/QUOTE]
Ostatne. Skontroluj si vystup cez mediainfo. Musi tam byt uvedeny Scan Type rovnaky, ako v zdroji = Interlaced.
Naviac ti to moze kazit media player (ako mas nastaveny deinterlace?)
Najlvin (61)|3.5.2014 01:33
Jo, asi by to mohlo být tím WMP. Jakou používá metodu odstraňování prokládání netuším. U VLC to v případě Linear běží v pořádku. Spíše mě zaráží, že to .m2ts WMP přehraje plynule a to samé v .mkv už tak plynule neumí...

Hodil jsem na web část videa, s kterým to zkouším. Jedná se o .m2ts soubor vyexportovaný Vegasem. WMP jej přehraje nádherně plynule, ale jakmile přeskočíte ve videu dál, obraz se zasekne. Taky tu vzniká nesrovnalost s časem, protože ve Vegasu má časová osa 4:59 a výsledný .m2ts film 6:22.

Druhý přibalený soubor je tento samý film převedený do .mkv - můžete porovnat. Video je najednou dlouhé tak, jak by mělo být, při přehrávání se nezasekává, ale ve WMP už najednou není tak plynulé jako ten původní .m2ts formát. Pokud to ale přehrávám ve VLC a nastavím odstranění prokládání metodou Linear, tak se to zdá být opět plynulé. Ale nechápu, proč to WMP taky tak plynule nepřehraje, když u toho .m2ts to dokáže. Může to snad nějak ovlivňovat ten kontejner .mkv?

Video stahujte tady: http://www.doommap.cz/data/videa.rar (1,33Gb)
ai (2993)|3.5.2014 03:23
Tak jsem to nakonec stahnul, mam uplne stejne priznaky jako ty na PC, ovsem potom co jsem to m2ts demuxoval a zase remuxoval do m2ts pomoci TsMuxeru, tak video ukazuje spravny cas a take se da prechazet do jinych casti videa bez problemu.

Proc se to nejevi 100% plynule v tom MKV nevim, provadi se deinterlace jinak zrejme.

To m2ts je 1pass ? To nevim jestli je dobry pristup, ja bych teda daval ven radsi MP4 a treba i 2pass (bohuzel, CRF neni v NLE enkoderech) . Ty sice s tou kamerou porad nekam mavas, tedy bitrate je v klidu malo kdy, ale prece jen ...
Najlvin (61)|3.5.2014 10:12
Já vím, ve filmování jsem pořád amatér. A hlavně tohle bylo filmovaný bez stativu a za pochodu, tak to moc v klidu nešlo :-) Proto bych u výsledného filmu rád zachoval maximální plynulost.

Takže co bys mi doporučil? Remuxovat nebo rovnou exportovat do .mp4? To .mp4 jsem zkoušel přímo ve Vegasu, ale ať jsem dělal co jsem dělal, tak mi to pokaždé odstranilo prokládání. Zkoušel jsem to různě nastavovat, nicméně výsledek byl stále stejný. Nevím proč :-/ Dá se nějak to .m2ts exportovat do .mp4 bez ztráty kvality podobně jako u toho .mkv? Doporučil bys mi na to nějaký spolehlivý program? Vůbec nejraději bych byl, kdyby se to dalo exportovat rovnou z Vegasu - jak už jsem zmiňoval, jsem amatér a nejjednodušší by pro mě bylo, když to prostě jenom sestříhám a rovnou vyexportuji do konečného formátu. Já vím, že se to dá dělat i různými jinými způsobi, ale to je pro mé učely asi už zbytečně moc komplikované :-)
vivid.sk (11472)|3.5.2014 13:24
Stiahol som video a vyzera to tak, ako keby sa to javilo progresivne (aj napriek tomu, ze flag a obsah je prekladany).
Dekoder (v mojom pripade hardwarovy) si mysli, ze ide o progresivne video, preto sa nevykonava deinterlace. Pokial zapnem softwarovy deinterlacer (YADIF 50 fps) v MPC-HC, video je prehrane korektne.

Preco je tomu tak neviem, ale zda sa, ze tento postup k vyrieseniu staci

odskusal som na tvojom videu:

[SPOILER]
ffmpeg -fflags +genpts -i test_metro.m2ts -scodec copy -acodec copy -vcodec copy -f matroska test_metro.mkv
[/SPOILER]

A funguje to.

P.S. nepouzivaj aktualnu verziu ffmpeg, pretoze to hadze nejake chyby, pouzi nizsie testovany build 2.1.3
ai (2993)|3.5.2014 15:37
[QUOTE=Najlvin;488198]Vůbec nejraději bych byl, kdyby se to dalo exportovat rovnou z Vegasu[/QUOTE]
Zivot uz je takovy :-), ted dokonce diky vivid.sk mas uz dve reseni, ffmpeg a projet to na zmenu kontejneru do MKV, druhe reseni je demux s tsMuxerem a zase remux a mas solidni m2ts. Ja mohu pozdeji udelat jednoduchy programek, ktery ti to m2ts z Vegasu prevede jednim klikem to MKV nebo znovu na to vice vyhovujici m2ts.
Najlvin (61)|3.5.2014 16:26
Díky moc za rady. Vyzkouším to. Ale stejně bych rád zjistil, kde tenhle problém vzniká. Protože bych se tomu rád příště vyvaroval. Mám snad někde něco špatně nastaveného ve Vegasu? Nebo mi někde něco uniká? Jde mi o to, ať prostě z Vegasu vyexportuji video a už se o něj dál nemusím starat, ale pokud je chyba někde ve zdroji, asi se dodatečným úpravám nevyhnu.
vivid.sk (11472)|3.5.2014 16:59
Problem je zrejme v samotnom Vegase (zeby to bolo tiez od SONY? :D)
[SPOILER]
Problem:
First the problem: Above mentioned Sony camcoder produces 1920x1080, 60i video. However, the time-stamps on the frames in each interlaced field are wrong, both frames of a filed having same time-stamp. This is very problematic for almost all rendering devices.
[/SPOILER]

Myslim ale, ze to prehnanie cez ffmpeg zvlast neboli. Sprav si na to nejaku bat-ku, a kazde vygenerovane video tym prezen. Je to bez straty kvality a netrva to dlho.
ai (2993)|3.5.2014 22:23
Ja osobne exportuju uz leta jen pres debug mode frame server, protoze export Vegasu byl hodne bugovy v minulosti a mozna i dnes. Vegas je super program, jeho hlavni slabina je , ze ma dost bugs pri exportech. Nemyslim nastaveni, to naopak, ve Vegasu si muzes nastavit a menit sablony jak chces, ale proste to drhne, export do mp4 atd., mozna i ten tvuj export do m2ts je prikladem, vyrobeneho ne nejak kvalitniho streamu, mozna by se hodila fotka, jak jsi jej vyrobil.

Export pro formatu funguje skvele, ale tyhle home exporty, da se narazit. Vegas si tihle kazi naprosto jedinecny program. Prave proto osobne uz od verze 8 pouzivam debug mode frame server, uz bych se bez toho vubec neobesel. To se ti otevrou dvere do uplne jinych dimenzi, .. no jo, ale jeden musi neco projit, neni to jen tak, ..., ale prave proto sem delal par bat programku, ktere potrebovali jini, kvuli exportum z Vegasovy timeline, tam nemuseli vedet vubec nic o Avisynthu apod., proste jen rozjet ten server a hotovo ...

[QUOTE=vivid.sk;488234]Sprav si na to nejaku bat-ku, a kazde vygenerovane video tym prezen.[/QUOTE]
ja mu to udelam, ale az vecer, to by mohlo byt az v nedeli tedy ...
ai (2993)|4.5.2014 08:49
Ten fix m2ts.zip rozbal a pak treba vyber jeden nebo vice m2ts souboru z toho vegasu a poloz je na patricny BAT, bud
-remux zase do m2ts
(zadne mezery v nazvech tech m2ts, je tam nesikovne omezeni toho tsMuxeru pro command line)
nebo
-remux do MKV.

Zkus to jestli ti to bude fungovat.
Najlvin (61)|4.5.2014 13:53
Strašně moc díky vám oběma, i za tu skvělou utilitku. Hodně mi to pomohlo vyřešit mé potíže. Chtěl jsem se zeptat - dala by se takováto jednoduchá pomůcka udělat i pro převod prokládaného .m2ts do neprokládaného .mp4? Prostě něco, čím by se takto snadno a hlavně kvalitněji než ve Vegasu dalo zbavit prokládání? Jedná se mi o presentaci na YouTube, kde ta 50i videa značně utrpí. A Vegas samotný to taky moc dobře nezvládá. Já vím, že už jste mi radili jiné postupy pomocí framserveru, ale na mě amatéra je to poněkud složitý. Zas tak moc se v tom nevyznám :-)

Ještě jednou díky za trpělivost se mnou.
vivid.sk (11472)|4.5.2014 14:43
Pojde to urcite spravit cez frameserver (avisynth) a myslim, ze by to slo aj takto batch-ovo. Treba odskusat nejaky dobry deinterlacer (YADIF? neviem ci su vysledky tiez take dobre pri deinterlace do 25p, myslim, ze budu aj lepsie deinterlacery). Problem je, ze to nebude bezstratove, a budes to musiet re-enkodovat. A to uz nebude trvat par minut, ale par hodin, pretoze kvalitny encode trva dlho.

Takisto sa nezbavis pocitu neplynuleho pohybu (pises o tom v susednom vlakne), tu pomozu len pomalsie svenky, alebo rozmazanie (post-processing). To vsetko je uz ale profi know-how (kameramani vedia svoje, treba cerpat informacie tam).
ai (2993)|4.5.2014 15:46
Takovy programek uz mam, ale musis mit nainstalovany debugmode frame server a Avisynth. A ty do toho nechces jit, rozumej, to video musis dostat primo z Vegasovy timeline do externiho enkoderu. To se provede pomoci techto programku. Nemusis mit debug mode frame server, ale musel bys exportovat bud uncompressed z Vegasu (silene velike soubory) a to nacist do enkoderu nebo z Vegasu exportovat nejaky lossless, kde soubory by mohly by trochu mensi, ale stale obrobske, ale to bys musel nainstalovat nejaky lossless kodek do PC (Hufyuv, Ut codec etc.). A ztemi lossless nebo uncompressed nemam nic hotoveho, to bys musel manualne delat az po enkoding v nejakem free x264 enkoderu. Mam jen hotovy programek, ktery nacte ten debugmode frame server a exportuje ti video na Youtube.

Ale je to tak jak rika vivid.sk, ja se obavam, ze to nebude dost dobre pro tebe, ten export na 25p, protoze ti nevyhovuje jak to vypada z Vegasu (s resample disable nebo ne), jeste muzes nastavit interpolate fields v properties projektu (misto blend), mozna to bude o chlup lepsi. Tva kamera je znacne neklidna, je tam i sum, mozna tocis na automat, nastavuje to casy kratsi, nez by bylo vhodnejsi atd...). Vyhoda toho frame serveru je ovsem ta, ze enkodujes CRF 1pass primo do mp4, kde si to veme bitrate jaky to potrebuje, zadne tipovani bitratu, mozna bys v konci useril... A jeste jednou, hodila by se fotka toho m2ts nastaveni v tvem exportu ve Vegasu, protoze jestli to je 1pass VBR tak take nic moc,....
Najlvin (61)|4.5.2014 16:34
Takhle, teď už mi jde jen o to, aby to na tom YouTube vypadalo trochu koukatelněji. Nejsem si úplně jistý, jestli ten Frame Server bude pracovat s mým Vegasem. Měl jsem dočasně trial Sony Vegas 13, teď už jsem zase zpátky na Movie Studio 13 (což je oškubaná verze Vegasu). Problém je, že tam se ten projekt ukládá pod jiným formátem - má to jinou koncovku...

Proto jsem si myslel, jestli není nějaký program, kam bych hodil ten můj finální .m2ts a z toho by se udělalo .mp4 bez prokládání. Mám tu Avidemux, kde ta možnost je a kde je i Yadiff metoda. Ale ty výsledky mi přijdou stále stejné jako z Vegasu. O kvalitu obrazu mi už ani tak moc nejde - na YouTube je to stejně jedno. Jen bych rád, kdyby se nějak povedlo docílit lepší plynulosti.

Blend ani nepoužívám - od začátku tam mám nastavené Interlaced - je to ostřejší, ale zase ten obraz dost cuká při pohybu, z čehož pak bolí oči.

Já vím, že asi chci moc. Navíc ten záznám je taky dost mizernej. Proto se spíše ptám jen takhle teoreticky, jakými cestami se to dá odstranit.
ai (2993)|4.5.2014 16:44
[QUOTE=Najlvin;488352]Proto jsem si myslel, jestli není nějaký program, kam bych hodil ten můj finální .m2ts a z toho by se udělalo .mp4 bez prokládání. Mám tu Avidemux, kde ta možnost je a kde je i Yadiff metoda. Ale ty výsledky mi přijdou stále stejné jako z Vegasu. O kvalitu obrazu mi už ani tak moc nejde - na YouTube je to stejně jedno. Jen bych rád, kdyby se nějak povedlo docílit lepší plynulosti.[/QUOTE]
Tak znova enkodovat uz jednou renderovany m2ts neni asi dobry napad, protoze YouTube to to enkoduje jeste jednou, a to potreti celkem.
Ta plynulost nemuze byt dobra, prevedenim 50i na 25p. To bude to same jako to tve MKV , kdyz se cukalo. Rozumej, ty mas znacne neklidnou kameru, s kratkymi casy zrejme, kde z principu se tyto dve veci umocnuji a "rozrusi" zaznam prevodem na 25p.
Pytkin (7947)|5.5.2014 01:34
yadiff neni nic moc ..
Najlvin (61)|5.5.2014 10:14
Asi už to nechám tak, jak to je. Na YouTube stejně ta kvalita nebude nikdy uspokojivá... Ale mohli by zavést podporu pro 50i nebo 50p... V dnešní době by to snad už nemusel být takový problém :-)
ai (2993)|6.5.2014 06:30
Jeste se vracim k tomu jednomu skriptu m2ts do m2ts, tam nevim proc jsem nezkusil primo hned remux v tom TSMuxeru toho souboru z Vegasu, to take funguje, nemusi se delat demux a remux tech streamu. Zkopiruj tento text a nahrad ho v tom "fix m2ts to m2ts.BAT".
[SPOILER]@echo off
IF "%~n1"=="" ( echo poloz m2ts soubory z Vegasu na ikonku tohoto BAT souboru & echo. & pause & exit)
SET tsmuxer="%~dp0tools\tsMuxeR\tsMuxeR.exe"
SET root=%~dp0
SET output=%~dp0output_m2ts
MD "%output%"

cls
echo Prevod m2ts z Vegasu do korektniho m2ts pomoci TsMuxer
echo ^(zadne mezery nesmi byt v nazvech pro m2ts^)
echo ---------------------------------------------------------------------
echo.

set i=0
:loop
CD /D %root%
if "%~d1%~p1%~n1%~x1"=="" goto konec
if "%~x1"=="" echo vynechavam %~n1 adresar & echo --------------------------------------------- & shift & goto loop
if /i %~x1 NEQ .m2ts echo vynechavam %~n1%~x1 & echo --------------------------------------------- & shift & goto loop
echo.
echo REMUX %~n1%~x1
echo ---------------------------------------------
echo MUXOPT --no-pcr-on-video-pid --vbr --vbv-len=500 > remux.meta
echo V_MPEG4/ISO/AVC, "%~d1%~p1%~n1%~x1", insertSEI, contSPS, track=4113 >> remux.meta
echo A_AC3, "%~d1%~p1%~n1%~x1", timeshift=-39ms, track=4352 >> remux.meta
%tsmuxer% remux.meta %~n1_prozatim.m2ts
DEL /Q remux.meta

move "%root%%~n1_prozatim.m2ts" "%output%"
CD /D %output%
if exist "%~n1.m2ts" DEL /Q "%~n1.m2ts"
rename "%~n1_prozatim.m2ts" "%~n1.m2ts"
echo.
echo.

set /a i=%i% + 1
shift
goto loop

:konec
echo.
if %i%==0 echo Zadny m2ts nebyl vytvoren & echo. & pause & exit
echo Prevedene m2ts jsou ukladany do output_m2ts adresare.
echo.
pause[/SPOILER]
Najlvin (61)|7.5.2014 02:13
Jasný, hned to tam přehodím :-)

Tímto ještě jednou děkuji všem za trpělivou pomoc s mými začátečnickými problémy. A jako odměnu tu pro vás mám celé video :-) Předem však varuji, že to není žádný profi film, ale čistě jen amatérský záznam jedné exkurze, navíc točené bez stativu za pochodu. Takže kvalita je mizerná a YouTube tomu ještě nasadilo korunu v podobě jejich deinterlace... No, to já jen, kdyby tu náhodou někoho zajímalo zákulisí pražského metra ;-)

RoPo (6061)|7.5.2014 08:40
najlvin: Pár připomínek po namátkou zhlídlých záběrech. Za pochodu se nefilmuje. Pokud chceš natočit "průvod" nebo nějakoý objekt, tak jej předběhni, stůj a švenkuj. Záběry máš bytečně dlouhé a "hledající" (kamera lítá po okolí jak pátrací balón), chybí ti tam dost střihů a prostřihů, střihy máš s prolínačkou, ale tu máš na můj vkus pro střih dlouhou. Psal jsi, že nemáš stativ, to by tak nevadilo, pak musíš mít stativ "v hlavě" a o záběrech přemýšlet (jak jsem psal výše, zbytečně nelítat s kamerou sem a tam) atd.... Snad ti tyto připomínky pomohou dělat koukatelnější záznam.
Najlvin (61)|7.5.2014 10:55
Jsem si toho všeho vědom. Jak jsem říkal, nejsem žádný expert - leda expert na dlouhé nezáživné záběry :D Ale to byl tak trochu účel - chtěl jsem zachytit celou atmosféru se vším všudy a hlavně ten komentář průvodců. Ona tam nebyla moc možnost nějak se na točení líp připravit, tak jsem to jel téměř v kuse :D

Stativ mám, ale nechce se mi s ním tahat a pořád ho rozkládat. Teď jsem koupil monopod, tak to snad příště bude trochu lepší.

Ta prolínačka se ti zdá dlouhá? Má to nějakých 10 milisekund :-)