comandos comando basico administrativos linux shell command-line utilities rtmp

comando - linux basico



RTMP: ¿Existe tal herramienta de línea de comandos de Linux? (3)

He buscado por todas partes para encontrar una utilidad de Linux que me permita descargar transmisiones rtmp. No flv video, pero transmisiones de MP3. La ubicación de las secuencias que quiero descargar están en este formato.

rtmp://live.site.com/loc/45/std_fc74a6b7f79c70a5f60.mp3

Alguien sabe de una herramienta de línea de comandos? ¿O incluso algo cercano a lo que estoy pidiendo?

No quiero aplicaciones de software completas y sería genial si funcionara en Linux a través de Shell o algo así.

Gracias a todos


Creo que el paisaje ha cambiado un poco desde el momento de algunas de las respuestas anteriores. Al menos según la página rtmp wikipedia . Parece que la especificación del protocolo rtmp está abierta para uso público. Para ese fin, puede usar 2 herramientas para lograr lo que el póster original pedía, rtmpdump y ffmpeg . Esto es lo que hice para descargar un flujo rtmp que estaba enviando un podcast de audio.

paso # 1 - descargar la corriente

rtmpdump la herramienta rtmpdump para lograr esto. Al igual que:

% rtmpdump -r rtmp://url/to/some/file.mp3 -o /path/to/file.flv RTMPDump v2.3 (c) 2010 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license: GPL Connecting ... INFO: Connected... Starting download at: 0.000 kB 28358.553 kB / 3561.61 sec Download complete

paso # 2 - convierte el archivo flv a mp3

OK, ahora tienes una copia local de la transmisión, archivo.flv . Puede usar ffmpeg para interrogar más el archivo y también para extraer solo la parte de audio.

% ffmpeg -i file.flv .... [flv @ 0x25f6670]max_analyze_duration reached [flv @ 0x25f6670]Estimating duration from bitrate, this may be inaccurate Input #0, flv, from ''file.flv'': Duration: 00:59:21.61, start: 0.000000, bitrate: 64 kb/s Stream #0.0: Audio: mp3, 44100 Hz, 1 channels, s16, 64 kb/s

Desde la salida anterior, podemos ver que el archivo.flv contiene una sola secuencia, solo audio, y está en formato mp3, y es un solo canal. Para extraerlo en un archivo mp3 adecuado, puede usar ffmpeg nuevamente:

% ffmpeg -i file.flv -vn -acodec copy file.mp3 .... [flv @ 0x22a6670]max_analyze_duration reached [flv @ 0x22a6670]Estimating duration from bitrate, this may be inaccurate Input #0, flv, from ''file.flv'': Duration: 00:59:21.61, start: 0.000000, bitrate: 64 kb/s Stream #0.0: Audio: mp3, 44100 Hz, 1 channels, s16, 64 kb/s Output #0, mp3, to ''file.mp3'': Metadata: TSSE : Lavf52.64.2 Stream #0.0: Audio: libmp3lame, 44100 Hz, 1 channels, 64 kb/s Stream mapping: Stream #0.0 -> #0.0 Press [q] to stop encoding size= 27826kB time=3561.66 bitrate= 64.0kbits/s video:0kB audio:27826kB global headers:0kB muxing overhead 0.000116%

El comando anterior copiará la transmisión de audio en un archivo, archivo.mp3 . También podrías haberlo extraído en un archivo wav como este:

ffmpeg -i file.flv -vn -acodec pcm_s16le -ar 44100 -ac 2 file.wav

Esta page fue útil para determinar cómo convertir el archivo flv a otros formatos.


Debe hacer una de las siguientes acciones, si tiene mplayer o vlc compilado con acceso RTMP.

mplayer -dumpstream rtmp://live.site.com/loc/45/std_fc74a6b7f79c70a5f60.mp3

Esto generará un ./stream.dump .

vlc -I dummy rtmp://live.site.com/loc/45/std_fc74a6b7f79c70a5f60.mp3 / --sout file/ts:output.mpg vlc://quit

Esto generará un ./output.mpg . Tendrás que demolerlo para extraer solo la transmisión de audio.


Esta pregunta es antigua pero esto puede ayudar a otros usuarios con esta duda.
Para descargar directamente, sin ninguna conversión, hay dos opciones ( el autor de ambos programas es el mismo y el comportamiento es el mismo ):

  • RTMPDump . Ejemplo: rtmpdump -r "rtmp://host.com/dir/file.flv" -o filename.flv
  • flvstreamer Ejemplo: flvstreamer -r "rtmp://od.flash.plus.es/ondemand/14314/plus/plustv/PO770632.flv" -o salida.flv

Y si desea descargar y convertir el video al mismo tiempo, la mejor manera es usar ffmpeg:

ffmpeg -i rtmp://server/live/streamName -acodec copy -vcodec copy dump.mp4