elcsúszik a hang

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ások

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...

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?

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 ...

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?