Avidemux e ffv1rec

3 risposte [Ultimo messaggio]
Ritratto di AltairTK
AltairTK
(Junior)
Offline
Junior
Iscritto: 20/03/2007
Messaggi: 24

Salve a tutti, di solito cerco fino alla fine di risolvermi da solo i problemi, ma questa volta ho proprio bisogno di aiuto.

Sto cercando di installare l'addon di Avidemux chiamato ffv1rec per rippare video, ma non ne esco fuori;

sul wiki di avidemux dicono che dopo aver compilato il programma principale basta andare nella directory di  ffv1rec dare il make, ma la cosa evidentemente non è così facile (almeno per me).

Mi da svariati errori, a partire principalmente da file non trovati, poi una volta cambiate le dir da sorgente su dove andare a cercarli ora mi esce questo:

[altairtk@localhost ffv1rec]$ make
g++ -DMMX -I../../avidemux -I../../ -I../../avidemux/ADM_library  -O3 -Wall -DMMX -march=pentium -funroll-loops -fexpensive-optimizations -finline-functions  -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -o ffv1codec.o ffv1codec.c -c -I../../avidemux/ADM_lavcodec -I../../avidemux/ADM_lavutil
ffv1codec.c:258: warning: integer constant is too large for ‘long’ type
ffv1codec.c:469:26: warning: multi-character character constant
ffv1codec.c:470:50: warning: multi-character character constant
ffv1codec.c:471:26: warning: multi-character character constant
ffv1codec.c:472:27: warning: multi-character character constant
ffv1codec.c:473:27: warning: multi-character character constant
ffv1codec.c:474:26: warning: multi-character character constant
ffv1codec.c:475:27: warning: multi-character character constant
ffv1codec.c:476:27: warning: multi-character character constant
In file included from ../../avidemux/ADM_libraries/ffmpeg/libavcodec/../libavutil/avutil.h:88,
                 from ../../avidemux/ADM_libraries/ffmpeg/libavcodec/avcodec.h:30,
                 from ffv1codec.c:29:
