FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Fields
RTMPContext Struct Reference

protocol handler context More...

Data Fields

const AVClassclass
 
URLContextstream
 TCP stream used in interactions with RTMP server. More...
 
RTMPPacketprev_pkt [2]
 packet history used when reading and sending packets ([0] for reading, [1] for writing) More...
 
int nb_prev_pkt [2]
 number of elements in prev_pkt More...
 
int in_chunk_size
 size of the chunks incoming RTMP packets are divided into More...
 
int out_chunk_size
 size of the chunks outgoing RTMP packets are divided into More...
 
int is_input
 input/output flag More...
 
char * playpath
 stream identifier to play (with possible "mp4:" prefix) More...
 
int live
 0: recorded, -1: live, -2: both More...
 
char * app
 name of application More...
 
char * conn
 append arbitrary AMF data to the Connect message More...
 
ClientState state
 current state More...
 
int stream_id
 ID assigned by the server for the stream. More...
 
uint8_tflv_data
 buffer with data for demuxer More...
 
int flv_size
 current buffer size More...
 
int flv_off
 number of bytes read from current buffer More...
 
int flv_nb_packets
 number of flv packets published More...
 
RTMPPacket out_pkt
 rtmp packet, created from flv a/v or metadata (for output) More...
 
uint32_t client_report_size
 number of bytes after which client should report to server More...
 
uint64_t bytes_read
 number of bytes read from server More...
 
uint64_t last_bytes_read
 number of bytes read last reported to server More...
 
uint32_t last_timestamp
 last timestamp received in a packet More...
 
int skip_bytes
 number of bytes to skip from the input FLV stream in the next write call More...
 
int has_audio
 presence of audio data More...
 
int has_video
 presence of video data More...
 
int received_metadata
 Indicates if we have received metadata about the streams. More...
 
uint8_t flv_header [RTMP_HEADER]
 partial incoming flv packet header More...
 
int flv_header_bytes
 number of initialized bytes in flv_header More...
 
int nb_invokes
 keeps track of invoke messages More...
 
char * tcurl
 url of the target stream More...
 
char * flashver
 version of the flash plugin More...
 
char * swfhash
 SHA256 hash of the decompressed SWF file (32 bytes) More...
 
int swfhash_len
 length of the SHA256 hash More...
 
int swfsize
 size of the decompressed SWF file More...
 
char * swfurl
 url of the swf player More...
 
char * swfverify
 URL to player swf file, compute hash/size automatically. More...
 
char swfverification [42]
 hash of the SWF verification More...
 
char * pageurl
 url of the web page More...
 
char * subscribe
 name of live stream to subscribe More...
 
int server_bw
 server bandwidth More...
 
int client_buffer_time
 client buffer time in ms More...
 
int flush_interval
 number of packets flushed in the same request (RTMPT only) More...
 
int encrypted
 use an encrypted connection (RTMPE only) More...
 
TrackedMethodtracked_methods
 tracked methods buffer More...
 
int nb_tracked_methods
 number of tracked methods More...
 
int tracked_methods_size
 size of the tracked methods buffer More...
 
int listen
 listen mode flag More...
 
int listen_timeout
 listen timeout to wait for new connections More...
 
int nb_streamid
 The next stream id to return on createStream calls. More...
 
double duration
 Duration of the stream in seconds as returned by the server (only valid if non-zero) More...
 
char username [50]
 
char password [50]
 
char auth_params [500]
 
int do_reconnect
 
int auth_tried
 

Detailed Description

protocol handler context

Definition at line 77 of file rtmpproto.c.

Field Documentation

const AVClass* RTMPContext::class

Definition at line 78 of file rtmpproto.c.

URLContext* RTMPContext::stream
RTMPPacket* RTMPContext::prev_pkt[2]

packet history used when reading and sending packets ([0] for reading, [1] for writing)

Definition at line 80 of file rtmpproto.c.

Referenced by get_packet(), handle_chunk_size(), read_connect(), rtmp_close(), rtmp_open(), rtmp_send_packet(), rtmp_write(), send_invoke_response(), write_begin(), and write_status().

int RTMPContext::nb_prev_pkt[2]
int RTMPContext::in_chunk_size

size of the chunks incoming RTMP packets are divided into

Definition at line 82 of file rtmpproto.c.

Referenced by get_packet(), handle_chunk_size(), read_connect(), rtmp_open(), and rtmp_write().

int RTMPContext::out_chunk_size

size of the chunks outgoing RTMP packets are divided into

Definition at line 83 of file rtmpproto.c.

