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

CURL, stream mp3 vers fichier existant

4 réponses
Avatar
at
Bonjour, bonsoir

Je récupère une émission de radio avec CURL dans une commande qui fini
par >> $filename

Cela crée donc un nouveau fichier à chaque fois ($filename contient la
date et l'heure).

Je souhaiterai *écraser* un fichier existant, tout en préservant la
partie existante qui sera remplacée au fur et à mesure. Imaginez un
fichier mp3 de 300 mo, je voudrais faire en sorte que le nouveau
fichier l'écrase au fil de l'écriture.

Pourquoi ? Je fais une expérience avec un lecteur multimédia qui peut
lire des mp3 sur un LAN mais est incapable de lire un flux sur le web.
Je veux pouvoir écouter des radios sur le web avec ce matériel.

J'ai donc eu l'idée de faire écrire un fichier avec CURL et de le faire
lire presque en même temps (après quelques secondes) avec le lecteur
multimédia... (pas con le mec hein)

Cela marche sauf que le lecteur s'arrête de lire car la durée
correspond à celle trouvée en début de lecture.

Je pense qu'il faut donc créer une sorte de fichier fictif qui donne
une durée du genre une heure afin de tromper le lecteur.

Voilà pour l'explication, maintenant je sèche sur la solution.

Messieurs (et mesdames ?), j'attends vos lumières. Merci!

4 réponses

Avatar
Luc.Habert.00__arjf
at :

Je souhaiterai *écraser* un fichier existant, tout en préservant la
partie existante qui sera remplacée au fur et à mesure.



| dd bs=4K conv=notrunc of="$filename"
Avatar
at
Luc Habert a exprimé avec précision :
at :

Je souhaiterai *écraser* un fichier existant, tout en préservant la
partie existante qui sera remplacée au fur et à mesure.



| dd bs=4K conv=notrunc of="$filename"



Interessant mais après un essai CURL dit:

0+0 records out
0 bytes (0 B) copied, 54.2082 s, 0.0 kB/s

Le fichier est comme bloqué.
Avatar
at
at vient de nous annoncer :
Luc Habert a exprimé avec précision :
at :

Je souhaiterai *écraser* un fichier existant, tout en préservant la partie
existante qui sera remplacée au fur et à mesure.



| dd bs=4K conv=notrunc of="$filename"



Interessant mais après un essai CURL dit:

0+0 records out
0 bytes (0 B) copied, 54.2082 s, 0.0 kB/s

Le fichier est comme bloqué.



Désolé, je me suis trompé, ça marche. Sur le coup j'avais pas pigé le
pipe entre curl et dd. Sympa comme astuce.

Merci bien.
Avatar
at
at avait prétendu :

Désolé, je me suis trompé, ça marche. Sur le coup j'avais pas pigé le pipe
entre curl et dd. Sympa comme astuce.

Merci bien.



Précision, qui n'a rien à voir avec Linux, mais si quelqu'un est tenté
de reproduire cette bidouille, je précise que le lecteur multimédia (LG
dp1b) fait un buffering de quelques MO (j'ignore combien exactement),
donc pour que l'astuce fonctionne, il faut que l'écriture coté serveur
ai dépassé cette taille. B-)


Voili.