Newsgroup: it.comp.os.linux.iniziare
Titolo: Aggiustare un file avi.

Stavo scaricando un video avi. Con wget.
Arrivato a circa met� l'ho controllato riproducendolo con
"mplayer -idx".
Ma ne vedo solamente un pezzattino e poi esce.
Di solito riesco a vedere tutto il file anche prima del
completamento del download.
C'� per caso qualche test per capire se � possibile aggiustarlo
eventualmente fosse corrotto?
Ed eventualmente come fare per renderlo leggibile al player?
Nel frattempo ho iniziato a riscaricarlo da zero. Pazienza.
Per� se mi rispondete abbastanza rapidamente forse potrei
riprendere il download del file apparentemente corrotto,
completarlo e crecare di aggiustarlo...oppure ancora meglio
cercare gi� subito di aggiustare il pezzo che ho fin'ora.
Spero d'essermi spiegato. Saluti  ;-)

 completamento del download.
non sempre la ricostruzione degli indici va a buon fine, questo pero'
accade spesso quando il file lo scaricano i p2p , "a pezzi" non contigui
Su un file scaricato serialemte in effetti pare strano...
Ti costa cos� tanto tentare di scaricarlo tutto dal vecchio download, cos
tanto per verifica?

 tanto per verifica?
In effetti, non poi tantissimo.
Per� a sto punto preferisco riscaricare da capo, sono circa 250 MB
di roba, per avere qualcosa di funzionante prima. Poi con calma
far� la verifica sul vecchio pezzo di file in modo che mi possa
servire per la prossima volta.  ;-)
Niente di pesantissimo, ma tieni conto che mi connetto in edge
via cellulare con tariffa a volume di traffico... quindi non avr�
risultati in serata...magari domani o luned�, con calma.

 anche un po' (non chiedermei inche misura) dal client che si usa,
Alcuni hanno l'opzione "Scarica prima le parti iniziali/finali del file" 
che in casi come questo, aiuta..
L'avi è un formato "contenitore", quindi è abbastanza normale non 
riuscire a riprodurlo quando incompleto.
Ciao.
-- 
*** Linux user # 198661 ---_ ICQ 33500725 ***
    ***  Home  
http://www.kailed.net
  ***
        ***  Powered by openSUSE  ***

 riuscire a riprodurlo quando incompleto.
Se lo scarichi via p2p che di solito suddividono il file in tanti
pezzetini si. MA in questo caso ho scaricato con wget
direttamente.
Ribadisco che nel 99% dei casi a me � sempre riuscito di vedere
correttamente il video anchein fase di downloading, ovviamente
fino al punto scaricato.
Anche adesso che sto riscaricando lo stesso video da zero,
posso riprodurrlo senza problemi e visto che sono arrivato
a 200 MB su 228 totali, riesco praticamente a vedermi il
video quasi fino alla fine.
Stesso video prima, sono arrivato (ahime senza controllarlo)
ad un buon 55% del download.
Secondo me durante primo download c'� stato qualche pasticcio
nel trasferimento dei vari pacchetti che ha causato la corruzione
dell'intero file.
D'altra parte wget continua a scaricare un file solo basandosi
sulla dimensione locale (parte completata) e sulla dimensione
totale del file offerto in remoto.
Sbaglio se dico che non sa "dove" mettere i vari pacchetti
trasferiti all'interno del download, ma si limita ad accodare il
nuovo pezzo dopo il precedente senza farsi tanti problemi?
Ecco, scommetterei una birra che se anche finissi il download del
video apparentemente corrotto, non otterrei nulla di
riproducibile....almeno non senza qualche work-around che non
conosco.
Vedremo domani o luned� se al banco aprir� il portafogilo il
pinguino che ha contribuito in qualche modo alla corruzione del
file o il sottoscritto che non l'ha controllato all'inizio!   ;-D
Nel frattempo avevo la curiosit� di capire cosa si pu� fare in
caso di corruzione dovuta a pasticci durante il download...
Mi viene in mente una possibilit� che non so se sia riproducibile
in pratica:
riprodurre il file dal bit "zero" fino al bit "tot" in cui
c'� il problema. E riprodurre poi il file da dopo il bit corrotto
in avanti. Dar� un'occhiata al man di wget, anche se non � detto
che ci siano effettivamente i due pezzi buoni separati da un
qualche bit corrotto.
Altre possibilit� ci sono? con che programmi?

 nuovo pezzo dopo il precedente senza farsi tanti problemi?
Sbagli. ;-)
Lo sa benissimo dove mettere i pezzi: dopo quello che ha gi�
scaricato. :-p
Wget scarica in seriale, non in parallelo, se usi -c lui usa
la richiesta di scaricare dal byte "n" in avanti, e accoda.
Non pu� fare altro.
Se il file di origine fosse cambiato, otterresti un misto di
due spezzoni non necessariamente coerenti tra di loro.
-- 
           |Save our planet!
    Ciao   |Save wildlife!
   roberto |For your E-MAIL use ONLY recycled Bytes  !!
           |roberto poggi   
rpo...@softhome.net

 Altre possibilit� ci sono? con che programmi?