Referenced by handle_chunk_size(), read_connect(), rtmp_open(), rtmp_send_packet(), send_invoke_response(), write_begin(), and write_status().

int RTMPContext::is_input

input/output flag

Definition at line 84 of file rtmpproto.c.

Referenced by gen_connect(), get_packet(), handle_chunk_size(), handle_invoke_result(), rtmp_close(), rtmp_handshake(), and rtmp_open().

char* RTMPContext::playpath

stream identifier to play (with possible "mp4:" prefix)

Definition at line 85 of file rtmpproto.c.

Referenced by gen_fcpublish_stream(), gen_fcunpublish_stream(), gen_get_stream_length(), gen_play(), gen_publish(), gen_release_stream(), handle_invoke_result(), and rtmp_open().

int RTMPContext::live

0: recorded, -1: live, -2: both

Definition at line 86 of file rtmpproto.c.

Referenced by gen_play(), handle_invoke_error(), and handle_invoke_result().

char* RTMPContext::app

name of application

Definition at line 87 of file rtmpproto.c.

Referenced by do_llnw_auth(), gen_connect(), read_connect(), and rtmp_open().

char* RTMPContext::conn

append arbitrary AMF data to the Connect message

Definition at line 88 of file rtmpproto.c.

Referenced by gen_connect().

ClientState RTMPContext::state

current state

Definition at line 89 of file rtmpproto.c.

Referenced by get_packet(), handle_invoke_status(), rtmp_close(), rtmp_open(), rtmp_seek(), and send_invoke_response().

int RTMPContext::stream_id

ID assigned by the server for the stream.

Definition at line 90 of file rtmpproto.c.

Referenced by gen_buffer_time(), gen_delete_stream(), gen_pause(), gen_play(), gen_publish(), gen_seek(), handle_invoke_result(), and rtmp_write().

uint8_t* RTMPContext::flv_data

buffer with data for demuxer

Definition at line 91 of file rtmpproto.c.

Referenced by append_flv_data(), handle_metadata(), inject_fake_duration_metadata(), rtmp_close(), rtmp_open(), rtmp_read(), and rtmp_write().

int RTMPContext::flv_size
int RTMPContext::flv_off

number of bytes read from current buffer

Definition at line 93 of file rtmpproto.c.

Referenced by append_flv_data(), handle_metadata(), rtmp_open(), rtmp_read(), rtmp_seek(), rtmp_write(), and update_offset().

int RTMPContext::flv_nb_packets

number of flv packets published

Definition at line 94 of file rtmpproto.c.

Referenced by rtmp_write().

RTMPPacket RTMPContext::out_pkt

rtmp packet, created from flv a/v or metadata (for output)

Definition at line 95 of file rtmpproto.c.

Referenced by rtmp_close(), and rtmp_write().

uint32_t RTMPContext::client_report_size

number of bytes after which client should report to server

Definition at line 96 of file rtmpproto.c.

Referenced by get_packet(), handle_client_bw(), and rtmp_open().

uint64_t RTMPContext::bytes_read

number of bytes read from server

Definition at line 97 of file rtmpproto.c.

Referenced by gen_bytes_read(), get_packet(), and rtmp_open().

uint64_t RTMPContext::last_bytes_read

number of bytes read last reported to server

Definition at line 98 of file rtmpproto.c.

Referenced by get_packet(), and rtmp_open().

uint32_t RTMPContext::last_timestamp

last timestamp received in a packet

Definition at line 99 of file rtmpproto.c.

Referenced by get_packet(), and rtmp_pause().

int RTMPContext::skip_bytes

number of bytes to skip from the input FLV stream in the next write call

Definition at line 100 of file rtmpproto.c.

Referenced by rtmp_open(), and rtmp_write().

int RTMPContext::has_audio

presence of audio data

Definition at line 101 of file rtmpproto.c.

Referenced by append_flv_data(), handle_notify(), and rtmp_open().

int RTMPContext::has_video

presence of video data

Definition at line 102 of file rtmpproto.c.

Referenced by append_flv_data(), handle_notify(), and rtmp_open().

int RTMPContext::received_metadata

Indicates if we have received metadata about the streams.

Definition at line 103 of file rtmpproto.c.

Referenced by handle_notify(), and rtmp_open().

uint8_t RTMPContext::flv_header[RTMP_HEADER]

partial incoming flv packet header

Definition at line 104 of file rtmpproto.c.

Referenced by rtmp_write().

int RTMPContext::flv_header_bytes

number of initialized bytes in flv_header

Definition at line 105 of file rtmpproto.c.

Referenced by rtmp_write().

int RTMPContext::nb_invokes
char* RTMPContext::tcurl