../../avidemux/ADM_libraries/ffmpeg/libavcodec/../libavutil/common.h: In function ‘int32_t av_clipl_int32_c(int64_t)’:
../../avidemux/ADM_libraries/ffmpeg/libavcodec/../libavutil/common.h:168: error: ‘UINT64_C’ was not declared in this scope
ffv1codec.c: At global scope:
ffv1codec.c:49: error: ‘XVID_ENC_FRAME’ does not name a type
ffv1codec.c:50: error: ‘XVID_ENC_PARAM’ does not name a type
ffv1codec.c:51: error: ‘XVID_ENC_STATS’ does not name a type
ffv1codec.c:59: error: ‘PMV_EARLYSTOP16’ was not declared in this scope
ffv1codec.c:60: error: ‘PMV_EARLYSTOP16’ was not declared in this scope
ffv1codec.c:60: error: ‘PMV_ADVANCEDDIAMOND16’ was not declared in this scope
ffv1codec.c:61: error: ‘PMV_EARLYSTOP16’ was not declared in this scope
ffv1codec.c:61: error: ‘PMV_HALFPELREFINE16’ was not declared in this scope
ffv1codec.c:62: error: ‘PMV_EARLYSTOP16’ was not declared in this scope
ffv1codec.c:62: error: ‘PMV_HALFPELREFINE16’ was not declared in this scope
ffv1codec.c:62: error: ‘PMV_EARLYSTOP8’ was not declared in this scope
ffv1codec.c:63: error: ‘PMV_HALFPELREFINE8’ was not declared in this scope
ffv1codec.c:64: error: ‘PMV_EARLYSTOP16’ was not declared in this scope
ffv1codec.c:64: error: ‘PMV_HALFPELREFINE16’ was not declared in this scope
ffv1codec.c:64: error: ‘PMV_EARLYSTOP8’ was not declared in this scope
ffv1codec.c:65: error: ‘PMV_HALFPELREFINE8’ was not declared in this scope
ffv1codec.c:66: error: ‘PMV_EARLYSTOP16’ was not declared in this scope
ffv1codec.c:66: error: ‘PMV_HALFPELREFINE16’ was not declared in this scope
ffv1codec.c:66: error: ‘PMV_EXTSEARCH16’ was not declared in this scope
ffv1codec.c:66: error: ‘PMV_EARLYSTOP8’ was not declared in this scope
ffv1codec.c:67: error: ‘PMV_HALFPELREFINE8’ was not declared in this scope
ffv1codec.c:74: error: ‘XVID_HALFPEL’ was not declared in this scope
ffv1codec.c:75: error: ‘XVID_INTER4V’ was not declared in this scope
ffv1codec.c:75: error: ‘XVID_HALFPEL’ was not declared in this scope
ffv1codec.c:76: error: ‘XVID_INTER4V’ was not declared in this scope
ffv1codec.c:76: error: ‘XVID_HALFPEL’ was not declared in this scope
ffv1codec.c:77: error: ‘XVID_INTER4V’ was not declared in this scope
ffv1codec.c:77: error: ‘XVID_HALFPEL’ was not declared in this scope
ffv1codec.c:121: warning: deprecated conversion from string constant to ‘char*’
ffv1codec.c:121: warning: deprecated conversion from string constant to ‘char*’
ffv1codec.c:121: warning: deprecated conversion from string constant to ‘char*’
ffv1codec.c:121: warning: deprecated conversion from string constant to ‘char*’
ffv1codec.c:121: warning: deprecated conversion from string constant to ‘char*’
ffv1codec.c:121: warning: deprecated conversion from string constant to ‘char*’
ffv1codec.c:121: warning: deprecated conversion from string constant to ‘char*’
ffv1codec.c:121: warning: deprecated conversion from string constant to ‘char*’
ffv1codec.c: In function ‘int FFV1_XvidCompress(unsigned char*, unsigned char*, uint32_t*)’:
ffv1codec.c:203: error: ‘XVID_ENC_FRAME’ was not declared in this scope
ffv1codec.c:203: error: expected ‘;’ before ‘xframe’
ffv1codec.c:206: error: ‘xframe’ was not declared in this scope
ffv1codec.c:211: error: ‘XVID_H263QUANT’ was not declared in this scope
ffv1codec.c:217: error: ‘XVID_CSP_I420’ was not declared in this scope
ffv1codec.c:232: error: ‘XVID_ENC_ENCODE’ was not declared in this scope
ffv1codec.c:232: error: ‘xstats’ was not declared in this scope
ffv1codec.c:232: error: ‘xvid_encore’ was not declared in this scope
ffv1codec.c:233: error: ‘XVID_ERR_OK’ was not declared in this scope
ffv1codec.c: In function ‘int FFV1_Compress(unsigned char*, unsigned char*, uint32_t*)’:
ffv1codec.c:258: error: ‘INT64_C’ was not declared in this scope
ffv1codec.c: In function ‘int FFV1_XvidInit(v4linfo*)’:
ffv1codec.c:373: error: ‘XVID_INIT_PARAM’ was not declared in this scope
ffv1codec.c:373: error: expected ‘;’ before ‘xinit’
ffv1codec.c:375: error: ‘xinit’ was not declared in this scope
ffv1codec.c:376: error: ‘fr’ was not declared in this scope
ffv1codec.c:378: error: ‘XVID_CPU_MMX’ was not declared in this scope
ffv1codec.c:379: error: ‘xvid_init’ was not declared in this scope
ffv1codec.c:381: error: ‘xparam’ was not declared in this scope
ffv1codec.c:391: error: ‘XVID_ENC_CREATE’ was not declared in this scope
ffv1codec.c:391: error: ‘xvid_encore’ was not declared in this scope
ffv1codec.c:392: error: ‘XVID_ERR_OK’ was not declared in this scope
ffv1codec.c: In function ‘int FFV1_Init(v4linfo*)’:
ffv1codec.c:443: error: ‘huffyuv_encoder’ was not declared in this scope
ffv1codec.c:444: error: ‘ffvhuff_encoder’ was not declared in this scope
ffv1codec.c:445: error: ‘ffv1_encoder’ was not declared in this scope
ffv1codec.c:446: error: ‘mjpeg_encoder’ was not declared in this scope
ffv1codec.c:447: error: ‘mpeg4_encoder’ was not declared in this scope
ffv1codec.c:448: error: ‘mpeg1video_encoder’ was not declared in this scope
ffv1codec.c:449: error: ‘mpeg2video_encoder’ was not declared in this scope
make: *** [ffv1codec.o] Error 1
   