Ok, il download del file apparentemente corrotto � terminato:
senza troppo stupore ho constatato che la riproduzione con
mplayer non funge.
Se ne vede un pezzettino iniziale che appare per mezzo secondo
poi esce.
Tra gli errori riportati leggo:
--------------------------------------------
[flv @ 0x8982254]Unsupported video codec (0)
[h264 @ 0x8990070]left block unavailable for requested intra4x4
mode -1 at 0 30
[h264 @ 0x8990070]error while decoding MB 0 30, bytestream (7877)
[h264 @ 0x8990070]concealing 1249 DC, 1249 AC, 1249 MV errors
A:   0.5 V:   0.5 A-V:  0.001 ct: -0.020   0/  0 ??% ??% ??,?% 0
0
Exiting... (End of file)
------------------------
In pratica la domanda resta:
In un caso come questo non resta che riscaricare il file come ho
fatto, oppure c'� il modo di riprodurre il video con qualche
workaround o aggiustando gli errori di corruzione?
Grazie in anticipo..

 Non pu� fare altro.
Ecco, s�, allora non sbagliavo...  ;-)
Diciamo che wget se ne sbatte della coerenza, non sa cosa sta
scaricando e come � strutturato il file. Per cui non sa dove
vanno messi i pezzi scaricati al fine della corretta struttura
del file. Cos� � detto un po' meglio, le virgolette usate prima
possono essere ambigue  ;-�

 Diciamo che wget se ne sbatte della coerenza,
No.
Non � che se ne sbatte, � che non la sa, e non � il suo mestiere.
Non �, come ho detto, un downloader parallelo, � sequenziale.
Sa cosa sta scaricando, e sa che � una sequenza di byte uno dopo
l'altro.
Se qualcuno gli mischia i byte, lui non pu� fare altro che fidarsi.
[aneddoto]
Tempo fa, avevo una linea talmente scarsa che non riuscivo, con wget,
a scaricare la nightly iso di una distribuzione, visto che prima che
io finissi, il team di sviluppo aggiornava il sito con la nuova iso.
[/aneddoto]


 [/aneddoto]
Povero wget..!  E povere linee scarse!
Ma senti una cosa c'� un metodo per scaricare via http in modo da
preservare la coerenza del file (leggi ogni bit al suo giusto
posto).? ?  :-?

 posto).? ?  :-?
Guarda che se nessuno ti sposta o cambia  il file sorgente, ogni
bit � sempre al suo posto.
Ma visto che ogni tanto succede, in aiuto vengono gli MD5 per
verificare che tutto sia a posto-


 verificare che tutto sia a posto-
Ecco, per� quella � una verifica a posteriori...o sbaglio?
Cio� devo comunque scaricare tutto col rischio che poi il
contenuto del file non sia fruibile.
Invece quello che chiedevo io era la possibilit� in qualche modo
di effettuare un download "parallelo" (come fa tipo bittorrent)
anche via download diretto http. Spero di essermi spiegato.
Mi ripeto: wget scarica e compone il file in locale appiccicando
ciascun bit dopo il precedente, senza sapere ne tantomeno
valutare o verificare quale sia la posizione logicamente corretta
(al fine della coerenza del file) di quel bit.
C'� qualche software che invece � in grado di scaricare via http
tenendo in considerazione la posizione corretta di ciascun bit?
Probabilmente via http non � possibile, ma non si sa mai, cos�
chiedo.

 tenendo in considerazione la posizione corretta di ciascun bit?
NO.


 stato l� e nessuno lo ha toccato. ;-)
Il file � posto su un famoso servizio di storage online.
Penso che ci possano essere anche altri inconvenienti che
influenzano la riuscita corretta del download.
Per esempio la presenza di un proxy...un po' di tempo fa avevo
avuto un problema analogo ad ora, ma avevo usato dei proxy per
scaricare...
Cio�, durante il trasferimento magari il bit pu� venire
modificato in qualche modo. magari scambiato di posto con
un'altro o roba del genere. B�.
Ora mi chiedo mplayer sarebbe in grado di riprodurre un file
partendo dal bit corrispondente al 20% del video per esempio?
Grazie mille della disponibilit� in ogni caso.

 [flv @ 0x8982254]Unsupported video codec (0)
Mmmm... ma non era un avi?

 partendo dal bit corrispondente al 20% del video per esempio?
-sb


grazie, consultando il man ho visto anche l'opzione -ss per far
partire la riproduzione dal secondo "tot".
Ma avviando con per esempio:
mplayer -ss 100 file.corrotto.avi
Non funziona.
Invece lo stesso comando funziona con la versione integra dello
stesso video. Ed effettivamente inizia a riprodurre il file dal
100-esimo secondo  :-)
Boh, da quanto capisco c'� poco da fare...
Dite che ci sono possibilit� di riparazione?


S� era un avi. � un avi. Non chiedermi perch� mplayer tenti di
utilizzare quel qualcosa che pare imparentato con "flv"...

 utilizzare quel qualcosa che pare imparentato con "flv"...
Temo che quel file sia un po' come il mio ripostiglio :D