url of the target stream

Definition at line 107 of file rtmpproto.c.

Referenced by gen_connect(), and rtmp_open().

char* RTMPContext::flashver

version of the flash plugin

Definition at line 108 of file rtmpproto.c.

Referenced by gen_connect(), and rtmp_open().

char* RTMPContext::swfhash

SHA256 hash of the decompressed SWF file (32 bytes)

Definition at line 109 of file rtmpproto.c.

Referenced by rtmp_calc_swf_verification().

int RTMPContext::swfhash_len

length of the SHA256 hash

Definition at line 110 of file rtmpproto.c.

Referenced by rtmp_calc_swf_verification().

int RTMPContext::swfsize

size of the decompressed SWF file

Definition at line 111 of file rtmpproto.c.

Referenced by handle_ping(), rtmp_calc_swf_verification(), rtmp_calc_swfhash(), and rtmp_handshake().

char* RTMPContext::swfurl

url of the swf player

Definition at line 112 of file rtmpproto.c.

Referenced by gen_connect().

char* RTMPContext::swfverify

URL to player swf file, compute hash/size automatically.

Definition at line 113 of file rtmpproto.c.

Referenced by rtmp_calc_swfhash(), and rtmp_open().

char RTMPContext::swfverification[42]

hash of the SWF verification

Definition at line 114 of file rtmpproto.c.

Referenced by gen_swf_verification(), and rtmp_calc_swf_verification().

char* RTMPContext::pageurl

url of the web page

Definition at line 115 of file rtmpproto.c.

Referenced by gen_connect().

char* RTMPContext::subscribe

name of live stream to subscribe

Definition at line 116 of file rtmpproto.c.

Referenced by handle_invoke_result().

int RTMPContext::server_bw

server bandwidth

Definition at line 117 of file rtmpproto.c.

Referenced by gen_server_bw(), handle_server_bw(), read_connect(), and rtmp_open().

int RTMPContext::client_buffer_time

client buffer time in ms

Definition at line 118 of file rtmpproto.c.

Referenced by gen_buffer_time().

int RTMPContext::flush_interval

number of packets flushed in the same request (RTMPT only)

Definition at line 119 of file rtmpproto.c.

Referenced by rtmp_write().

int RTMPContext::encrypted

use an encrypted connection (RTMPE only)

Definition at line 120 of file rtmpproto.c.

Referenced by rtmp_handshake(), and rtmp_open().

TrackedMethod* RTMPContext::tracked_methods

tracked methods buffer

Definition at line 121 of file rtmpproto.c.

Referenced by add_tracked_method(), del_tracked_method(), find_tracked_method(), and free_tracked_methods().

int RTMPContext::nb_tracked_methods

number of tracked methods

Definition at line 122 of file rtmpproto.c.

Referenced by add_tracked_method(), del_tracked_method(), find_tracked_method(), and free_tracked_methods().

int RTMPContext::tracked_methods_size

size of the tracked methods buffer

Definition at line 123 of file rtmpproto.c.

Referenced by add_tracked_method(), and free_tracked_methods().

int RTMPContext::listen

listen mode flag

Definition at line 124 of file rtmpproto.c.

Referenced by rtmp_open().

int RTMPContext::listen_timeout

listen timeout to wait for new connections

Definition at line 125 of file rtmpproto.c.

Referenced by rtmp_open().

int RTMPContext::nb_streamid

The next stream id to return on createStream calls.

Definition at line 126 of file rtmpproto.c.

Referenced by send_invoke_response(), and write_begin().

double RTMPContext::duration

Duration of the stream in seconds as returned by the server (only valid if non-zero)

Definition at line 127 of file rtmpproto.c.

Referenced by handle_invoke_result(), inject_fake_duration_metadata(), and rtmp_open().

char RTMPContext::username[50]

Definition at line 128 of file rtmpproto.c.

Referenced by handle_connect_error(), and rtmp_open().

char RTMPContext::password[50]

Definition at line 129 of file rtmpproto.c.

Referenced by do_adobe_auth(), do_llnw_auth(), handle_connect_error(), and rtmp_open().

char RTMPContext::auth_params[500]

Definition at line 130 of file rtmpproto.c.

Referenced by do_adobe_auth(), do_llnw_auth(), gen_connect(), and handle_connect_error().

int RTMPContext::do_reconnect

Definition at line 131 of file rtmpproto.c.

Referenced by get_packet(), handle_invoke_error(), and rtmp_open().

int RTMPContext::auth_tried

Definition at line 132 of file rtmpproto.c.

Referenced by handle_connect_error().


The documentation for this struct was generated from the following file: