Enregistrer webradio en mp3

Résolu
Bonjour,

Je cherche une bonne formule pour enregistrer 3H de webradio sans saturer mon DD. En plus il me faudra un arrêt automatique car c'est entre Minuit et 3h J'ai opté pour le format MP3, mais je n'obtiens pas ce que je cherche.
J'ai fais un truc simple pour tester
mplayer -dumpstream http://streaming.radio.rtl.fr/rtl-1-48-192

J'obtiens un fichier stream.dump lisible seulement par mplayer. ( C'est pas top)
De plus après 15 sec d'enregistrement le fichier fait 600 Ko. C'est énorme.
Donc si vous aviez une bonne combine pour faire plus maigre.... Ce serait super.
Merci.

8 réponses

  1. Salut,
    Avec ffmpeg :
    ffmpeg -i http://streaming.radio.rtl.fr/rtl-1-48-192 test.mp3

    doc : https://trac.ffmpeg.org/wiki/Encode/MP3
    Avec sox :
    sox -t mp3 http://streaming.radio.rtl.fr/rtl-1-48-192 test.mp3

    doc : https://doc.ubuntu-fr.org/sox

    Pour réduire la taille du fichier tu peux jouer sur la fréquence échantillonnage et sur la qualité de la compression mp3.
    0
    1. Super. C'est effectivement des commandes que je ne connaissais pas. Donc je ne maitrise pas non plus.
      bitrate: 192 kb/s

      Ça me fait vite un très gros fichier.
      Je n'arrive pas à régler ce machin
      ffmpeg -qscale:a 8 -i http://streaming.radio.rtl.fr/rtl-1-48-192 test.mp3
      Error opening input files: Invalid argument


      ffmpeg -i http://streaming.radio.rtl.fr/rtl-1-48-192 test.mp3 -q:a 8
      Trailing options were found on the commandline.
      Input #0, mp3, from 'http://streaming.radio.rtl.fr/rtl-1-48-192':
      Metadata:
      icy-br : 192
      icy-description : RTL [MP3 192]
      icy-name : RTL [MP3 192]
      icy-pub : 0
      icy-url : https://www.rtl.fr/
      StreamTitle :
      Duration: N/A, start: 0.000000, bitrate: 192 kb/s
      Stream #0:0: Audio: mp3, 48000 Hz, stereo, s16p, 192 kb/s


      Je dois merd.... quelque part.

      Et pour faire simple. Est il possible que ça s'arrete tout seul 3 heures après ?
      Genre
      sleep 3h 
      shutdown

      Chercheur en améliorations.

      [url]
      0
      1. Je commence à faire mieux. Voici mon script.
        #! /bin/sh

        # set -x
        destination="/run/media/thierry/RTL/RTL.mp3";

        #----------------------------------------------------------------------------

        ffmpeg -i http://streaming.radio.rtl.fr/rtl-1-48-192 ${destination} &
        sleep 3
        pid=$(pidof ffmpeg);
        kill $pid;
        exit 0;


        Ok j'ai mis 3 ", mais c'est juste pour l'essai
        0
        1. Contributeur
          Salut,

          timeout 10800 ffmpeg -i http://streaming.radio.rtl.fr/rtl-1-48-192 /run/media/thierry/RTL/RTL.mp3


          ;-)
          0
        2. @zipe31Effectivement plus court que ça tu meurs. Merci à tous. Que c'est beau le partage du savoir.... C'est la magie linuxienne. Bonne soirée.
          0
        3. Le 1er essais à failli bien fonctionné. En fait ça a marché 20 Minute puis le PC s'est mis en veille, le DD s'est arrêté, et tout le monde s'est endormi. Le scrypt a fait de même. Il s'est arrêté. Rien n'existe sur google en scrypt bash pour empêcher cet état... Est ce gérable par le scrypt lui-même ou doit on configurer le bureau à part pour empêcher la gestion de l'alimentation?
          0
        4. Contributeur
          @thierryR51Forcément, si le système se met en veille en arrêtant le HD, ça ne va pas le faire ;-\

          Le plus simple me paraît d'empêcher le système de se mettre en veille depuis ton interface graphique.
          0
      2. Merci zipe31 Je comprends qu'un script n'a pas la capacité à invalider l’économie d’énergie.
        Bonne soirée.
        0
        1. Je reprends le sujet car j'essaie ce script sur un raspberry. Cependant mon raspi ne connait pas ffmpeg.( Je n'ai même pas pu le compiler) Peut-on remplacer cette commande par un wget ? ( ou autre chose). Merci.
          J'ai fait le test.
           timeout 6 wget -O test.mp3 http://streaming.radio.rtl.fr/rtl-1-48-192
          le fichier test.mp3 est créé mais vu la grosseur du fichier je dirais que c'est du wav.

          Chercheur en améliorations.

          [url]
          0
          1. Contributeur
            Salut,

            Installe libav-tools à la place.
            0
        2. Salut Zip31. Voila ce que je trouve:
          timeout 6 avconv -i http://streaming.radio.rtl.fr/rtl-1-48-192 -y test3
          avconv version 11.9-6:11.9-1~deb8u1+rpi1, Copyright (c) 2000-2017 the Libav developers
          built on Apr 26 2017 06:57:28 with gcc 4.9.2 (Raspbian 4.9.2-10)
          [mp3 @ 0xe6b200] max_analyze_duration 5000000 reached
          [mp3 @ 0xe6b200] Estimating duration from bitrate, this may be inaccurate
          Guessed Channel Layout for Input Stream #0.0 : stereo
          Input #0, mp3, from 'http://streaming.radio.rtl.fr/rtl-1-48-192':
          Metadata:
          icy-br : 192
          icy-description : RTL [MP3 192]
          icy-name : RTL [MP3 192]
          icy-pub : 0
          icy-url : https://www.rtl.fr/
          StreamTitle :
          Duration: N/A, start: 0.000000, bitrate: 192 kb/s
          Stream #0.0: Audio: mp3, 48000 Hz, 2 channels, s16p, 192 kb/s
          Unable to find a suitable output format for 'test3'

          J'ai essayé sans le -y mais c'est pareil.
          J'ai testé aussi:
          timeout 6 libav-tools -i http://streaming.radio.rtl.fr/rtl-1-48-192 /media/test3
          timeout: failed to run command 'libav-tools': No such file or directory


          Je sens que je ne suis pas doué, mais je suis sur que mes erreurs vont en aider bien d'autres....
          0
          1. Contributeur
            $ avconv -i http://streaming.radio.rtl.fr/rtl-1-48-192 -c copy test.mp3
            avconv version 11.9-6:11.9-1~deb8u1+rpi1, Copyright (c) 2000-2017 the Libav developers
            built on Apr 26 2017 06:57:28 with gcc 4.9.2 (Raspbian 4.9.2-10)
            [mp3 @ 0xc93200] max_analyze_duration 5000000 reached
            [mp3 @ 0xc93200] Estimating duration from bitrate, this may be inaccurate
            Guessed Channel Layout for Input Stream #0.0 : stereo
            Input #0, mp3, from 'http://streaming.radio.rtl.fr/rtl-1-48-192':
            Metadata:
            icy-br : 192
            icy-description : RTL [MP3 192]
            icy-name : RTL [MP3 192]
            icy-pub : 0
            icy-url : https://www.rtl.fr/
            StreamTitle :
            Duration: N/A, start: 0.000000, bitrate: 192 kb/s
            Stream #0.0: Audio: mp3, 48000 Hz, 2 channels, s16p, 192 kb/s
            Output #0, mp3, to 'test.mp3':
            Metadata:
            icy-br : 192
            icy-description : RTL [MP3 192]
            icy-name : RTL [MP3 192]
            icy-pub : 0
            icy-url : https://www.rtl.fr/
            StreamTitle :
            TSSE : Lavf56.1.0
            Stream #0.0: Audio: libmp3lame, 48000 Hz, stereo, 192 kb/s
            Stream mapping:
            Stream #0:0 -> #0:0 (copy)
            Press ctrl-c to stop encoding
            ^Csize= 2000kB time=85.27 bitrate= 192.1kbits/s
            video:0kB audio:1999kB other streams:0kB global headers:0kB muxing overhead: 0.038445%
            Received signal 2: terminating.

            $ ls -lh
            total 2,1M
            -rwx------ 1 pi pi 65M juin 3 15:05 pulse-shm-2754837326
            -rw-r--r-- 1 pi pi 2,0M juil. 1 19:32 test.mp3
            0
        3. J'ai trouvé... Il manquait l'extension .mp3 .
          Merci zip
          0
          1. Je n'ai pas mis -c copy et je n'ai qu'un fichier.....
            0