Personal tools
You are here: Home Documentación Recetas Grabar radio por internet con MPlayer
Navigation
Log in


Forgot your password?
New user?
 
Document Actions

Grabar radio por internet con MPlayer

by Lorenzo Gil Sanchez last modified 29-10-2004 08:27 PM

Copyright © 10 Abril 2004 Juan Martín López (nauj27)

MPlayer es capaz de guardar un flujo de audio en formato PCM/RAW/WAV directamente usando la opción -ao pcm pero aquí veremos como grabarlo directamente en OGG. También se podría hacer lo mismo usando LAME para grabarlo en MP3. en realidad se puede aplicar para cualquier programa que desee procesar el sonido.

Lo primero es crear un archivo FIFO con el que comunicaremos los dos programas:

    nauj27:~# mkfifo /tmp/mplayer-fifo

Con esto se creará un archivo /tmp/mplayer-fifo que usaremos como salida para MPlayer y como entrada para oggenc:

    nauj27:~# mplayer -cache 8 mms://a319.l1103733391.c11037.e.lm.akamaistream.net/D/319/11037/v0001/reflector:33391 -ao pcm -aofile /tmp/mplayer-fifo

    MPlayer 1.0pre3-3.2.3 (C) 2000-2003 MPlayer Team

    CPU: Advanced Micro Devices Athlon 4 /Athlon MP/XP Palomino 1401 MHz (Family: 6, Stepping: 2)
    Detected cache-line size is 64 bytes
    CPUflags:  MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 0
    Compiled for x86 CPU with extensions: MMX MMX2 3DNow 3DNowEx SSE

    [...]
    Cache fill:  0,00% (0 bytes)    ASF file format detected.
    ============ ASF Stream group == START ===
     object size = 32
     stream count=[0x1][1]
       stream id=[0x1][1]
       max bitrate=[0x5093][20627]
    ============ ASF Stream group == END ===
    Clip info:
     name: Sonido en Directo
     author: Cadena 100
     copyright: Cadena 100
    ==========================================================================
    Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
    AUDIO: 22050 Hz, 2 ch, 16 bit (0x10), ratio: 2501->88200 (20,0 kbit)
    Selected audio codec: [ffwmav2] afm:ffmpeg (DivX audio v2 (ffmpeg))
    ==========================================================================
    Checking audio filter chain for 22050Hz/2ch/16bit -> 22050Hz/2ch/16bit...
    AF_pre: af format: 2 bps, 2 ch, 22050 hz, little endian signed int
    AF_pre: 22050Hz 2ch Signed 16-bit (Little-Endian)
    PCM: File: /tmp/mplayer-fifo (WAVE)
    PCM: Samplerate: 22050Hz Channels: Stereo Format Signed 16-bit (Little-Endian)
    PCM: Info: fastest dumping is achieved with -vc dummy -vo null
    PCM: Info: to write WAVE files use -waveheader (default); for RAW PCM -nowaveheader.

El -cache 8 es importante para que la comunicación sea más fluida desde internet. Usar un valor mayor puede causar cortes por no poder mantener el buffer lleno y un valor menor también puede provocar cortes por no tener suficientes datos para ir decodificando. Ya solo falta abrir el programa que va a procesar el sonido en otro terminal por ejemplo, de manera que los datos comiencen a fluir por la tubería:

    nauj27:~# oggenc -o blah.ogg /tmp/mplayer-fifo

    Abriendo con el módulo wav: WAV file reader
    Codificando \"/tmp/mplayer-fifo\" a
             \"blah.ogg\"
    con calidad 3,00
            [  0,1%] [quedan 33m18s ] /

Para cortar, basta con usar Control+C.


Powered by Plone CMS, the Open Source Content Management System Powered by GCubo Powered by Cicode

This site conforms to the following standards: