InglésFrancésEspañol

icono de página de OnWorks

protocolos ffmpeg: en línea en la nube

Ejecute los protocolos ffmpeg en el proveedor de alojamiento gratuito de OnWorks sobre Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS

Este es el comando ffmpeg-Protocols que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


protocolos ffmpeg - protocolos FFmpeg

DESCRIPCIÓN


Este documento describe los protocolos de entrada y salida proporcionados por libavformat
biblioteca.

PROTOCOLOS


Los protocolos son elementos configurados en FFmpeg que permiten el acceso a los recursos que requieren
protocolos específicos.

Cuando configura su compilación FFmpeg, todos los protocolos compatibles están habilitados de forma predeterminada.
Puede listar todos los disponibles usando la opción de configuración "--list-protocol".

Puede deshabilitar todos los protocolos usando la opción de configuración "--disable-Protocols", y
habilitar selectivamente un protocolo usando la opción "--enable-protocol =PROTOCOLO", o tu puedes
deshabilitar un protocolo en particular usando la opción "--disable-protocol =PROTOCOLO".

La opción "-protocols" de las herramientas ff * mostrará la lista de protocolos compatibles.

A continuación se incluye una descripción de los protocolos actualmente disponibles.

Asincrónico
Envoltura de llenado de datos asincrónicos para el flujo de entrada.

Complete los datos en un subproceso en segundo plano, para desacoplar la operación de E / S del subproceso demux.

asincrónico:
asincrónico:http://host/resource
async: cache:http://host/resource

bluray
Leer lista de reproducción BluRay.

Las opciones aceptadas son:

ángulo
Ángulo de BluRay

capítulo
Iniciar capítulo (1 ... N)

lista de reproducción
Lista de reproducción para leer (BDMV / PLAYLIST / ?????. Mpls)

Ejemplos:

Lea la lista de reproducción más larga de BluRay montada en / mnt / bluray:

bluray: / mnt / bluray

Lea el ángulo 2 de la lista de reproducción 4 desde BluRay montado en / mnt / bluray, comience desde el capítulo 2:

-lista de reproducción 4 -angle 2 -capítulo 2 bluray: / mnt / bluray

cache
Envoltorio de almacenamiento en caché para el flujo de entrada.

Almacene en caché el flujo de entrada en un archivo temporal. Aporta capacidad de búsqueda para transmisiones en vivo.

cache:

concat
Protocolo de concatenación física.

Lea y busque muchos recursos en secuencia como si fueran un recurso único.

Una URL aceptada por este protocolo tiene la sintaxis:

concat: | | ... |

donde URL1, URL2, ..., URLN son las URL del recurso que se va a concatenar, cada una
posiblemente especificando un protocolo distinto.

Por ejemplo, para leer una secuencia de archivos. split1.mpeg, split2.mpeg, split3.mpeg con ffplay
usa el comando:

ffplay concat: split1.mpeg \ | split2.mpeg \ | split3.mpeg

Tenga en cuenta que es posible que deba escapar el carácter "|" que es especial para muchas conchas.

cripto
Protocolo de lectura de flujo cifrado con AES.

Las opciones aceptadas son:

clave Establezca el bloque binario de clave de descifrado AES a partir de una representación hexadecimal dada.

iv Establezca el bloque binario del vector de inicialización de descifrado AES a partir del hexadecimal dado
representación.

Formatos de URL aceptados:

cripto:
cripto +

datos
Datos en línea en el URI. Verhttp://en.wikipedia.org/wiki/Data_URI_scheme>.

Por ejemplo, para convertir un archivo GIF dado en línea con ffmpeg:

ffmpeg -i "data:image/gif;base64,R0lGODdhCAAIAMIEAAAAAAAA//8AAP//AP///////////////ywAAAAACAAIAAADF0gEDLojDgdGiJdJqUX02iB4E8Q9jUMkADs=" smiley.png

presentar
Protocolo de acceso a archivos.

Leer o escribir en un archivo.

La URL de un archivo puede tener la forma:

Archivo:

donde nombre de archivo es la ruta del archivo a leer.

Se asumirá que una URL que no tiene un prefijo de protocolo es una URL de archivo. Dependiendo de
la compilación, una URL que parece una ruta de Windows con la letra de la unidad al principio
también se asumirá que es una URL de archivo (generalmente no es el caso en las compilaciones de tipo Unix
sistemas).

Por ejemplo, para leer de un archivo entrada.mpeg con ffmpeg usa el comando:

ffmpeg -i archivo: input.mpeg output.mpeg

Este protocolo acepta las siguientes opciones:

truncar
Truncar archivos existentes al escribir, si se establece en 1. Un valor de 0 evita que se trunquen.
El valor predeterminado es 1.

tamaño de bloque
Establezca el tamaño máximo de bloque de la operación de E / S, en bytes. El valor predeterminado es "INT_MAX", que
resulta en no limitar el tamaño de bloque solicitado. Establecer este valor razonablemente bajo
mejora el tiempo de reacción de la solicitud de terminación del usuario, lo cual es valioso para archivos en lento
medio.

ftp
FTP (Protocolo de transferencia de archivos).

Leer o escribir en recursos remotos mediante el protocolo FTP.

Se requiere la siguiente sintaxis.

ftp: // [usuario [: contraseña] @] servidor [: puerto] /ruta/a/remote/resource.mpeg

Este protocolo acepta las siguientes opciones.

tiempo de espera
Establecer el tiempo de espera en microsegundos de las operaciones de E / S de socket utilizadas por el nivel bajo subyacente
operación. De forma predeterminada, se establece en -1, lo que significa que no se especifica el tiempo de espera.

ftp-contraseña-anónima
Contraseña utilizada al iniciar sesión como usuario anónimo. Normalmente, una dirección de correo electrónico debe ser
usado.

ftp-escritura-buscable
Controle la capacidad de búsqueda de la conexión durante la codificación. Si se establece en 1, el recurso es
se supone que se puede buscar, si se establece en 0, se supone que no se puede buscar. Valor por defecto
es 0.

NOTA: El protocolo se puede utilizar como salida, pero se recomienda no hacerlo, a menos que sea especial.
se tiene cuidado (pruebas, configuración personalizada del servidor, etc.). Se comportan diferentes servidores FTP
de forma diferente durante la operación de búsqueda. Las herramientas ff * pueden producir contenido incompleto debido a
limitaciones del servidor.

ardilla de tierra
Protocolo Gopher.

hls
Lea el flujo segmentado compatible con Apple HTTP Live Streaming como uno uniforme. El M3U8
Las listas de reproducción que describen los segmentos pueden ser recursos HTTP remotos o archivos locales, a los que se accede
utilizando el protocolo de archivo estándar. El protocolo anidado se declara especificando "+proto"
después del nombre del esquema de URI hls, donde proto es "archivo" o "http".

hls +http://host/path/to/remote/resource.m3u8
hls + archivo: //ruta/a/local/resource.m3u8

Se desaconseja el uso de este protocolo: el demuxer hls debería funcionar igual de bien (si no es así,
informe los problemas) y es más completo. Para usar el demuxer hls en su lugar, simplemente
use las URL directas a los archivos m3u8.

http
HTTP (Protocolo de transferencia de hipertexto).

Este protocolo acepta las siguientes opciones:

buscable
Controle la buscabilidad de la conexión. Si se establece en 1, se supone que el recurso es
buscable, si se establece en 0 se supone que no se puede buscar, si se establece en -1 intentará
autodetectar si se puede buscar. El valor predeterminado es -1.

publicación_cortada
Si se establece en 1, use la codificación de transferencia fragmentada para las publicaciones, el valor predeterminado es 1.

tipo de contenido
Establezca un tipo de contenido específico para los mensajes POST.

cabeceras
Establecer encabezados HTTP personalizados, puede anular los encabezados predeterminados integrados. El valor debe ser un
cadena que codifica los encabezados.

solicitudes_múltiples
Utilice conexiones persistentes si se establece en 1, el valor predeterminado es 0.

post_datos
Establecer datos de publicación HTTP personalizados.

user-agent
user_agent
Reemplazar el encabezado User-Agent. Si no se especifica, el protocolo utilizará una cadena
describiendo la compilación libavformat. ("Lavf / ")

tiempo de espera
Establecer el tiempo de espera en microsegundos de las operaciones de E / S de socket utilizadas por el nivel bajo subyacente
operación. De forma predeterminada, se establece en -1, lo que significa que no se especifica el tiempo de espera.

tipo de Mimica
Exporta el tipo MIME.

helado Si se establece en 1, solicite metadatos ICY (SHOUTcast) del servidor. Si el servidor admite
esto, los metadatos deben ser recuperados por la aplicación leyendo el
icy_metadata_headers y paquete_metadatos_hielo opciones. El valor predeterminado es 1.

icy_metadata_headers
Si el servidor admite metadatos ICY, este contiene la respuesta HTTP específica de ICY
encabezados, separados por caracteres de nueva línea.

paquete_metadatos_hielo
Si el servidor admite metadatos ICY y helado se estableció en 1, esto contiene el último no
paquete de metadatos vacío enviado por el servidor. Debe ser encuestado a intervalos regulares por
aplicaciones interesadas en actualizaciones de metadatos mid-stream.

galletas
Configure las cookies que se enviarán en futuras solicitudes. El formato de cada cookie es el mismo
como el valor de un campo de respuesta HTTP Set-Cookie. Varias cookies se pueden delimitar por
un carácter de nueva línea.

compensar
Establece el desplazamiento de bytes inicial.

desplazamiento_final
Intente limitar la solicitud a los bytes que preceden a este desplazamiento.

Método
Cuando se usa como una opción de cliente, establece el método HTTP para la solicitud.

Cuando se utiliza como una opción de servidor, establece el método HTTP que se espera de
los clientes). Si el método HTTP esperado y recibido no coinciden con el cliente
recibirá una respuesta de solicitud incorrecta. Cuando no se configura, el método HTTP no se comprueba
ahora. Esto será reemplazado por la autodetección en el futuro.

escuchan
Si se establece en 1, habilita el servidor HTTP experimental. Esto se puede usar para enviar datos cuando se usa
como una opción de salida, o leer datos de un cliente con HTTP POST cuando se usa como entrada
opción. Si se establece en 2, habilita el servidor HTTP experimental de varios clientes. Esto no es todavia
implementado en ffmpeg.c o ffserver.cy por lo tanto no debe usarse como una línea de comando
.

# Lado del servidor (envío):
ffmpeg -i algún archivo.ogg -c copiar -escuchar 1 -f ogg http: // :

# Lado del cliente (recepción):
ffmpeg -i http: // : -c copiar algún archivo.ogg

# El cliente también se puede hacer con wget:
wget http: // : -O somefile.ogg

# Lado del servidor (recepción):
ffmpeg -escucha 1 -i http: // : -c copiar algún archivo.ogg

# Lado del cliente (envío):
ffmpeg -i somefile.ogg -chunked_post 0 -c copy -f ogg http: // :

# El cliente también se puede hacer con wget:
wget --post-file = somefile.ogg http: // :

HTTP Cookies

Algunas solicitudes HTTP serán denegadas a menos que se pasen valores de cookies con la solicitud. El
galletas La opción permite especificar estas cookies. Como mínimo, cada cookie debe
especifique un valor junto con una ruta y un dominio. Solicitudes HTTP que coinciden tanto con el dominio
y la ruta incluirá automáticamente el valor de la cookie en el campo de encabezado de la cookie HTTP.
Se pueden delimitar varias cookies mediante una nueva línea.

La sintaxis requerida para reproducir una secuencia que especifica una cookie es:

ffplay -cookies "nlqptid = nltid = tsn; ruta = /; dominio = somedomain.com;" http://somedomain.com/somestream.m3u8

Icecast
Protocolo Icecast (transmisión a servidores Icecast)

Este protocolo acepta las siguientes opciones:

género_hielo
Establece el género de la transmisión.

hielo_nombre
Establece el nombre de la transmisión.

descripción_de_hielo
Establezca la descripción de la transmisión.

hielo_url
Configure la URL del sitio web de la transmisión.

hielo_publico
Establezca si la transmisión debe ser pública. El valor predeterminado es 0 (no público).

user_agent
Reemplazar el encabezado User-Agent. Si no se especifica una cadena de la forma "Lavf / "
se utilizará.

la contraseña
Establece la contraseña del punto de montaje de Icecast.

tipo de contenido
Establezca el tipo de contenido de la transmisión. Esto debe establecerse si es diferente de audio / mpeg.

legado_icecast
Esto habilita el soporte para las versiones de Icecast <2.4.0, que no son compatibles con HTTP PUT
método pero el método SOURCE.

icecast: // [ [: ] @] : /

mmst
Protocolo MMS (Microsoft Media Server) sobre TCP.

mmsh
Protocolo MMS (Microsoft Media Server) sobre HTTP.

La sintaxis requerida es:

mmsh: // [: ] [/ ] [/ ]

md5
Protocolo de salida MD5.

Calcula el hash MD5 de los datos que se escribirán y, al cerrar, lo escribe en el
salida designada o stdout si no se especifica ninguna. Se puede utilizar para probar muxers sin
escribir un archivo real.

A continuación se presentan algunos ejemplos.

# Escriba el hash MD5 del archivo AVI codificado en el archivo output.avi.md5.
ffmpeg -i input.flv -f avi -y md5: output.avi.md5

# Escriba el hash MD5 del archivo AVI codificado en stdout.
ffmpeg -i entrada.flv -f avi -y md5:

Tenga en cuenta que algunos formatos (normalmente MOV) requieren que se pueda buscar el protocolo de salida, por lo que
fallará con el protocolo de salida MD5.

tubo
Protocolo de acceso a tuberías de UNIX.

Leer y escribir desde tuberías UNIX.

La sintaxis aceptada es:

tubo:[ ]

número es el número correspondiente al descriptor de archivo de la tubería (por ejemplo, 0 para stdin, 1
para stdout, 2 para stderr). Si número no está especificado, por defecto el archivo stdout
El descriptor se utilizará para escribir, stdin para leer.

Por ejemplo, para leer de stdin con ffmpeg:

cat test.wav | ffmpeg -i tubería: 0
# ... esto es lo mismo que ...
cat test.wav | ffmpeg -i tubería:

Para escribir en stdout con ffmpeg:

ffmpeg -i test.wav -f avi pipe: 1 | gato> test.avi
# ... esto es lo mismo que ...
ffmpeg -i test.wav -f avi pipe: | gato> test.avi

Este protocolo acepta las siguientes opciones:

tamaño de bloque
Establezca el tamaño máximo de bloque de la operación de E / S, en bytes. El valor predeterminado es "INT_MAX", que
resulta en no limitar el tamaño de bloque solicitado. Establecer este valor razonablemente bajo
mejora el tiempo de reacción de la solicitud de terminación del usuario, lo cual es valioso si los datos
la transmisión es lenta.

Tenga en cuenta que algunos formatos (normalmente MOV), requieren que el protocolo de salida sea buscable, por lo que
fallarán con el protocolo de salida de tubería.

rtmp
Protocolo de mensajería en tiempo real.

El Protocolo de mensajería en tiempo real (RTMP) se utiliza para transmitir contenido multimedia a través de un
Red TCP / IP.

La sintaxis requerida es:

rtmp: // [ : @] [: ] [/ ] [/ ] [/ ]

Los parámetros aceptados son:

nombre de usuario
Un nombre de usuario opcional (principalmente para publicar).

la contraseña
Una contraseña opcional (principalmente para publicar).

servidor
La dirección del servidor RTMP.

Puerto
El número de puerto TCP que se utilizará (por defecto es 1935).

applicación Es el nombre de la aplicación para acceder. Suele corresponder al camino donde
la aplicación está instalada en el servidor RTMP (p. ej. /Bajo demanda/, / flash / en vivo /, Etc).
También puede anular el valor analizado del URI a través de la opción "rtmp_app".

camino de juego
Es la ruta o nombre del recurso a jugar con referencia a la aplicación.
especificado en applicación, puede tener el prefijo "mp4:". Puede anular el valor analizado de
el URI a través de la opción "rtmp_playpath" también.

escuchan
Actúa como servidor, escuchando una conexión entrante.

tiempo de espera
Tiempo máximo de espera de la conexión entrante. Implica escuchar.

Además, los siguientes parámetros se pueden configurar a través de opciones de línea de comando (o en código a través de
"AVOption" s):

rtmp_aplicación
Nombre de la aplicación para conectarse al servidor RTMP. Esta opción anula el parámetro
especificado en el URI.

rtmp_búfer
Establezca el tiempo de búfer del cliente en milisegundos. El valor predeterminado es 3000.

rtmp_conn
Parámetros de conexión AMF arbitrarios adicionales, analizados a partir de una cadena, por ejemplo, como "B: 1
S: authMe O: 1 NN: código: 1.23 NS: bandera: ok O: 0 ". Cada valor tiene un prefijo
carácter que denota el tipo, B para booleano, N para número, S para cadena, O para objeto,
o Z para nulo, seguido de dos puntos. Para los booleanos, los datos deben ser 0 o 1 para
FALSO o VERDADERO, respectivamente. Del mismo modo, para los objetos, los datos deben ser 0 o 1 para finalizar o
comenzar un objeto, respectivamente. Los elementos de datos en subobjetos se pueden nombrar, prefijando el
escriba con 'N' y especifique el nombre antes del valor (es decir, "NB: myFlag: 1"). Esta
La opción se puede utilizar varias veces para construir secuencias AMF arbitrarias.

rtmp_flashver
Versión del complemento Flash utilizado para ejecutar el reproductor SWF. El valor predeterminado es LNX 9,0,124,2.
(Al publicar, el valor predeterminado es FMLE / 3.0 (compatible; ).)

rtmp_flush_interval
Número de paquetes vaciados en la misma solicitud (solo RTMPT). El valor predeterminado es 10.

rtmp_live
Especifique que los medios son una transmisión en vivo. No se permite reanudar ni buscar en transmisiones en vivo
posible. El valor predeterminado es "cualquiera", lo que significa que el suscriptor primero intenta jugar
la transmisión en vivo especificada en la ruta de reproducción. Si no se encuentra una transmisión en vivo con ese nombre,
reproduce la secuencia grabada. Los otros valores posibles son "en vivo" y "grabado".

rtmp_pageurl
URL de la página web en la que se insertaron los medios. Por defecto, no se enviará ningún valor.

rtmp_playpath
Identificador de transmisión para reproducir o publicar. Esta opción anula el parámetro especificado
en el URI.

rtmp_subscribir
Nombre de la transmisión en vivo a la que suscribirse. Por defecto, no se enviará ningún valor. Es solo
enviado si se especifica la opción o si rtmp_live está configurado para vivir.

rtmp_swfhash
Hash SHA256 del archivo SWF descomprimido (32 bytes).

rtmp_swfsize
Tamaño del archivo SWF descomprimido, necesario para SWFVerification.

rtmp_swfurl
URL del reproductor SWF para los medios. Por defecto, no se enviará ningún valor.

rtmp_swfverificar
URL al archivo swf del reproductor, calcula el hash / tamaño automáticamente.

rtmp_tcurl
URL de la secuencia de destino. El valor predeterminado es proto: // host [: port] / app.

Por ejemplo para leer con ffplay un recurso multimedia llamado "muestra" de la aplicación
"vod" de un servidor RTMP "myserver":

ffplay rtmp: // miservidor / vod / muestra

Para publicar en un servidor protegido con contraseña, pasando la ruta de reproducción y los nombres de las aplicaciones por separado:

ffmpeg -re -i -f flv -rtmp_playpath some / long / path -rtmp_app long / app / name rtmp: // nombre de usuario: contraseña @ myserver /

rtmpe
Protocolo de mensajería cifrada en tiempo real.

El Protocolo de mensajería en tiempo real cifrado (RTMPE) se utiliza para la transmisión de multimedia
contenido dentro de primitivas criptográficas estándar, que consta de clave Diffie-Hellman
exchange y HMACSHA256, generando un par de claves RC4.

rtmps
Protocolo de mensajería en tiempo real a través de una conexión SSL segura.

El Protocolo de mensajería en tiempo real (RTMPS) se utiliza para transmitir contenido multimedia a través de
una conexión encriptada.

rtmpt
Protocolo de mensajería en tiempo real tunelizado a través de HTTP.

El protocolo de mensajería en tiempo real tunelizado a través de HTTP (RTMPT) se utiliza para la transmisión
contenido multimedia dentro de solicitudes HTTP para atravesar firewalls.

rmpte
Protocolo de mensajería en tiempo real cifrado tunelizado a través de HTTP.

El Protocolo de mensajería en tiempo real cifrado tunelizado a través de HTTP (RTMPTE) se utiliza para
Transmisión de contenido multimedia dentro de solicitudes HTTP para atravesar firewalls.

rtmpts
Protocolo de mensajería en tiempo real tunelizado a través de HTTPS.

El protocolo de mensajería en tiempo real tunelizado a través de HTTPS (RTMPTS) se utiliza para la transmisión
contenido multimedia dentro de solicitudes HTTPS para atravesar firewalls.

clientelibsmb
libsmbclient permite manipular recursos de red CIFS / SMB.

Se requiere la siguiente sintaxis.

smb: // [[dominio:] usuario [: contraseña @]] servidor [/ compartir [/ ruta [/ archivo]]]

Este protocolo acepta las siguientes opciones.

tiempo de espera
Establecer el tiempo de espera en milisegundos de las operaciones de E / S de socket utilizadas por el nivel bajo subyacente
operación. De forma predeterminada, se establece en -1, lo que significa que no se especifica el tiempo de espera.

truncar
Truncar archivos existentes al escribir, si se establece en 1. Un valor de 0 evita que se trunquen.
El valor predeterminado es 1.

grupo de trabajo
Configure el grupo de trabajo que se utilizará para realizar las conexiones. Por defecto, el grupo de trabajo no está especificado.

Para más información, ver:http://www.samba.org/>.

libre
Protocolo seguro de transferencia de archivos a través de libssh

Leer o escribir en recursos remotos mediante el protocolo SFTP.

Se requiere la siguiente sintaxis.

sftp: // [usuario [: contraseña] @] servidor [: puerto] /ruta/a/remote/resource.mpeg

Este protocolo acepta las siguientes opciones.

tiempo de espera
Establezca el tiempo de espera de las operaciones de E / S de socket utilizadas por la operación de bajo nivel subyacente. Por
el valor predeterminado es -1, lo que significa que no se especifica el tiempo de espera.

truncar
Truncar archivos existentes al escribir, si se establece en 1. Un valor de 0 evita que se trunquen.
El valor predeterminado es 1.

llave privada
Especifique la ruta del archivo que contiene la clave privada para usar durante la autorización. Por
libssh predeterminado busca claves en el ~ / .ssh / directorio.

Ejemplo: reproducir un archivo almacenado en un servidor remoto.

jugar sftp: // usuario: contraseña @ dirección_servidor: 22 / home / user / resource.mpeg

libretmp rmp, rtmpe, rtmps, rtmpt, rmpte
Protocolo de mensajería en tiempo real y sus variantes compatibles a través de librtmp.

Requiere la presencia de la biblioteca y los encabezados librtmp durante la configuración. Necesitas
configure explícitamente la compilación con "--enable-librtmp". Si está habilitado, reemplazará el
protocolo RTMP nativo.

Este protocolo proporciona la mayoría de las funciones del cliente y algunas funciones del servidor necesarias para admitir
RTMP, RTMP tunelizado en HTTP (RTMPT), RTMP cifrado (RTMPE), RTMP sobre SSL / TLS (RTMPS) y
variantes tunelizadas de estos tipos cifrados (RTMPTE, RTMPTS).

La sintaxis requerida es:

: // [: ] [/ ] [/ ]

donde rtmp_proto es una de las cadenas "rtmp", "rtmpt", "rtmpe", "rtmps", "rtmpte",
"rtmpts" correspondientes a cada variante de RTMP, y servidor, Puerto, applicación y camino de juego tienen el
mismo significado que el especificado para el protocolo nativo RTMP. opciones contiene una lista de espacios
opciones separadas del formulario clave=val.

Consulte la página de manual de librtmp (man 3 librtmp) para obtener más información.

Por ejemplo, para transmitir un archivo en tiempo real a un servidor RTMP usando ffmpeg:

ffmpeg -re -i myfile -f flv rtmp: // miservidor / live / mystream

Para reproducir la misma secuencia usando ffplay:

ffplay "rtmp: // myserver / live / mystream live = 1"

RTP
Protocolo de transporte en tiempo real.

La sintaxis requerida para una URL RTP es: rtp: //hostname[:Puerto] [?opción=val...]

Puerto especifica el puerto RTP que se utilizará.

Se admiten las siguientes opciones de URL:

ttl =n
Establezca el valor TTL (tiempo de vida) (solo para multidifusión).

rtcpport =n
Configure el puerto RTCP remoto en n.

localrtpport =n
Configure el puerto RTP local en n.

localrtcpport =n'
Configure el puerto RTCP local en n.

pkt_size =n
Establezca el tamaño máximo de paquete (en bytes) en n.

conectar = 0 | 1
Haga un "connect ()" en el zócalo UDP (si se establece en 1) o no (si se establece en 0).

fuentes =ip[,ip]
Enumere las direcciones IP de origen permitidas.

bloque =ip[,ip]
Enumere las direcciones IP de origen no permitidas (bloqueadas).

write_to_source = 0 | 1
Envíe paquetes a la dirección de origen del último paquete recibido (si se establece en 1) oa un
dirección remota predeterminada (si se establece en 0).

localport =n
Configure el puerto RTP local en n.

Esta es una opción obsoleta. En lugar de, puerto localrt debe ser usado.

Notas importantes:

1. Si puerto rtc no está configurado, el puerto RTCP se configurará con el valor del puerto RTP más 1.

2. Si puerto localrt (el puerto RTP local) no está configurado, se usará ningún puerto disponible para
los puertos RTP y RTCP locales.

3. Si puerto localrtc (el puerto RTCP local) no está configurado, se configurará en el puerto RTP local
valor más 1.

RTSP
Protocolo de transmisión en tiempo real.

RTSP no es técnicamente un controlador de protocolo en libavformat, es un demuxer y muxer. El
demuxer admite tanto RTSP normal (con datos transferidos a través de RTP; esto es utilizado por, por ejemplo,
Apple y Microsoft) y Real-RTSP (con datos transferidos a través de RDT).

El muxer se puede usar para enviar un flujo usando RTSP ANNOUNCE a un servidor que lo admita
(actualmente Darwin Streaming Server y Mischa Spiegelmock's
<https://github.com/revmischa/rtsp-server>).

La sintaxis requerida para una URL RTSP es:

rtsp: // [: ] /

Las opciones se pueden configurar en el ffmpeg/ffplay línea de comando, o establecer en el código a través de "AVOption" s o en
"avformat_open_input".

Se admiten las siguientes opciones.

pausa_inicial
No comience a reproducir la transmisión inmediatamente si se establece en 1. El valor predeterminado es 0.

rtsp_transporte
Configure los protocolos de transporte RTSP.

Acepta los siguientes valores:

udp Utilice UDP como protocolo de transporte inferior.

tcp Utilice TCP (entrelazado dentro del canal de control RTSP) como transporte inferior
protocolo.

udp_multidifusión
Utilice la multidifusión UDP como protocolo de transporte inferior.

http
Utilice la tunelización HTTP como protocolo de transporte inferior, que es útil para pasar
proxies

Se pueden especificar varios protocolos de transporte inferiores, en ese caso se prueban uno
a la vez (si falla la configuración de uno, se intenta el siguiente). Para el muxer, solo el
tcp y udp las opciones son compatibles.

banderas_rtsp
Establecer banderas RTSP.

Se aceptan los siguientes valores:

filtro_src
Acepte paquetes solo desde la dirección y el puerto de pares negociados.

escuchan
Actúa como servidor, escuchando una conexión entrante.

prefer_tcp
Pruebe primero con TCP para el transporte RTP, si TCP está disponible como transporte RTSP RTP.

El valor predeterminado es ninguna.

tipos_de_medios_permitidos
Configure los tipos de medios para aceptar del servidor.

Se aceptan las siguientes banderas:

video
audio
datos

De forma predeterminada, acepta todos los tipos de medios.

puerto_mínimo
Configure el puerto UDP local mínimo. El valor predeterminado es 5000.

puerto_max
Configure el puerto UDP local máximo. El valor predeterminado es 65000.

tiempo de espera
Establezca el tiempo de espera máximo (en segundos) para esperar las conexiones entrantes.

Un valor de -1 significa infinito (predeterminado). Esta opción implica la banderas_rtsp establecido en
escuchan.

reorder_queue_size
Establezca el número de paquetes en el búfer para el manejo de paquetes reordenados.

tiempo de espera
Establezca el tiempo de espera de E / S de TCP del socket en microsegundos.

user-agent
Anular el encabezado del agente de usuario. Si no se especifica, el formato predeterminado es libav
cadena de identificación.

Al recibir datos a través de UDP, el demuxer intenta reordenar los paquetes recibidos (ya que
pueden llegar fuera de servicio o los paquetes pueden perderse por completo). Esto se puede desactivar configurando
el retardo máximo de demuxing a cero (a través del campo "max_delay" de AVFormatContext).

Al ver transmisiones Real-RTSP de tasa de bits múltiple con ffplay, las secuencias para mostrar pueden ser
elegido con "-vst" n y "-ast" n para video y audio respectivamente, y se puede encender
la mosca presionando "v" y "a".

Ejemplos

Los siguientes ejemplos hacen uso de la ffplay y ffmpeg herramientas.

· Mira una transmisión a través de UDP, con un retraso máximo de reordenación de 0.5 segundos:

ffplay -max_delay 500000 -rtsp_transport udp rtsp: //server/video.mp4

· Vea una transmisión tunelizada a través de HTTP:

ffplay -rtsp_transport http rtsp: //server/video.mp4

· Envía una transmisión en tiempo real a un servidor RTSP para que otros la vean:

ffmpeg -re -i -f rtsp -muxdelay 0.1 rtsp: //server/live.sdp

· Recibe una transmisión en tiempo real:

ffmpeg -rtsp_flags escuchar -i rtsp: //ownaddress/live.sdp

savia
Protocolo de anuncio de sesión (RFC 2974). Técnicamente, esto no es un controlador de protocolo en
libavformat, es un muxer y demuxer. Se utiliza para la señalización de flujos RTP, por
anunciando el SDP para las transmisiones regularmente en un puerto separado.

Múxer

La sintaxis de una URL de SAP dada al muxer es:

savia:// [: ] [? ]

Los paquetes RTP se envían a destino en el puerto Puerto, o al puerto 5004 si no hay ningún puerto
especificado. opciones es una lista separada por "&". Se admiten las siguientes opciones:

anuncie_addr =dirección
Especifique la dirección IP de destino para enviar los anuncios. Si se omite, el
Los anuncios se envían a la dirección de multidifusión de anuncios de SAP de uso común.
224.2.127.254 (sap.mcast.net), o ff0e :: 2: 7ffe si destino es una dirección IPv6.

anunc_puerto =Puerto
Especifique el puerto en el que enviar los anuncios; el valor predeterminado es 9875 si no se especifica.

ttl =TTL
Especifique el valor del tiempo de vida para los anuncios y los paquetes RTP, el valor predeterminado es 255.

mismo_puerto =0 | 1
Si se establece en 1, envíe todas las transmisiones RTP en el mismo par de puertos. Si es cero (el valor predeterminado), todos
Los flujos se envían en puertos únicos, con cada flujo en un puerto 2 números más altos que el
anterior. VLC / Live555 requiere que se establezca en 1 para poder recibir la transmisión.
La pila RTP en libavformat para recibir requiere que todas las transmisiones se envíen en
puertos

A continuación se muestran ejemplos de líneas de comando.

Para transmitir una transmisión en la subred local, para verla en VLC:

ffmpeg -re -i -f sap sap: //224.0.0.255? mismo_puerto = 1

Del mismo modo, para mirar en ffplay:

ffmpeg -re -i -f savia savia: //224.0.0.255

Y por mirar adentro ffplay, a través de IPv6:

ffmpeg -re -i -f savia savia: // [ff0e :: 1: 2: 3: 4]

Demultiplexor

La sintaxis de una URL de SAP proporcionada al demuxer es:

savia://[ ] [: ]

dirección es la dirección de multidifusión para escuchar anuncios en, si se omite, el valor predeterminado
Se utiliza 224.2.127.254 (sap.mcast.net). Puerto es el puerto que se escucha, 9875 si
omitido.

Los demuxers escuchan anuncios en la dirección y el puerto dados. Una vez
se recibe el anuncio, intenta recibir ese flujo en particular.

A continuación se muestran ejemplos de líneas de comando.

Para reproducir la primera transmisión anunciada en la dirección de multidifusión SAP normal:

ffplay sap: //

Para reproducir la primera transmisión anunciada en una dirección de multidifusión SAP IPv6 predeterminada:

ffplay sap: // [ff0e :: 2: 7ffe]

sctp
Protocolo de transmisión de control de flujo.

La sintaxis de URL aceptada es:

sctp: // : [? ]

El protocolo acepta las siguientes opciones:

escuchan
Si se establece en cualquier valor, escuche una conexión entrante. La conexión saliente se realiza mediante
predeterminada.

max_streams
Establece el número máximo de transmisiones. De forma predeterminada, no se establece ningún límite.

srtp
Protocolo de transporte seguro en tiempo real.

Las opciones aceptadas son:

srtp_en_suite
srtp_out_suite
Seleccione suites de codificación de entrada y salida.

Valores admitidos:

AES_CM_128_HMAC_SHA1_80
SRTP_AES128_CM_HMAC_SHA1_80
AES_CM_128_HMAC_SHA1_32
SRTP_AES128_CM_HMAC_SHA1_32
srtp_in_params
srtp_out_params
Establezca los parámetros de codificación de entrada y salida, que se expresan mediante una codificación base64.
representación de un bloque binario. Los primeros 16 bytes de este bloque binario se utilizan como
clave maestra, los siguientes 14 bytes se utilizan como sal maestra.

subarchivo
Extraiga virtualmente un segmento de un archivo u otra secuencia. La secuencia subyacente debe ser
buscable.

Opciones aceptadas:

comienzo
Desplazamiento inicial del segmento extraído, en bytes.

final Desplazamiento final del segmento extraído, en bytes.

Ejemplos:

Extraiga un capítulo de un archivo VOB de DVD (los sectores de inicio y finalización obtenidos externamente y
multiplicado por 2048):

subarchivo ,, inicio, 153391104, final, 268142592 ,,: / media / dvd / VIDEO_TS / VTS_08_1.VOB

Reproduzca un archivo AVI directamente desde un archivo TAR:

subarchivo ,, inicio, 183241728, final, 366490624 ,,: archive.tar

tcp
Protocolo de Control de Transmisión.

La sintaxis requerida para una URL de TCP es:

tcp: // : [? ]

opciones contiene una lista de opciones separadas del formulario clave=val.

A continuación, se muestra la lista de opciones admitidas.

escuchar =1 | 0
Escuche una conexión entrante. El valor predeterminado es 0.

tiempo de espera =microsegundos
Establezca el tiempo de espera del error de aumento, expresado en microsegundos.

Esta opción solo es relevante en modo lectura: si no llegaron datos en más de este tiempo
intervalo, generar error.

listen_timeout =milisegundos
Establece el tiempo de espera de la escucha, expresado en milisegundos.

El siguiente ejemplo muestra cómo configurar una conexión TCP de escucha con ffmpeg, cual es
luego se accede con ffplay:

ffmpeg -i -F tcp: // : ?escucha
ffplay tcp: // :

tls
Seguridad de la capa de transporte (TLS) / Capa de sockets seguros (SSL)

La sintaxis requerida para una URL TLS / SSL es:

tls: // : [? ]

Los siguientes parámetros se pueden configurar a través de las opciones de la línea de comando (o en código a través de "AVOption"):

ca_archivo, cafile =nombre de archivo
Un archivo que contiene los certificados raíz de la autoridad de certificación (CA) para tratarlos como de confianza. Si
la biblioteca TLS vinculada contiene un valor predeterminado que puede no ser necesario especificar para
verificación para que funcione, pero no todas las bibliotecas y configuraciones tienen valores predeterminados integrados.
El archivo debe estar en formato OpenSSL PEM.

tls_verify =1 | 0
Si está habilitado, intente verificar el par con el que nos estamos comunicando. Tenga en cuenta que si usa
OpenSSL, esto actualmente solo asegura que el certificado de pares esté firmado por uno de
los certificados raíz en la base de datos de la CA, pero no valida que el
el certificado realmente coincide con el nombre de host al que estamos intentando conectarnos. (Con GnuTLS,
el nombre de host también se valida.)

Esto está deshabilitado de forma predeterminada, ya que requiere que el
llamador en muchos casos.

archivo_cert, cert =nombre de archivo
Un archivo que contiene un certificado para usar en el apretón de manos con el par. (Cuándo
operando como servidor, en modo de escucha, esto es requerido con mayor frecuencia por el par, mientras que
los certificados de cliente solo son obligatorios en determinadas configuraciones).

archivo de clave, clave =nombre de archivo
Un archivo que contiene la clave privada del certificado.

escuchar =1 | 0
Si está habilitado, escuche las conexiones en el puerto proporcionado y asuma el rol de servidor en
el apretón de manos en lugar del rol de cliente.

Ejemplo de líneas de comando:

Para crear un servidor TLS / SSL que sirva a un flujo de entrada.

ffmpeg -i -F tls: // : ? escuchar & cert = & clave =

Para reproducir una transmisión desde el servidor TLS / SSL usando ffplay:

ffplay tls: // :

udp
Protocolo de datagramas de usuario.

La sintaxis requerida para una URL UDP es:

udp: // : [? ]

opciones contiene una lista de opciones separadas del formulario clave=val.

En caso de que el subproceso esté habilitado en el sistema, se utiliza un búfer circular para almacenar el
datos entrantes, lo que permite reducir la pérdida de datos debido a saturaciones de búfer de socket UDP.
El sistema tamaño_fino y sobrerun_nonfatal Las opciones están relacionadas con este búfer.

A continuación, se muestra la lista de opciones admitidas.

buffer_size =tamaño
Establezca el tamaño máximo de búfer de socket de UDP en bytes. Esto se usa para configurar el
recibir o enviar el tamaño del búfer, según para qué se utilice el socket. El valor predeterminado es
64KB. Ver también tamaño_fino.

localport =Puerto
Anula el puerto UDP local para enlazar.

localaddr =addr
Elija la dirección IP local. Esto es útil, por ejemplo, si se envía multidifusión y el host
múltiples interfaces, donde el usuario puede elegir qué interfaz enviar por
especificando la dirección IP de esa interfaz.

pkt_size =tamaño
Establezca el tamaño en bytes de los paquetes UDP.

reutilizar =1 | 0
Permitir o prohibir explícitamente la reutilización de sockets UDP.

ttl =TTL
Establezca el valor del tiempo de vida (solo para multidifusión).

conectar =1 | 0
Inicialice el socket UDP con "connect ()". En este caso, la dirección de destino
no se puede cambiar con ff_udp_set_remote_url más tarde. Si la dirección de destino no es
conocida al principio, esta opción también se puede especificar en ff_udp_set_remote_url. Esta
permite averiguar la dirección de origen de los paquetes con getsockname, y hace
escribe devolver con AVERROR (ECONNREFUSED) si se recibe "destino inalcanzable".
Para recibir, esto brinda la ventaja de recibir solo paquetes de los
dirección / puerto del par.

fuentes =dirección[,dirección]
Reciba solo los paquetes enviados al grupo de multidifusión desde una de las direcciones IP de remitente especificadas
Direcciones.

bloque =dirección[,dirección]
Ignore los paquetes enviados al grupo de multidifusión desde las direcciones IP del remitente especificadas.

Fifo_size =unidades que
Establezca el tamaño del búfer circular de recepción de UDP, expresado como una cantidad de paquetes con el tamaño
de 188 bytes. Si no se especifica, el valor predeterminado es 7 * 4096.

overrun_nonfatal =1 | 0
Sobreviva en caso de que UDP reciba un desbordamiento de búfer circular. El valor predeterminado es 0.

tiempo de espera =microsegundos
Establezca el tiempo de espera del error de aumento, expresado en microsegundos.

Esta opción solo es relevante en modo lectura: si no llegaron datos en más de este tiempo
intervalo, generar error.

broadcast =1 | 0
Permitir o prohibir explícitamente la transmisión UDP.

Tenga en cuenta que es posible que la transmisión no funcione correctamente en redes que tengan una tormenta de transmisión
proteccion.

Ejemplos

· Usar ffmpeg para transmitir a través de UDP a un punto final remoto:

ffmpeg -i -F udp: // :

· Usar ffmpeg para transmitir en formato mpegts sobre UDP usando 188 paquetes UDP de tamaño, usando un
búfer de entrada grande:

ffmpeg -i -f mpegts udp: // : ? pkt_size = 188 & buffer_size = 65535

· Usar ffmpeg para recibir sobre UDP desde un punto final remoto:

ffmpeg -i udp: // [ ]: ...

UNIX
Socket local Unix

La sintaxis requerida para una URL de socket Unix es:

unix: //

Los siguientes parámetros se pueden configurar a través de las opciones de la línea de comando (o en código a través de "AVOption"):

tiempo de espera
Tiempo de espera en ms.

escuchan
Cree el socket Unix en modo de escucha.

Utilice los protocolos ffmpeg en línea utilizando los servicios de onworks.net


Servidores y estaciones de trabajo gratuitos

Descargar aplicaciones de Windows y Linux

  • 1
    Clementine
    Clementine
    Clementine es una música multiplataforma
    reproductor y organizador de bibliotecas inspirado en
    Amarok 1.4. Tiene un rápido y
    interfaz fácil de usar y le permite
    busca y...
    Descargar Clementina
  • 2
    XISMUS
    XISMUS
    ATENCIÓN: la actualización acumulativa 2.4.3 ha
    sido lanzado !! La actualización funciona para cualquier
    versión 2.xx anterior. Si actualiza
    desde la versión v1.xx, descargue y
    i ...
    Descargar XISMuS
  • 3
    facetracknoir
    facetracknoir
    Programa de headtracking modular que
    admite múltiples rastreadores faciales, filtros
    y protocolos de juego. Entre los rastreadores
    son SM FaceAPI, AIC Inertial Head
    Rastreador ...
    descargar facetracknoir
  • 4
    Código QR PHP
    Código QR PHP
    El código QR de PHP es de código abierto (LGPL)
    biblioteca para generar código QR,
    Código de barras bidimensional. Residencia en
    biblioteca libqrencode C, proporciona API para
    creando código de barras QR ...
    Descargar Código QR PHP
  • 5
    libreciv
    libreciv
    Freeciv es un programa gratuito por turnos
    juego de estrategia multijugador, en el que cada
    jugador se convierte en el líder de un
    civilización, luchando por obtener el
    objetivo final: bec ...
    Descargar Freeciv
  • 6
    Sandbox de cuco
    Sandbox de cuco
    Cuckoo Sandbox utiliza componentes para
    monitorear el comportamiento del malware en un
    Entorno de caja de arena; aislado de la
    resto del sistema. Ofrece automatizado
    análisis de ...
    Descargar Cuckoo Sandbox
  • Más "

Comandos de Linux

Ad