Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 06/01/2024, à 10:11

Christophe C

xvid et TV samsung

Petit partage sur la façon de lire des Xvids sur une TV samsung. Ca m'a pris un peu de temps.
J'ignore d'ailleurs si ma méthode est optimum, mais elle fonctionne smile

Samsung a supprimé le support du codec Xvid depuis quelques années. En général ce codec (un peu ancien) est utilisé dans des conteneurs .avi (ce n'est nullement une obligation).
La tendance est aujourd’hui d'utiliser d'autres codecs et d'autres conteneurs (en particulier du .mkv), mais si vous avez de vieux films, il y a des chances qu'ils soient en Xvid + avi.

La solution c'est de ré-encoder le film en MPEG-4 (ou autre chose, mais c'est ce que j'utilise).

Pour vérifier le codec :

file mon_film.avi

vous avez un résultat genre :

mon_film.avi: RIFF (little-endian) data, AVI, 720 x 300, 23.98 fps, video: XviD, audio: MPEG-1 Layer 3 (stereo, 44100 Hz)

On voit que le film est en codec vidéo Xvid et en codec son MPEG-1. Le codec son ne pose pas de problème à Samsung, le conteneur avi ne pose pas de problème à Samsung, mais le codec vidéo, si.

Changer le codec vidéo en ligne de commande :

ffmpeg -i mon_film.avi -c copy -bsf:v mpeg4_unpack_bframes -vtag FMP4 mon_film_B.avi

un nouveau film apparaît (mon_film_B.avi) et normalement il est lu par la TV Samsung. La taille du fichier reste la même. Perte de qualité pas sensible.

Sinon vous pouvez aussi passer par un lecteur de DVD ou une console de jeux branchés sur la TV. Si ce matériel tiers reconnaît le Xvid, pas besoin de conversion.

Chez moi cela marche, si ce n'est pas le cas pour certains, je ne suis pas assez compétent pour aller bien plus loin smile

Si quelqu'un a mieux, je prends aussi ...

edit : fmp4 est presque le même codec que XviD, mais il est lu sur les TV Samsung, au contraire de XviD. Le code ci-dessus passant juste d'une variante à une autre opère une transformation très rapide (quelques secondes), sans perte de qualité sensible, avec 1 taille identique (d'autres codec plus modernes sont nettement plus petits à qualité égale), 1 codec son pas modifié (MP3), 1 conteneur pas modifié (.avi).

Dernière modification par Christophe C (Le 18/02/2024, à 10:52)


BountySource - Faite un petit don, ponctuel ou récurent, pour soutenir le développement de XFCE.
Timeshift - Sécurité : pensez à paramétrer des points de restauration système.
Euclide : « Ce qui est affirmé sans preuve peut être nié sans preuve ».

Hors ligne

#2 Le 06/01/2024, à 16:42

krodelabestiole

Re : xvid et TV samsung

à noter que changer de codec est destructif : on perd systématiquement en qualité (même en augmentant la taille du fichier). donc mieux vaut garder les fichiers originaux (et effectivement xvid c'est pas fou, mieux vaut préférer h264, h265, av1 ou vp9).

d'ailleurs je te conseillerais h.264 (via l'encodeur x264) plutôt que fmp4 (du coup je pense qu'il faudra aussi changer le container : mp4 ou mkv).

En ligne

#3 Le 08/01/2024, à 12:48

Christophe C

Re : xvid et TV samsung

j'ai essayé de faire du H264 (X264), mais c'est facilement 100 ou 200 fois + long (mon script n'était peut-être pas optimisé). Ca bascule aussi le MP3 en AAC.

Et le résultat n'est pas vraiment différent en qualité d'avec la variante en FMP4(MP4), ni d'ailleurs d'avec la variante Divx d'origine. C'est peut-être très légèrement mieux qu'en FMP4, mais c'est vraiment peu sensible. En fait la variante en FMP4 ne dégrade pas vraiment la qualité en DivX.
Par contre, la taille est diminuée de 24-25%, et ça c'est cool. Mais le temps de traitement est tel que si on a pas mal de vidéos, c'est mort.

Mais peut-être que mon code n'est pas optimisé. Si quelqu'un a une commande ffmpeg optimisée en termes de qualité ET de taille ET de rapidité de traitement, je suis preneur smile.

Disons que pour l'instant le code ci-dessus est pas mal : pas de perte en taille, une perte de qualité pas vraiment visible, et une rapidité de traitement de quelques secondes.....

Conformément à tes conseils, j'ai gardé les 2 formats vidéos : l'original en DivX reste sur mon PC (qui le lit sans pb), le retraitement en MP4 est sur le DD que j'utilise sur ma LiveBox (et que lit ma TV Samsung). Comme cela je peux refaire un traitement sans nouvelle dégradation de qualité.

Dernière modification par Christophe C (Le 08/01/2024, à 12:53)


BountySource - Faite un petit don, ponctuel ou récurent, pour soutenir le développement de XFCE.
Timeshift - Sécurité : pensez à paramétrer des points de restauration système.
Euclide : « Ce qui est affirmé sans preuve peut être nié sans preuve ».

Hors ligne

#4 Le 11/02/2024, à 17:28

Christophe C

Re : xvid et TV samsung

2 tests que j'ai fait en passant du XviD vers du H264 ou du H265 :

H264
ffmpeg -i input.avi -c:v libx264 -crf 19 -preset slow -c:a aac -b:a 192k -ac 2 output.mp4 => qualité idem ; gain de place 35% ; temps de traitement = 70% de la durée du film.
Pas intéressant si on a pas de pb de place (et de CODEC), mais sinon, c'est bien (si on est pas pressé).

H265
ffmpeg -i input.avi -c:v libx265 -crf 28 -c:s copy -c:a copy output.mp4 => qualité un peu moins bonne et gain de place 77% - temps de traitement = 110% de la durée.
A réserver pour les gros problèmes de place, parce que même si c'est acceptable, on voit la perte de qualité.

-crf xx gère la qualité (donc la taille du fichier). Plus petit le nombre, meilleure la qualité. Donc on l'exemple en H265 peut être testé en passant de 28 à  19 (par exemple). Cela dépend en partie de votre sensibilité, en partie de l'écran (plus grand, il  nécessite une meilleure qualité - les défauts se voient plus).

H265
ffmpeg -i input.avi -c:v libx265 -crf 19 -c:s copy -c:a copy output.mp4 => qualité un poil moins bonne (peu sensible) et gain de place 44% - temps de traitement = 90% de la durée.


ffmpeg -i mon_film.avi -c copy -bsf:v mpeg4_unpack_bframes -vtag FMP4 mon_film_B.avi reste la solution la plus rapide pour enlever un codec XviD bloquant : moins d'une minute de conversion. Pas de gain de place, mais pas de perte de qualité.

Dernière modification par Christophe C (Le 11/02/2024, à 19:02)


BountySource - Faite un petit don, ponctuel ou récurent, pour soutenir le développement de XFCE.
Timeshift - Sécurité : pensez à paramétrer des points de restauration système.
Euclide : « Ce qui est affirmé sans preuve peut être nié sans preuve ».

Hors ligne

#5 Le 11/02/2024, à 17:42

krodelabestiole

Re : xvid et TV samsung

le h.265 (ou HEVC) est meilleur que le h.264 (ou AVC). ça veut dire qu'à débit égal (taille de fichier égale), la qualité est meilleure avec du h.265 qu'avec du h.264. (cependant ni avec l'un ni avec l'autre la qualité ne peut être la même que la vidéo qu'on compresse : on y perdra forcément. en fonction de la taille du fichier final on peut ne pas s'en rendre compte - c'est le but).
par contre h.265 est un codec relativement récent, et il demande plus de ressources aussi bien pour l'encodage que pour la lecture, donc on trouve plus d'appareils compatibles avec h.264 qu'avec h.265.

dans le mesure du possible, mieux vaut généralement privilégier h.265. après ça dépend évidemment de l'usage de chacun.

les 2 appartiennent à apple, mais sont très largement adoptés sur tout type de matériel. et x264 et x265 sont des librairies ouvertes qui nous permettent d'en profiter.
l'équivalent ouvert à h.265 est VP9.
AV1 est aussi ouvert et encore un peu au dessus, mais seul le matériel très récent le supporte (sinon c'est le CPU qui va devoir bosser dur ne serait-ce que pour le lire).

En ligne

#6 Le 11/02/2024, à 19:05

Christophe C

Re : xvid et TV samsung

En fait, avec un -crf 19, je trouve que h264 est un poil meilleurs que h265 (peu sensible, mais un peu quand même), mais la compression donne 1 taille 10% moindre avec H265.

Évidemment, cela doit dépendre aussi des autres options.

Au final je reviens toujours sur la 1er option, celle qui ne compresse rien, mais est très rapide et préserve la qualité de façon quasi parfaite. L'objectif principal restant de toute façon de dégager le XviD pour ma TV samsung.

Dernière modification par Christophe C (Le 11/02/2024, à 22:16)


BountySource - Faite un petit don, ponctuel ou récurent, pour soutenir le développement de XFCE.
Timeshift - Sécurité : pensez à paramétrer des points de restauration système.
Euclide : « Ce qui est affirmé sans preuve peut être nié sans preuve ».

Hors ligne

#7 Le 11/02/2024, à 21:42

krodelabestiole

Re : xvid et TV samsung

pour comparer deux codecs, il faut que les vidéos aient le même bitrate (la même taille de fichier).


Une minute de vidéo non compressée, en Full HD (Haute Définition), à 25 FPS, pèse près de 9 Go (gigaoctet).

https://www.24joursdeweb.fr/2022/dans-l … e-la-video

en pratique on ne travaille donc jamais avec des fichiers vidéos non compressés. même les cameras compressent à la volée, en utilisant divers codecs.

un codec n'est pas quelque chose qu'on ajoute ou retire d'une vidéo : c'est son "format" réel, plus que le conteneur qui va définir l'extension de fichier, les infos de l'entête du fichier, et certaines spécificités.


ta 1ere option est donc aussi compressée. mais avec -c copy tu conserves simplement le même codec, soit xvid. c'est pour ça que l'encodage va plus vite : ce n'en est pas un, c'est ce qu'on appelle un remuxing (un changement de conteneur).

après recherche FMP4 n'est pas un codec (c'est aussi ce qui m'a induit en erreur).
ça veut dire fragmented mp4. c'est une spécification du format MP4.


ta télé lit bien le xvid. je n'ai par contre aucune idée de pourquoi elle lit le second fichier et pas le premier (une propriété du container pas implémentée ?).
donc oui, le remuxing est ta meilleure option, puisqu'elle t'évite de perdre en qualité, et qu'elle va assurément beaucoup plus vite.
quand on a le choix ça reste par contre un codec à éviter en 2024.

En ligne

#8 Le 11/02/2024, à 22:26

Christophe C

Re : xvid et TV samsung

Et bien la doc officielle samsung indique bien que le xvid n'est plus supporté. D'ailleurs si j'essaie d'en lire 1, cela renvoi à cette doc.
Le avi, par contre, est parfaitement supporté.

Et je ne change pas le conteneur. Le traitement que je fais part d'1 avi pour arriver à 1 avi : ce n'est pas un remuxing tel que tu le définis, à savoir un changement de conteneur. Celui-ci ne bouge pas : avi.

Voila ce que donne le file d'un fichier retraité :

film.avi: RIFF (little-endian) data, AVI, 640 x 360, 25.00 fps, video: FFMpeg MPEG-4, audio: MPEG-1 Layer 3 (stereo, 48000 Hz)

Le nouveau codec vidéo est bien indiqué comme video: FFMpeg MPEG-4. Pour moi c'est donc bien un changement de codec.
Le son en MP3 et le conteneur en .avi ne sont pas touchés, par contre.

Dernière modification par Christophe C (Le 11/02/2024, à 22:28)


BountySource - Faite un petit don, ponctuel ou récurent, pour soutenir le développement de XFCE.
Timeshift - Sécurité : pensez à paramétrer des points de restauration système.
Euclide : « Ce qui est affirmé sans preuve peut être nié sans preuve ».

Hors ligne

#9 Le 11/02/2024, à 23:22

krodelabestiole

Re : xvid et TV samsung

le simple fait que l'opération soit presque aussi rapide qu'une copie de fichier montre qu'il ne s'agit pas d'un transcodage (donc pas de changement de codec).


Dans un fichier AVI, différents codecs peuvent être encapsulés, pour la vidéo : DivX, Xvid, DV, Mpeg2/4, etc., pour l'audio : AC3, mp3, PCM, etc.

https://fr.wikipedia.org/wiki/Audio_Video_Interleave


tu pourrais donner le retour d'un mediainfo du fichier avant et après stp ? (sudo apt install mediainfo si besoin, puis mediainfo fichier.avi)

Dernière modification par krodelabestiole (Le 11/02/2024, à 23:41)

En ligne

#10 Le 11/02/2024, à 23:28

krodelabestiole

Re : xvid et TV samsung

Christophe C a écrit :

ce n'est pas un remuxing tel que tu le définis, à savoir un changement de conteneur. Celui-ci ne bouge pas : avi.

tu peux remuxer d'un container au même container, pour ajouter une piste de sous-titre, ou changer un paramètre (voir ce que permet mkvtoolnix par ex.).

En ligne

#11 Le 12/02/2024, à 07:22

Christophe C

Re : xvid et TV samsung

(chris - 6.5.0-17-generic) /run/user/1000/gvfs/smb-share:server=livebox,share=tv/FILM : mediainfo FILM.avi
General
Complete name                            : FILM.avi
Format                                   : AVI
Format/Info                              : Audio Video Interleave
Format settings                          : WaveFormatEx
File size                                : 351 MiB
Duration                                 : 43 min 41 s
Overall bit rate                         : 1 122 kb/s
Frame rate                               : 25.000 FPS
Writing application                      : Lavf60.3.100

Video
ID                                       : 0
Format                                   : MPEG-4 Visual
Format profile                           : Advanced Simple@L5
Format settings                          : BVOP2
Format settings, BVOP                    : 2
Format settings, QPel                    : No
Format settings, GMC                     : No warppoints
Format settings, Matrix                  : Default (H.263)
Codec ID                                 : FMP4
Duration                                 : 43 min 41 s
Bit rate                                 : 981 kb/s
Width                                    : 640 pixels
Height                                   : 360 pixels
Display aspect ratio                     : 16:9
Frame rate                               : 25.000 FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Compression mode                         : Lossy
Bits/(Pixel*Frame)                       : 0.170
Stream size                              : 307 MiB (87%)
Writing library                          : XviD 67

Audio
ID                                       : 1
Format                                   : MPEG Audio
Format version                           : Version 1
Format profile                           : Layer 3
Format settings                          : Joint stereo / MS Stereo
Codec ID                                 : 55
Codec ID/Hint                            : MP3
Duration                                 : 43 min 41 s
Bit rate mode                            : Constant
Bit rate                                 : 128 kb/s
Channel(s)                               : 2 channels
Sampling rate                            : 48.0 kHz
Compression mode                         : Lossy
Stream size                              : 40.0 MiB (11%)
Alignment                                : Aligned on interleaves
Interleave, duration                     : 24  ms (0.60 video frame)

je note particulièrement

Format                           : MPEG-4 Visual
Format settings, Matrix           : Default (H.263)
Codec ID                                 : FMP4
Writing library                          : XviD 67

Pour moi MPEG-4 est bien un codec, mais je note qu'il utilise une librairie nommée XviD 67 ...
et par ailleur :  "Xvid (formerly "XviD") is a video codec library following the MPEG-4 video coding standard, specifically MPEG-4 Part 2 Advanced Simple Profile (ASP)"

Donc c'est la même chose, sans l'être pour la télé, tout en l'étant, mais pas pour la commande file ... pige pas bien smile

Dernière modification par Christophe C (Le 12/02/2024, à 08:55)


BountySource - Faite un petit don, ponctuel ou récurent, pour soutenir le développement de XFCE.
Timeshift - Sécurité : pensez à paramétrer des points de restauration système.
Euclide : « Ce qui est affirmé sans preuve peut être nié sans preuve ».

Hors ligne

#12 Le 12/02/2024, à 15:42

krodelabestiole

Re : xvid et TV samsung

oui c'est compliqué effectivement.

mediainfo est beaucoup plus complet et précis que file dans le domaine.


MPEG-4 est un ensemble de standards, c'est donc très fourre-tout.

La partie 2 est un codec de compression pour les signaux vidéo. L’un des nombreux profils de ce codec est l’ASP (Advanced Simple Profile) et est utilisé par des codecs tels que DivX, Xvid, Nero Digital et 3ivx et Quicktime 6.
[...]
La partie 14 spécifie le format de fichier MP4.

(MP4 donc le conteneur) autant dire que ça brouille bien les pistes !


tu pourrais aussi donner le retour de mediainfo pour le fichier xvid d'origine stp ?

En ligne

#13 Le 14/02/2024, à 18:46

Christophe C

Re : xvid et TV samsung

Voilà l'original

(chris - 6.5.0-17-generic) /media/chris/Sauvegardes/Vidéos/into the badlands : mediainfo FILM-A.avi
General
Complete name                       : FILM-A.avi
Format                                     : AVI
Format/Info                              : Audio Video Interleave
Format settings                       : BitmapInfoHeader / WaveFormatEx
File size                                  : 350 MiB
Duration                                  : 43 min 41 s
Overall bit rate                        : 1 119 kb/s
Frame rate                              : 25.000 FPS
Writing library                          : VirtualDub build 34703/release

Video
ID                                           : 0
Format                                   : MPEG-4 Visual
Format profile                        : Advanced Simple@L5
Format settings                     : BVOP2
Format settings, BVOP         : 2
Format settings, QPel           : No
Format settings, GMC           : No warppoints
Format settings, Matrix          : Default (H.263)
Muxing mode                         : Packed bitstream
Codec ID                                : XVID
Codec ID/Hint                        : XviD
Duration                                 : 43 min 41 s
Bit rate                                   : 981 kb/s
Width                                     : 640 pixels
Height                                    : 360 pixels
Display aspect ratio               : 16:9
Frame rate                             : 25.000 FPS
Color space                            : YUV
Chroma subsampling             : 4:2:0
Bit depth                                : 8 bits
Scan type                               : Progressive
Compression mode                : Lossy
Bits/(Pixel*Frame)                  : 0.170
Stream size                            : 307 MiB (88%)
Writing library                         : XviD 67

Audio
ID                                       : 1
Format                               : MPEG Audio
Format version                  : Version 1
Format profile                    : Layer 3
Format settings                  : Joint stereo / MS Stereo
Codec ID                            : 55
Codec ID/Hint                    : MP3
Duration                             : 43 min 41 s
Bit rate mode                     : Constant
Bit rate                               : 128 kb/s
Channel(s)                         : 2 channels
Sampling rate                    : 48.0 kHz
Compression mode           : Lossy
Stream size                       : 40.0 MiB (11%)
Alignment                          : Split across interleaves
Interleave, duration           : 40  ms (1.00 video frame)
Interleave, preload duration   : 500  ms

LES DIFFÉRENCES SIGNIFICATIVES :
Format settings : BitmapInfoHeader / WaveFormatEx EST DEVENU Audio Video Interleave
Writing library : VirtualDub build 34703/release EST DEVENU Lavf60.3.100
Codec ID : XVID EST DEVENU FMP4
Codec ID/Hint : XviD A DISPARU

LE SON A UN PEU BOUGE
Interleave, duration         : 40  ms (1.00 video frame) EST DEVENU 24  ms (0.60 video frame)
Interleave, preload duration : 500  ms  A DISPARU

DANS LES 2 CAS :
Format                          : MPEG-4 Visual
Format profile               : Advanced Simple@L5
Format settings            : BVOP2

Sont inchangés.

Au final je ne suis pas très avancé. Je pense que les 3 lignes importantes ce sont :
Format settings : BitmapInfoHeader / WaveFormatEx EST DEVENU Audio Video Interleave
Codec ID : XVID EST DEVENU FMP4
Codec ID/Hint : XviD A DISPARU
Et surtout : ça marche sur ma TV dans le second cas, pas dans le 1er smile

J'ai vu ton lien sur la FMP4, je comprend que c'est une autre variante du MPEG4, comme le DivX, mais quand même pas tout à fait le même codec.

Dernière modification par Christophe C (Le 15/02/2024, à 12:25)


BountySource - Faite un petit don, ponctuel ou récurent, pour soutenir le développement de XFCE.
Timeshift - Sécurité : pensez à paramétrer des points de restauration système.
Euclide : « Ce qui est affirmé sans preuve peut être nié sans preuve ».

Hors ligne

#14 Le 15/02/2024, à 16:20

Christophe C

Re : xvid et TV samsung

Edit :
De ce que je lis, MPEG-4 partie 2 intègre plusieurs sous-formats : divx, dx50, fmp4, mp4v, mpeg4, msmpeg4v1, msmpeg4v2, msmpeg4v3, et xvid.
Ce n'est pas le cas de MPEG-4 partie 10, qui ne génère que du H264.

J'ai l'impressions que les sous-parties de  MPEG-4 partie 2 sont bien des codecs légèrement différents. Mais le fait que le "fragmented MP4" se réencode aussi rapidement à partir du DivX confirme qu'il en est très très proche. Et d'ailleurs il n'y a pas de changement de taille, et la qualité est à peu près indiscernable. C'est plus un "sous-codec", ou une variation de la même norme.

Je pense que Samsung a dégagé le DivX à cause de son lien historique avec le piratage, mais est resté compatible dans son principe avec la norme MPEG-4 partie 2.

Dernière modification par Christophe C (Le 15/02/2024, à 16:20)


BountySource - Faite un petit don, ponctuel ou récurent, pour soutenir le développement de XFCE.
Timeshift - Sécurité : pensez à paramétrer des points de restauration système.
Euclide : « Ce qui est affirmé sans preuve peut être nié sans preuve ».

Hors ligne