Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Corruption de fichiers compressés par bzip2

24 réponses
Avatar
Pascal
Bonjour,

J'ai un problème de corruption de fichiers après les avoir compressés
par bzip2.

Il s'agit de videos avec l'extension .mov, que j'ai compressés en bzip2
pour gagner de la place. J'ai compressé par la commande shell :

bzip2 *.mov

la décompression par double-clic ou par la commande au terminal bunzip2
me produit un fichier .mov corrompu illisible par quicktime.

Les fichiers de départ étaient volumineux : plusieurs centaines de Mo
chacun.

Y-a-t-il un moyen de corriger ce problème ?

Merci,

--
Pascal

10 réponses

1 2 3
Avatar
Pascal
In article ,
Pascal wrote:


J'ai un problème de corruption de fichiers après les avoir compressés
par bzip2.


Petites précisions après recherches :

dans le terminal un 'ls -l' sur deux fichiers .mov l'un original et
l'autre compressé/décompressé me donne ceci :

28800016 29 Nov 14:02 d1060.mov <-- original
28800016 29 Nov 14:02 d1060a.mov <-- mouliné par bzip2

apparement ces deux fichiers semblent identiques, mais si je lis les
infos de ces fichiers par l'intermédiaire du finder (fenêtre afficher
les infos) j'obtiens ceci :


28801197 octets pour le fichier original
et
28800016 octets pour le fichier passé par les phases
compression/décompression.

L'origine de mon problème c'est donc les 1181 octets manquants, que la
commande ls "oublie" également et donc je suppose que la commande bzip2
oublie à son tour. Si quelqu'un pouvait m'indiquer où trouver ces octets
manquants (partie ressource ?)

--
Pascal

Avatar
Patrick Stadelmann
In article ,
Pascal wrote:

L'origine de mon problème c'est donc les 1181 octets manquants, que la
commande ls "oublie" également et donc je suppose que la commande bzip2
oublie à son tour. Si quelqu'un pouvait m'indiquer où trouver ces octets
manquants (partie ressource ?)


C'est probablement la partie ressources en effet. Pour voir sa taille :

ls -l d1060.mov/rsrc

Patrick
--
Patrick Stadelmann

Avatar
Pascal
In article ,
Patrick Stadelmann wrote:

C'est probablement la partie ressources en effet. Pour voir sa taille :

ls -l d1060.mov/rsrc


c'est exactement cela :

1181 29 Nov 14:02 d1060.mov/rsrc

mes 1181 octets manquants.

J'en conclus que l'outil bzip2 oublie la partie ressources lors de la
compression.

Merci pour cette info Patrick (je ne connaissais pas le /rsrc après le
nom du fichier pour obtenir la partie ressource), cela me permet de
réparer mes fichiers corrompus très simplement :

cat d1060.mov/rsrc > mov.rsrc

cat mov.rsrc > dxxxx.mov/rsrc

et le fichier dxxxx.mov est réparé. Une petite moulinette en shell et je
récupère mes 400 films :-))))))))))

--
Pascal

Avatar
Patrick Stadelmann
In article ,
Pascal wrote:

J'en conclus que l'outil bzip2 oublie la partie ressources lors de la
compression.


C'est le cas de la plupart des outils en CLI.

Patrick
--
Patrick Stadelmann

Avatar
Pascal
In article ,
Patrick Stadelmann wrote:


J'en conclus que l'outil bzip2 oublie la partie ressources lors de la
compression.


C'est le cas de la plupart des outils en CLI.



Il y a un moyen de forcer ces outils à prendre en compte la partie
ressource des fichiers ?

--
Pascal


Avatar
Grrrr
On Mon, 29 Nov 2004 12:39:57 +0100, Pascal wrote:

Bonjour,

J'ai un problème de corruption de fichiers après les avoir compressés
par bzip2.

Il s'agit de videos avec l'extension .mov, que j'ai compressés en bzip2
pour gagner de la place. J'ai compressé par la commande shell :

bzip2 *.mov


C'est un peu délirant de compresser du MPEG avec un compresseur par
dictionnaire. De façon, générale, c'est délirant de compresser un
fichier déjà compressé. Si le résultat est efficace, c'est que la
première compression était mauvaise, c'est donc là qu'il faut
intervenir.
Pour rire, tu gagnes combien en % de la taille des fichiers ?

Avatar
Patrick Stadelmann
In article ,
Pascal wrote:

In article ,
Patrick Stadelmann wrote:


J'en conclus que l'outil bzip2 oublie la partie ressources lors de la
compression.


C'est le cas de la plupart des outils en CLI.



Il y a un moyen de forcer ces outils à prendre en compte la partie
ressource des fichiers ?


Pas vraiment, non. Il faudrait les réécrire pour leur ajouter le support
des parties ressources. Pour compresser des fichiers avec partie
ressource depuis le Terminal on peut utiliser ditto avec les option
-rsrc (conserve les ressources) et -k (compresse au format ZIP).

Patrick
--
Patrick Stadelmann



Avatar
Pascal
In article ,
Grrrr wrote:


C'est un peu délirant de compresser du MPEG avec un compresseur par
dictionnaire. De façon, générale, c'est délirant de compresser un
fichier déjà compressé. Si le résultat est efficace, c'est que la
première compression était mauvaise, c'est donc là qu'il faut
intervenir.
Pour rire, tu gagnes combien en % de la taille des fichiers ?


Qui a dit qu'il y avait du mpeg dans mes fichiers mov ?

Pour rire :

ls -l d2629.mov*
-rw-r--r-- 1 activper unknown 39168016 7 Oct 09:19 d2629.mov
-rw-r--r-- 1 activper unknown 13405532 7 Oct 09:19 d2629.mov.bz2

la taille des fichiers est divisée par trois. Donc je gagne environ 66%
sur la taille de mes fichiers.

--
Pascal

Avatar
Pascal
In article ,
Patrick Stadelmann wrote:

Il y a un moyen de forcer ces outils à prendre en compte la partie
ressource des fichiers ?


Pas vraiment, non. Il faudrait les réécrire pour leur ajouter le support
des parties ressources. Pour compresser des fichiers avec partie
ressource depuis le Terminal on peut utiliser ditto avec les option
-rsrc (conserve les ressources) et -k (compresse au format ZIP).


Merci pour toutes ces infos. Je vais sans doute écrire un script shell
qui me copiera la partie rsrc avant de faire la compression et qui
reconstituera le fichier avec un cat en décompression. La taille de la
partie rsrc étant négligeable par rapport à la taille des fichiers .mov
je n'ai pas besoin de la compresser.

--
Pascal


Avatar
Pascal
In article , Matt
wrote:

Cela dit, pourquoi ne pas utiliser un bon codec de compression sur la
piste vidéo (et pourquoi pas sur la piste son) ?


Parce qu'après je ne peut pas décompresser mes fichiers... Il s'agit de
fichiers video bruts destinés à être montés dans final cut pro.
La compression n'intervient qu'en fin de chaîne, juste avant l'import
dans dvd studio pro.

--
Pascal

1 2 3