Creo que el paisaje ha cambiado un poco desde el momento de algunas de las respuestas anteriores. Al menos según el rtmp wikipedia page. Parece que la especificación del protocolo rtmp está abierta al público. Para ello, puede usar 2 herramientas para lograr lo que el cartel original estaba pidiendo, rtmpdump
y ffmpeg
. Esto es lo que hice para descargar una secuencia de rtmp que estaba enviando un podcast de audio.
el paso # 1 - descargar la corriente
que utiliza la herramienta rtmpdump para lograr esto. De este modo:
% 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 - convertir el archivo FLV a MP3
OK, así que ahora usted tiene una copia local de la corriente, file.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
A partir del resultado anterior, podemos ver que el file.flv contiene una sola corriente, solo audio, y es en formato mp3, y es un solo canal. Para extraerlo a un archivo mp3 adecuada que se puede usar de nuevo ffmpeg
:
% 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 el flujo de audio en un archivo, file.mp3. También podría haber extraído en un archivo WAV, así:
ffmpeg -i file.flv -vn -acodec pcm_s16le -ar 44100 -ac 2 file.wav
Este page fue útil para determinar cómo convertir el archivo FLV a otros formatos.
Muy bien, gracias! He instalado mplayer pero no estoy seguro de cómo agregar o incluir compatibilidad con rtmp. ¿Hay algún comando que pueda usar para instalarlo? Estoy usando Fedora 10, yum como instalador. – Abs
Hmm, en realidad parece que mainline mplayer no tiene soporte RTMP. A menos que quiera probar parches y compilar mplayer usted mismo, sugiero usar VLC en su lugar. – ephemient