Commit Graph

41 Commits

Author SHA1 Message Date
Alessandro Ros
0b6dda672f fix ClockRate() of G711 16khz tracks (#511) 2024-01-26 17:21:27 +01:00
Alessandro Ros
506cf60080 add client-play-format-opus-save-to-disk (#487) (#507) 2024-01-21 17:27:16 +01:00
Alessandro Ros
63a81d0896 support G711 multiple channels and custom sample rates (#497) 2024-01-08 21:16:47 +01:00
Alessandro Ros
f9eb8e573b support detecting LPCM formats with payload types 10 and 11 (#496) 2024-01-07 13:01:36 +01:00
Alessandro Ros
7d30b5f1b7 update golangci-lint (#494) 2024-01-03 21:12:19 +01:00
Alessandro Ros
a5db98521d discard invalid H264 parameters (#431)
(https://github.com/bluenviron/mediamtx/issues/2348)
2023-09-22 13:49:05 +02:00
Alessandro Ros
44da79f72d merge MPEG4AudioGeneric and MPEG4AudioLATM (#430) 2023-09-21 16:51:31 +02:00
Alessandro Ros
fc2a10a499 add AC-3 decoder and encoder (#427) 2023-09-19 22:15:39 +02:00
Alessandro Ros
747de35cbc fix compatibility with Annex-B encoded H264 SPS/PPS (#402) (#426) 2023-09-18 22:24:19 +02:00
Alessandro Ros
24ff7e8003 remove deprecated function (#420) 2023-09-14 18:03:26 +02:00
Alessandro Ros
3cdd680f06 add MPEG-1/2 video decoder and encoder (#415) 2023-09-13 13:11:49 +02:00
Alessandro Ros
73ba46591e fix wrong encoding when frame size equals packet size (#416) 2023-09-13 12:56:59 +02:00
Alessandro Ros
71cd9ce613 fix compatibility with Revotech cameras (#402) (#404) 2023-09-07 16:55:18 +02:00
Alessandro Ros
39b19c8d78 fix unability to get PTS of H265 streams (#401) 2023-09-02 22:24:18 +02:00
Alessandro Ros
6c413c03f5 add MPEG4Video.SafeParams(), MPEG4Video.SafeSetParams() (#395) 2023-09-01 18:36:21 +02:00
Alessandro Ros
8f18a0d83b check SPS/PPS of H264/H265 SDPs (#394) 2023-09-01 18:31:52 +02:00
aler9
2ea1bf97dd Merge branch 'main' into v4 2023-09-01 18:06:41 +02:00
aler9
5d8f742d60 Merge branch 'main' into v4 2023-08-25 19:06:02 +02:00
aler9
8b047b545b decode RTP time globally 2023-08-17 13:41:01 +02:00
aler9
5e5a21240d rename pkg/formats into pkt/format 2023-08-16 13:26:17 +02:00
Alessandro Ros
af3ed2bd83 merge format and formatdecenc into formats (#222) 2023-04-01 13:23:16 +02:00
Alessandro Ros
04f5a4041c change owner (#217) 2023-03-31 12:34:07 +02:00
Alessandro Ros
bc248c8e1d simplify FMTP decoding and encoding (#205) 2023-03-13 22:44:31 +01:00
Alessandro Ros
13fab2962e make Opus SDP always return 48khz and 2 channels (#204)
RFC7587 mandates 48khz as sample rate and 2 channels inside the SDP.
These values can be dynamically adjusted by the stream, but they must
not be touched inside the SDP.
2023-03-13 22:03:49 +01:00
Alessandro Ros
253be9913e update docs (#203) 2023-03-13 18:53:36 +01:00
Alessandro Ros
82dac32f6e format: fix compatibility with some TP-Link cameras (#174)
https://github.com/aler9/rtsp-simple-server/issues/1267
2023-01-22 19:32:17 +01:00
Alessandro Ros
f6438ed8d1 normalize file names (#173) 2023-01-22 11:44:20 +01:00
aler9
5f2ac979c5 move pkg/mpeg4audio into pkg/codecs/mpeg4audio 2022-12-27 17:30:53 +01:00
aler9
824fd75d18 rename MJPEG label into M-JPEG 2022-12-27 17:27:59 +01:00
aler9
aca56089c1 move codec-specific utilities into pkg/codecs 2022-12-27 17:19:56 +01:00
Alessandro Ros
91f18ab6d9 Add RTP/MJPEG decoder and encoder (#165)
* rename format.JPEG into format.MJPEG

* add examples/client-publish-format-mjpeg

* add rtp/mjpeg decoder and encoder
2022-12-27 13:43:23 +01:00
aler9
8320b1aceb improve coverage 2022-12-23 14:27:44 +01:00
aler9
d71991d929 improve coverage 2022-12-23 13:54:59 +01:00
Alessandro Ros
ae9dac0ad3 use random UUIDs as media IDs (#163)
* remove Medias.Clone(), Media.Clone(), Format.Clone()

* server: use random UUIDs as media IDs

* client: use random UUIDs as media IDs
2022-12-22 20:32:28 +01:00
aler9
e1c07a1c8d add VP8.CreateEncoder(), VP9.CreateEncoder() 2022-12-14 22:06:11 +01:00
aler9
60596c32d1 fix parsing of H264 tracks with empty sprop-parameter-sets 2022-12-13 19:02:01 +01:00
aler9
50d6b2e916 fix race condition when calling format.Clone() 2022-12-13 17:10:01 +01:00
aler9
6f452f32aa Merge branch 'v1' 2022-12-12 18:19:16 +01:00
aler9
46cbb885b7 improve coverage 2022-12-11 23:40:01 +01:00
aler9
0c13440721 rename rtpcodecs into formatdecenc 2022-12-11 22:56:59 +01:00
Alessandro Ros
a1396206b5 convert Tracks into Medias and Formats (#155)
* split tracks from medias

* move tracks into dedicated package

* move media into dedicated package

* edit Medias.Marshal() in order to return SDP

* add medias.Find() and simplify examples

* improve coverage

* fix rebase errors

* replace TrackIDs with MediaIDs

* implement media-specific and track-specific callbacks for reading RTCP and RTP packets

* rename publish into record, read into play

* add v2 tag

* rename tracks into formats
2022-12-11 22:03:22 +01:00