a8103503b3 
								
							
								 
							
						 
						
							
							
								
								rtmp: Factorize the code by adding find_tracked_method  
							
							Also fix the bytestream reader size parameter to take the
offset into account.
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								3eebc1e174 
								
							
								 
							
						 
						
							
							
								
								rtmp: Factorize the code by adding handle_invoke_error  
							
							Signed-off-by: Luca Barbato <lu_zero@gentoo.org> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								71036a3a5e 
								
							
								 
							
						 
						
							
							
								
								rtmp: Factorize the code by adding handle_invoke_status  
							
							Signed-off-by: Luca Barbato <lu_zero@gentoo.org> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								5e6001db8f 
								
							
								 
							
						 
						
							
							
								
								rtmp: Factorize the code by adding handle_invoke_result  
							
							Signed-off-by: Luca Barbato <lu_zero@gentoo.org> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								f89584ca44 
								
							
								 
							
						 
						
							
							
								
								rtmp: Add message tracking  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								82613564cf 
								
							
								 
							
						 
						
							
							
								
								rtmp: send check_bw as notification  
							
							Set the transactionId to 0 to signal the server a return _result/_error
is not expected.
Solves the problems experienced with strict rtmp servers. 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								00cb52c65c 
								
							
								 
							
						 
						
							
							
								
								rtmp: Add a new option 'rtmp_subscribe'  
							
							This option specifies the name of live stream to subscribe.
Defaults to rtmp_playpath.
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								f9e77c1762 
								
							
								 
							
						 
						
							
							
								
								rtmp: Add support for subscribing live streams  
							
							When streaming live streams using the Akamai, Edgecast or Limelight CDN,
players cannot simply connect to the live stream. Instead, they have to
subscribe to it, by sending an FC Subscribe call to the server.
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								12127b65b0 
								
							
								 
							
						 
						
							
							
								
								rtmp: Factorize simultaneous URLProtocol / AVClass declarations with a macro  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								9c9c21eaa1 
								
							
								 
							
						 
						
							
							
								
								rtmp: do not warn about receiving metadata packets  
							
							They are managed in get_packet()
Signed-off-by: Luca Barbato <lu_zero@gentoo.org> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								8ea1459bc3 
								
							
								 
							
						 
						
							
							
								
								rtmp: Check the buffer length of ping packets  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								e49e6b6451 
								
							
								 
							
						 
						
							
							
								
								rtmp: Allow having more unknown data at the end of a chunk size packet without failing  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								2357f60687 
								
							
								 
							
						 
						
							
							
								
								rtmp: Prevent reading outside of an allocate buffer when receiving server bandwidth packets  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								abf77a247b 
								
							
								 
							
						 
						
							
							
								
								rtmp: Return an error when the client bandwidth is incorrect  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								be8f949219 
								
							
								 
							
						 
						
							
							
								
								rtmp: Return proper error code in handle_server_bw  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								088a82bb33 
								
							
								 
							
						 
						
							
							
								
								rtmp: Return proper error code in handle_client_bw  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								e7ea6883bf 
								
							
								 
							
						 
						
							
							
								
								rtmp: Return proper error codes in handle_chunk_size  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								6d1c9945dd 
								
							
								 
							
						 
						
							
							
								
								rtmp: Factorize the code by adding handle_invoke  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								7be2a7d8ff 
								
							
								 
							
						 
						
							
							
								
								rtmp: Factorize the code by adding handle_chunk_size  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								0ffd5161c4 
								
							
								 
							
						 
						
							
							
								
								rtmp: Factorize the code by adding handle_ping  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								912ecc9a19 
								
							
								 
							
						 
						
							
							
								
								rtmp: Factorize the code by adding handle_client_bw  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								9b498148ca 
								
							
								 
							
						 
						
							
							
								
								rtmp: Factorize the code by adding handle_server_bw  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								758377a2b7 
								
							
								 
							
						 
						
							
							
								
								rtmp: Add a new option 'rtmp_pageurl'  
							
							This option specifies the URL of the web page in which the media
was embedded.
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								63ffa154e9 
								
							
								 
							
						 
						
							
							
								
								rtmp: Make the description of the rtmp_tcurl option more generic  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								f7bfb126cd 
								
							
								 
							
						 
						
							
							
								
								rtmp: Move the CONFIG_ condition into the if conditions  
							
							This makes sure these calls are removed by dead code elimination
even if optimization is disabled. This fixes building without
crypto libraries without optimization.
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								08cd95e8a3 
								
							
								 
							
						 
						
							
							
								
								RTMPTE protocol support  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								acd554c103 
								
							
								 
							
						 
						
							
							
								
								RTMPE protocol support  
							
							This adds two protocols, but one of them is an internal implementation
