elcsúszik a hang

 ( moho.jojo | 2008. január 12., szombat - 18:09 )

Mencoderrel szeretnék tv adást rögzíteni, de ha nem -oac copy -t adok meg akkor mindig elcsúszik a hang. ezt írja ki a mencoder ha -oac copy -t adok neki a hangra:

Opening audio decoder: [pcm] Uncompressed PCM audio decoder
AUDIO: 48000 Hz, 2 ch, s16le, 1536.0 kbit/100.00% (ratio: 192000->192000)
Selected audio codec: [pcm] afm: pcm (Uncompressed PCM)

milyen opciót használjak, hogy szinkronban maradjon a hang? a hangkártyához az snd_hda_intel modult tölti be, 00:1b.0 Audio device: Intel Corporation Unknown device 293e (rev 02)

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

pl. : -oac mp3lame -lameopts cbr:br=48

A -tv beállításaim:

-tv driver=v4l2:outfmt=i420:width=704:height=576:chanlist=europe-east:channel=26:alsa:quality=100:decimation=1:amode=0:audiorate=48000

A videora a vcodec pedig mpeg4.

Így kb. 3.52 Mbyte/perc -el tudok felvenni. nekem megfelelő minőségben és nemtúl nagy összméretben.

----------

Nem a zsömle kicsi, a pofátok nagy...

sajnos nekem így is elcsúszik a hang :-(

sőt! tovább bonyolódik ez a rejtély, ugyanis ha -oac copy val veszek fel a tv-ből, majd ezt a mencoderrel átkonvertálom -oac lavc -ovc copy -val akkor a felvett fájlból amiben tömörítetlen hang van átkonvertálás után tömörített lesz ugyan, de akkor is elcsúszik a hang. miért lehet ez?

sőt sőt! azt is kipróbáltam, hogy digiztem a tv-ből -oac copy val így tömörítetlen volt az avi-ban a hang. így szépen szinkronban is volt. utána csak a hangot kiszedtem ac3-al tömörítve egy külön fájlba. ha lejátszottam az mplayer film.avi -audiofile hang.ac3 akkor szépen lejátszotta a hang nem csúszott el. viszont, ha mencoder film.avi -audiofile hang.ac3 -oac copy -ovc copy -val összefűztem akkor megint elcsúszott a hang. totál nem értem. mi lehet a gond? lécci valaki legalább egy ötletet, egy kapcsolót.. bíztatást :-)

ha minden kötél szakad, van még olyan program ami avi -t + ac3 hangfájt tud összefűzni, úgy hogy nem encódolja újra egyiket sem, hanem csak "sima copy"-val összefűzi őket?

-autosync opciot probaltad?
sot, vannak ilyenek, hogy:
-mc 0
-noskip
Lasd: http://www.mplayerhq.hu/DOCS/HTML/en/menc-feat-dvd-mpeg4.html#menc-feat-dvd-mpeg4-av-sync

kipróbáltam, de sajna semmi változás. a -autosync opció az csak mplayer opció a mencoder nem tudja értelmezni. szóval a helyzet sajna ugyanaz. pcm hanggal minden frankó, bármilyen audió codecet használva nincs meg az a/v szinkron a videóban. bosszantó. ha külön kiteszem mp3-ba vagy ac3-ba a hangot és mplayerrel lejátszom -audiofile ként akkor úgy jó. ha összefűzöm egybe a mencoderrel akkor már nem jó.
a -mc 0 és -noskip -nek sem volt semmi hatása

hat ilyen nekem is volt. A gond az, hogy a tuner kepvaltasi frekvenciaja es az audio mintaveteli freki kicsit mas referenciabol veszi az orajelet. Ujab tv tuner kartyak, amik digitalizljak a hangot is ezt jol megcsinaljak (vagy kompenzaljak), de mivel neked kulon hangkatyaval kell felvenni elojon a problema.

amit avi-ba felveszel, abban (ezt nem neztem ugyan csak gondolom) valami pontos timestampek vannak, amivel egyutt van a hang es a video, de ha konvertalsz akkor ez a timestamp elveszik, es ugy lesz hogy 25hz a kepvaltasi frekvencia es mondjuk 48khz az audio - de mivel nem ugyanabbol a forrasbol allitjak jonnek ezek a sebesseg ertekek (a 25 hz a tv adasbol jon, a 48khz a hangkartya oszcillatorabol) ezert a hang gyorsabb/lassabb lesz mint a kep.

en egy dolgot tudtam tenni, megneztem hany darab frame van, megneztem hany byte hosszu a felvett hang, ezekbol kiszamoltam hogy a hangot mekkora mintaveteli frekvenciara kell konvertalni, hogy ugyanolyan hosszu legyen mint a video - es ezutan kiszedtem a hangot, sox-szal atkonvertalam (gyorsitottam lassitottam az elobb kiszamitott ertekkel), majd osszeraktam megint a videoval. Ezek utan mar persze mindig szinkronban lesz az a felvett anyag.

- Use the Source Luke ! -

Csak tipp: megadni a hang mintavételét a tv opcióban:
mplayer tv:// -tv audiorate=48000 ...

ezt is próbáltam.

esetleg másik programot tudna valaki ajánlani ami képes egy avi és egy hangfájl (mp3,ac3) összefűzésére? hátha az jobban muzsikál

latom egy szot nem ertettel abbol amit leirtam :) ez hardver problema, amit a felvevo program elvileg kompenzalhatna, de pl. az mplayer (se az ffmpeg, mast meg nem ismerek) nem teszi.

szerk: tehat a felvetenel van a gond (amit kezzel lehet orvosolni ahogy irtam, a hang sox-szal valo resample-ezesevel), nem utana a konverzional.

- Use the Source Luke ! -

és abban az esetben mi van amikor a hangot külön fájlból és a képet is külön fájlból akarom összefűzni? ebben az esetben köze sincs a hw-hez, ami mellesleg az előző gépemben ami egy amd athlon volt tökéletesen működött.

szerk.: nem beszélve arról, hogy ha hw hiba lenne, akkor ez miért nem jelentkezik abban az esetben amikor digitalizálok és tömörített képet + tömörítetlen hangot veszek fel. akkor fura módon megmarad a szinkron

ami avi-t a tv kartyaddal + a hangkartyaval veszel fel mplayerrel, az az avi meg jo, de ha tovabb konvertalod nem lesz jo. nem?
na ezt mondom, hogy abban az aviban mar hosszabb/rovidebb a hang mint a kep, csak abban az aviban meg vannak jo timestampek a kephez. de ha tovabb konvertalod a jo timestampeket nem tudod tovabb vinni, marad a kulonbozo hosszusagu hang+kep. a hang es a kep meg azert kulonbozo hosszusagu mert nincs szinkronban a tv orajele a hangkartya orajelevel.

ez a gond mindig jelentekzni fog, ha kulon hangkartyaval digitalizalsz, mert a tv kartyad nem tud hangot digitalizalni. az ujabb tv kartyak tudnak hangot digitalizalni, es azok szinkronizaljak a tv es a hang referencia orajelet.

talan ez mar erthetobb.

- Use the Source Luke ! -

akkor jó az avi, ha a hangot nem tömörítem, vagyis pcm ként rögzíti az aviba. ekkor jó minden. ha úgy akarok rögzíteni a tv-ből, hogy a hangra is azonnal tömörítést kérek akkor már elcsúszik. nekem az a fura, hogy a pcm-es rögzítésnél miért nem csúszik akkor el a hang?

a pcm hanggal is csak a felvett avi-ban lesz jo a szinkron, ha tovabb konvertalod mar elcsuszik, nem?

mondom, nem tudok egyszerubb megoldast mint amit leirtam, de lehet, hogy itt mas a gond (ketlem).

- Use the Source Luke ! -

most vesztettem el végképp a fonalat, ugyanis egyenesen a tunerről az alábbi hangopcióval szinkronban digitalizál, nem csúszik el a hang.

mencoder tv://E9 -oac mp3lame -lameopts mode=2:cbr:br=128:vol=0 -ovc lavc ..... -o encoded.avi