ora non so più come andare avanti sinceramente.

Ho provato anche versioni precedenti di Avidemux dalla 2.4 alla 2.3 fino alla vecchia 2.0 senza risultati e persino mi sono scaricato la versione trovata sul src dei repo plf.

Come informazioni posso dirvi che uso Mandriva 2010.1 col kernel 2.6.33.7-desktop-1mnb e le GCC 4.4.3.

Qualcuno di voi è riuscito a installare questo addon?

Si accettano consigli!

Grazie mille in anticipo.

 

Ritratto di lucazio
lucazio
(Geek)
Offline
Geek
Iscritto: 19/06/2007
Messaggi: 74

Ciao, ho provato e anch'io ottengo i tuoi errori.
Ma per rippare intendi acquisire da scheda tv/acquisizione? perchè il codec ffv1 su avidemux c'è ed è pesantissimo, secondo me poco utilizzabile.
Ciao

2010.1 x86 kde 4.4 kernel 2.6.33.7 mdv acer aspire 4520 | 2010.1 64 bit kde 4.4 kernel 2.6.33.7 mib intel E8400 asus hd4650 m.b. asus p5q

Ritratto di lucazio
lucazio
(Geek)
Offline
Geek
Iscritto: 19/06/2007
Messaggi: 74

Ciao, ho provato e anch'io ottengo i tuoi errori.
Ma per rippare intendi acquisire da scheda tv/acquisizione? perchè il codec ffv1 su avidemux c'è ed è pesantissimo, secondo me poco utilizzabile.
Ciao

2010.1 x86 kde 4.4 kernel 2.6.33.7 mdv acer aspire 4520 | 2010.1 64 bit kde 4.4 kernel 2.6.33.7 mib intel E8400 asus hd4650 m.b. asus p5q

Ritratto di AltairTK
AltairTK
(Junior)
Offline
Junior
Iscritto: 20/03/2007
Messaggi: 24

Grazie per la risposta.
Si intendevo acquisire. Ho usato rippare perchè era mia intenzione copiarmi delle vecchie VHS
Il problema è che con l'attuale PCTV USB2 che possiedo vedo benissimo per esempio con VLC o con TVTime, ma se tento di registrare su disco con lo stesso VLC o con Kdenlive l'audio perde sincronia fin da subito ed anche correggendo i vari "-itsoffset" "-async" ecc. del ffmpeg parte bene per poi perdersi.
Googlando, leggevo che quel piccolo programmino lanciato da riga di comando catturava a qualità buona senza perdere sincronia...
Comunque, sono riuscito a compilarlo dopo svariate alchimie sul codice sorgente (più che altro cercava file in directory sbagliate o usava una sintassi che al mio gcc non comodava) e per farlo ho dovuto mettergli dentro il file xvid.h tratto dai sorgenti degli xvidcore, ma non l'ultimo uscito che c'è anche in Mandriva, bensì quello risalente al 2003 che ho scaricato dal cvs del sito xvid; l'ultimo xvid.h è molto cambiato rispetto a quello vecchio e non esiste praticamente nessuna procedura richiamata dai sorgenti dell' ffv1rec.
Probabilmente avranno continuato a sviluppare il programma principale tralasciando l'addon, che quindi è rimasto al codice di anni fa senza nessuna correzione sulle sue dipendenze che invece si sono evolute.
Funziona... scatta, fa frame verdi e settando il codec xvid va in segmentation fault. Indi abbandono anche questa via.
Proverò a ripiegare sulla cattura video e audio ognuno per i fatti suoi e successivamente cercare di allineare il tutto con kdenlive.
Peccato, speravo in un programma che mi risparmiasse un pò di tempo.