detail just used as an abstraction layer/generalization in the code. The
RTMPE protocol implementation uses ffrtmpcrypt:// as an alternative to the
tcp:// protocol. This allows moving most of the lower level logic out
from the higher level generic rtmp code.
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								0e31088b6c 
								
							
								 
							
						 
						
							
							
								
								rtmp: Add ff_rtmp_calc_digest_pos()  
							
							This function is used for calculating digest position for RTMP handshake
packets.
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								3505d5574e 
								
							
								 
							
						 
						
							
							
								
								rtmp: Rename rtmp_calc_digest to ff_rtmp_calc_digest and make it global  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								86991ce2dd 
								
							
								 
							
						 
						
							
							
								
								RTMPTS protocol support  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								6aedabc9b6 
								
							
								 
							
						 
						
							
							
								
								RTMPS protocol support  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								775c4d3625 
								
							
								 
							
						 
						
							
							
								
								rtmp: Rename rtmphttp to ffrtmphttp  
							
							The prefix makes it easier to distinguish the proper end-user
protocols from the internal ones.
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								08e087ccf7 
								
							
								 
							
						 
						
							
							
								
								rtmp: rtmp_parse_result() add case for video and audio packets to avoid undesired debug output.  
							
							Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								46743a859c 
								
							
								 
							
						 
						
							
							
								
								rtmp: Don't send every flv packet in a separate HTTP request in RTMPT  
							
							Add a new option 'rtmp_flush_interval' that allows specifying the
number of packets to write before sending it off as a HTTP request.
This is mostly relevant for RTMPT - for plain RTMP, it only controls
how often we check the socket for incoming packets, which shouldn't
affect the performance in any noticeable way.
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								8e50c57dcb 
								
							
								 
							
						 
						
							
							
								
								RTMPT protocol support  
							
							This adds two protocols, but one of them is an internal implementation
detail just used as an abstraction layer/generalization in the code. The
RTMPT protocol implementation uses rtmphttp:// as an alternative to the
tcp:// protocol. This allows moving most of the lower level logic out
from the higher level generic rtmp code.
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								7dc747f50b 
								
							
								 
							
						 
						
							
							
								
								rtmp: Read and handle incoming packets while writing data  
							
							This makes sure all incoming packets are read and handled (and reacted
to) while sending an FLV stream over RTMP to a server. If there were
enough incoming data to fill the TCP buffers, this could potentially
make things block at unexpected places. For the upcoming RTMPT support,
we need to consume all incoming data before we can send the next
request.
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								8517e9c476 
								
							
								 
							
						 
						
							
							
								
								rtmp: Add a new option 'rtmp_buffer', for setting the client buffer time  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								9477c035a7 
								
							
								 
							
						 
						
							
							
								
								rtmp: Set the client buffer time to 3s instead of 0.26s  
							
							This factorizes existing code into a new function gen_buffer_time(),
which generates the client buffer time message and sends it to the
server.
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								c2d38beab2 
								
							
								 
							
						 
						
							
							
								
								rtmp: Handle server bandwidth packets  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								9ff930aace 
								
							
								 
							
						 
						
							
							
								
								rtmp: Display a verbose message when an unknown packet type is received  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								0533868642 
								
							
								 
							
						 
						
							
							
								
								rtmp: Tokenize the AMF connection parameters manually instead of using strtok_r  
							
							This fixes builds on platforms without strtok_r (windows).
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								0a9a225733 
								
							
								 
							
						 
						
							
							
								
								rtmp: Fix a possible access to invalid memory location when the playpath is too short.  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								f862537de8 
								
							
								 
							
						 
						
							
							
								
								rtmp: Do not send extension for flv files  
							
							This fixes bugzilla bug #304 .
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								8ee3e1874e 
								
							
								 
							
						 
						
							
							
								
								rtmp: support connection parameters  
							
							Allow using connection parameters in order to append arbitrary
AMF data like "B:1 S:authMe O:1 NN:code:1.23 NS:flag:ok O:0" to the
Connect message. You can pass these parameters through the -rtmp_conn
option.
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								c6eeb9b7b6 
								
							
								 
							
						 
						
							
							
								
								rtmp: fix url parsing  
							
							The application component can have a subcomponent to specify the
application instance even if it doesn't have a ":" in the playpath. 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								177bcc9593 
								
							
								 
							
						 
						
							
							
								
								rtmp: Pass the proper return code in rtmp_handshake  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								bba287fdac 
								
							
								 
							
						 
						
							
							
								
								rtmp: Check return codes of net IO operations  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								a4d3f3580b 
								
							
								 
							
						 
						
							
							
								
								rtmp: Return a proper error code instead of -1  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								08e93f5b46 
								
							
								 
							
						 
						
							
							
								
								rtmp: Check malloc calls  
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								f645f1d6ea 
								
							
								 
							
						 
						
							
							
								
								rtmp: Check ff_rtmp_packet_create calls  
							
							Check malloc calls used by ff_rtmp_packet_create, unify error
handling and pass on error codes.
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago