Alessandro Ros 
							
						 
					 
					
						
						
							
						
						c466c342ba 
					 
					
						
						
							
							expose transport details ( #850 )  
						
						... 
						
						
						
						add Client.Transport, ServerConn.Transport ServerSession.Transport 
						
						
					 
					
						2025-09-06 16:28:40 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						3c2625c7cf 
					 
					
						
						
							
							make most methods thread safe ( #882 )  
						
						... 
						
						
						
						Client: Stats
ServerConn: Session, Stats
ServerSession: State, Stats, Medias, Path, Query, Stream,
SetuppedSecure, SetuppedTransport, AnnouncedDescription 
						
						
					 
					
						2025-09-06 15:42:07 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						65da49ffc0 
					 
					
						
						
							
							optimize code ( #878 )  
						
						... 
						
						
						
						* remove unused code
* initialize UDP listeners and SRTP before initializing medias
* make rtpSender and rtpReceiver available before PLAY / RECORD
* use writerMutex to protect writer only 
						
						
					 
					
						2025-09-05 23:11:51 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						1f543a0331 
					 
					
						
						
							
							rename rtcpreceiver into rtpreceiver, rtcpsender into rtpsender ( #874 )  
						
						... 
						
						
						
						These utilities were originally meant to handle RTCP only, now they are
in charge of every QoS mechanism. 
						
						
					 
					
						2025-09-04 19:06:56 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						cf2ff2b564 
					 
					
						
						
							
							add Transport.Profile, media.Profile ( #873 )  
						
						... 
						
						
						
						this will allow to support AVPF in the future. 
						
						
					 
					
						2025-09-04 18:08:51 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						572dedc400 
					 
					
						
						
							
							remove redundant code ( #843 )  
						
						
						
						
					 
					
						2025-08-02 14:25:17 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						616fa7ea89 
					 
					
						
						
							
							support encrypted streams with SRTP and MIKEY ( #520 ) ( #809 )  
						
						
						
						
					 
					
						2025-07-05 12:48:13 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						2c2f99e1a3 
					 
					
						
						
							
							client: open firewall before sending PLAY request ( #821 )  
						
						... 
						
						
						
						this prevents losing some initial packets. 
						
						
					 
					
						2025-07-05 11:13:51 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						4f3337f56c 
					 
					
						
						
							
							set SSRC of outgoing packets ( #803 )  
						
						... 
						
						
						
						In client and server, each format now has a fixed, unique, known in
advance SSRC, that is applied to outgoing packets belonging to each
format.
This is needed to support SRTP/MIKEY, that require each format to have
a fixed, unique, and known in advance SSRC.
A secondary effect is that SETUP responses now always contain SSRCs of
each format, regardless of the fact that the first packet has been
produced or not (previously we needed at least one packet, from which
the SSRC was extracted). 
						
						
					 
					
						2025-07-05 11:08:57 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						b407cb1dd0 
					 
					
						
						
							
							server: support reading back channels ( #597 ) ( #777 )  
						
						
						
						
					 
					
						2025-05-04 17:04:15 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						3e555e2d18 
					 
					
						
						
							
							fix crash when reading tracks with zero clock rate (bluenviron/mediamtx#4476) ( #772 )  
						
						... 
						
						
						
						also prevents RTCP sender and RTCP reports from being emitted when
track has clock rate set to zero. 
						
						
					 
					
						2025-05-01 18:08:13 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						87c6d81053 
					 
					
						
						
							
							add statistics to Client, ServerSession, ServerConn, ServerStream ( #556 ) ( #656 )  
						
						
						
						
					 
					
						2024-12-25 13:30:08 +01:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						93b012b3ca 
					 
					
						
						
							
							server: always open firewall before sending messages ( #666 )  
						
						
						
						
					 
					
						2024-12-24 16:50:53 +01:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						5506eb2f7f 
					 
					
						
						
							
							use a single TCP outgoing buffer each client / session ( #665 )  
						
						... 
						
						
						
						this saves memory. 
						
						
					 
					
						2024-12-24 10:24:24 +01:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						8f74559616 
					 
					
						
						
							
							close connections in case of write errors ( #613 ) ( #655 )  
						
						
						
						
					 
					
						2024-12-14 13:45:11 +01:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						49ee03f0b1 
					 
					
						
						
							
							reuse UDP buffers when possible ( #639 )  
						
						
						
						
					 
					
						2024-10-24 14:28:53 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						2d0c530d97 
					 
					
						
						
							
							replace new() with initialize() ( #490 )  
						
						
						
						
					 
					
						2023-12-26 12:48:35 +01:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						4495e7d689 
					 
					
						
						
							
							move most errors into pkg/liberrors ( #408 )  
						
						
						
						
					 
					
						2023-09-10 17:32:16 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						3bdae4ed46 
					 
					
						
						
							
							make WritePacket*() return errors when write queue is full ( #388 )  
						
						
						
						
					 
					
						2023-08-26 18:09:45 +02:00 
						 
				 
			
				
					
						
							
							
								aler9 
							
						 
					 
					
						
						
							
						
						cdbecb1f5d 
					 
					
						
						
							
							allow setting additional properties of streams through description.Stream  
						
						
						
						
					 
					
						2023-08-22 16:46:18 +02:00 
						 
				 
			
				
					
						
							
							
								aler9 
							
						 
					 
					
						
						
							
						
						4e000eb2dd 
					 
					
						
						
							
							emit a decode error in case of packets with wrong SSRC  
						
						
						
						
					 
					
						2023-08-18 18:20:13 +02:00 
						 
				 
			
				
					
						
							
							
								aler9 
							
						 
					 
					
						
						
							
						
						bfef17b717 
					 
					
						
						
							
							add Client.PacketNTP(), ServerSession.PacketNTP()  
						
						
						
						
					 
					
						2023-08-17 13:23:16 +02:00 
						 
				 
			
				
					
						
							
							
								aler9 
							
						 
					 
					
						
						
							
						
						7532484041 
					 
					
						
						
							
							add option MaxPacketSize to Client and Server  
						
						
						
						
					 
					
						2023-08-16 13:26:17 +02:00 
						 
				 
			
				
					
						
							
							
								aler9 
							
						 
					 
					
						
						
							
						
						80106144e6 
					 
					
						
						
							
							bump to v4  
						
						
						
						
					 
					
						2023-08-16 13:26:17 +02:00 
						 
				 
			
				
					
						
							
							
								aler9 
							
						 
					 
					
						
						
							
						
						482b047999 
					 
					
						
						
							
							server: allow ServerSession.WritePacket*() to return an error  
						
						
						
						
					 
					
						2023-08-14 12:13:35 +02:00 
						 
				 
			
				
					
						
							
							
								aler9 
							
						 
					 
					
						
						
							
						
						18ddae4c50 
					 
					
						
						
							
							enable errcheck  
						
						
						
						
					 
					
						2023-08-13 16:29:53 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						ed536f1d63 
					 
					
						
						
							
							export callback prototypes ( #333 )  
						
						
						
						
					 
					
						2023-07-28 21:05:10 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						e583556d86 
					 
					
						
						
							
							server, client: allow using odd interleaved IDs ( #304 )  
						
						... 
						
						
						
						(https://github.com/bluenviron/mediamtx/issues/1762 ) 
						
						
					 
					
						2023-06-08 23:40:37 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						0f97e8158c 
					 
					
						
						
							
							client: return an error in case of invalid packet ( #305 )  
						
						... 
						
						
						
						when reading with TCP and packet has an unknown format. 
						
						
					 
					
						2023-06-08 23:33:29 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						19dcd3e067 
					 
					
						
						
							
							update golangci-lint ( #292 )  
						
						
						
						
					 
					
						2023-05-28 13:40:00 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						30af49c412 
					 
					
						
						
							
							rename maxPacketSize into udpMaxPayloadSize ( #249 )  
						
						
						
						
					 
					
						2023-04-15 12:24:48 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						9e29555063 
					 
					
						
						
							
							simplify tests ( #247 )  
						
						
						
						
					 
					
						2023-04-14 11:53:37 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						2fbba142cc 
					 
					
						
						
							
							add OnTransportSwitch, OnPacketLost, OnDecodeError to server and client ( #225 )  
						
						... 
						
						
						
						These new hooks replace the generic hooks Log() and OnWarning(). 
						
						
					 
					
						2023-04-04 17:10:37 +02:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						04f5a4041c 
					 
					
						
						
							
							change owner ( #217 )  
						
						
						
						
					 
					
						2023-03-31 12:34:07 +02:00 
						 
				 
			
				
					
						
							
							
								Nils Zottmann 
							
						 
					 
					
						
						
							
						
						1c50779598 
					 
					
						
						
							
							Allow RTCP packets for keepalive also in state PLAY ( #185 ) ( #186 )  
						
						... 
						
						
						
						* Allow RTCP packets for keepalive also in state PLAY (#185 )
* use sessionTimeout instead of ReadTimeout
* reset udpLastPacketTime before PLAY and RECORD
* change error message in case of timeouts
* fix comment
---------
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com > 
						
						
					 
					
						2023-02-13 13:22:38 +01:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						df8077ce7c 
					 
					
						
						
							
							server: fix race condition ( #178 )  
						
						
						
						
					 
					
						2023-01-23 13:19:56 +01:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						a2d6ce8af6 
					 
					
						
						
							
							replace OnDecodeError with OnWarning ( #177 )  
						
						
						
						
					 
					
						2023-01-23 12:54:57 +01:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						7b6a5f8cb3 
					 
					
						
						
							
							Add proxy example ( #141 ) ( #175 )  
						
						... 
						
						
						
						* cleanup
* add proxy example 
						
						
					 
					
						2023-01-23 11:23:16 +01:00 
						 
				 
			
				
					
						
							
							
								Alessandro Ros 
							
						 
					 
					
						
						
							
						
						f6438ed8d1 
					 
					
						
						
							
							normalize file names ( #173 )  
						
						
						
						
					 
					
						2023-01-22 11:44:20 +01:00