Forum : 3 - Forum dédié à Ardour

Ardour me tronque des pistes

piratebab utilisateur non connecté
Bonjour Ardour ( 6.9.0~ds0 "After Bach" rev 6.9.0~ds0-2 Intel 64 bits) me joue des tours.
J'exporte mon mix en mp3 et Flac. Audacious me confirme que les 2 fichiers ont une durée de 7:50 mn (et il y a bien du son jusqu'au bout).
J'ouvre une nouvelle session Ardour, crée une piste, et fait un glisser-déposer du fichier dans la piste;
Le fichier MP3 fait bien 7:50 mn, mais le fichier flac est tronqué à 6:14 mn!
J'ai vérifié, il n'y a rien de caché au bout!
Y aurait il une limitation sur les fichiers flac ? Je n'ai rien trouvé dans la doc ARDOUR.

piratebab utilisateur non connecté
J'ai refait la manip avec un autre fichier flac, il est lui aussi tronqué à 6:14 mn

Geis007 utilisateur non connecté France
Je ne connais pas Ardour (alors pourquoi je la ramène !?!?) mais n'y a-t-il pas un paramètre "longueur totale du morceau" quelque part qui serait réglé sur 6:14 ? Il y a un truc comme ça sur Rosegarden, et je me suis séjà fait avoir !

Euh... En relisant ton post... L'import d'un mp3 dépasse les 6:14 ?

piratebab utilisateur non connecté
Merci pour ta suggestion, je n'ai pas trouvé de paramètre qui limiterai la durée d'un fichier flac.
effectivement, le même mix en mp3 se charge sans problème (autre que la perte de qualité )

piratebab utilisateur non connecté
Audacity me coupe aussi le fichier flac à 6:14 mn !
J'ai du coup fait d'autres tests avec d'autres logiciels
celluloid: OK
SMplayer: OK
VLC: OK

Il semblerai donc que ce soit les logiciels qui transforment le fichier flac en un format natif (à priori wav) qui posent problème.
Ils utilisent peut être une librairie commune, je vais creuser cette piste

piratebab utilisateur non connecté
voila maintenant qu'ardour me tronque un autre flac à 4:10.
Et audacity me le tronque aussi à 4:10.
Il y a un lien entre les 2 logiciels que je n'ai pas encore trouvé

Geis007 utilisateur non connecté France
Sans doute une bibliothèque commune à audacity et ardour ! Peut-être un bug dans cette bibliothèque... ou dans le logiciel qui a encodé le flac...
Tu peux toujours convertir tes flac en... wav ? avec VLC ou mencoder (mplayer), voire tester avec sox.

farvardin utilisateur non connecté
quand tu exportes tu peux choisir la plage, qui est matérialisée par divers types de repères (il y a plusieurs plages possibles, par exemple "début / fin", "boucle 1" etc).
Déplace les curseurs pour mettre à la fin de tes pistes.

https://manual.ardour.org/exporting/export-dialog/

piratebab utilisateur non connecté
Salut farvadin, ça je maîtrise! Les fichiers sont parfaitement lus par audacious ou n'importe quel lecteur audio.
Je pourrais reprendre mes mix et les exporter en wav, ou tenter de les importer en natif dans ardour (j'ai vu que c'était possible), mais j'aimerai comprendre ce qui se passe.
J'exporte toujours mes mix en plusieurs formats, mais je trouve le flac bien pratique.
VLC les ouvre correctement, mais il utilise ses propres codecs.

piratebab utilisateur non connecté
Je continu mes recherches.
D'prés ce que j'ai compris , ardour utilise libflac. J'ai la version 1.3.4-2 d'installée sur ma debian testing

j'ai fait qualues tests avec la commande
flac
, avec les options -t test) et -a (analyse).
J'obtient
*** Got error code 3:FLAC__STREAM_DECODER_ERROR_STATUS_UNPARSEABLE_STREAM
*** Got error code 0:FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC

Je regarde avec
metaflac --show-vendor-tag
qui me confirme que ces fichiers exportés depuis ardour utilisent
reference libFLAC 1.3.4 20220220

petite recherche sur les rapports de bug debian, m'amène à
bug=697859 qui me semble proche de mon problème.

Trouvé un post sur le bugtracker ardour
We analyzed the problem in flac and I'm testing a fix/workaround.

When seeking in a file with variable length compression, it just has to seek to a "random" location, and read until it looks like a new frame is starting. The data in the frame will help to bisect for the right location. Flac doesn't use any kind of escaping of the data, so data *can* look like a new frame is starting ... but with "wrong" data that will mislead the bisection. That's what happened in this case. The problem can thus happen in well-formed - but unfortunate files. There is no corruption involved.

Flac could however do much more to see if it actually is a valid frame start - such as checking the crc. Doing that will mitigate the problem even more.

Seeking is thus expensive and risky. It might thus be a bit unfortunate that Ardour tend to do a lot of seeks in small chunks of 8k - for example when building peak files. A chunk size of something like 1 MB will have much less overhead and shouldn't be a problem.

Ardour could perhaps also handle this failure mode better, but that should mainly be fixed in libsndfile.

Anyway, this bug report can be closed. 

The problem is in flac libs - not in Ardour.


A suivre

Loki Harfagr utilisateur non connecté
Dans une console vérifie sur des fichiers flac causant ces soucis avec ces deux outils, rien de bouleversant mais ça pourrait donner une piste de compréhension smile
:-)

soxi FlacQuiFaitLaTronque.flac

sndfile-info FlacQuiFaitLaTronque


éventuellement refais les mêmes tests avec des flac qui n'ont pas de troncature histoire de comparer si un indice supplémentaire apparaitrait biggrin

piratebab utilisateur non connecté
merci pour ces idées
soxi et sndfile-info trouvent les bonnes infos, dont la durée.

avec certains fichiers, flac me sort une erreur de MD5.
Je rappelle que tout mes fichiers flac sont des exports d'ardour.