Commit Graph

69 Commits

Author SHA1 Message Date
Alessandro Ros
fa94080e84 prevent decoders from returning empty NALUs (bluenviron/mediamtx#4346) (#726) 2025-03-22 22:45:54 +01:00
Alessandro Ros
a17e1f776e improve examples (#703)
* add client-play-format-av1-to-jpeg
* improve client-play-format-av1 to decode frames
* improve speed of sample decoders by using pointers instead of copies
* improve client-record-format-h264 and client-record-format-h265 to encode frames
* add client-record-format-av1
2025-02-19 22:00:49 +01:00
Alessandro Ros
ed078672e4 switch to mediacommon/v2 (#695) 2025-02-10 14:50:05 +01:00
dependabot[bot]
4779b35c23 Bump github.com/bluenviron/mediacommon from 1.13.4 to 1.14.0 (#694)
Bumps [github.com/bluenviron/mediacommon](https://github.com/bluenviron/mediacommon) from 1.13.4 to 1.14.0.
- [Commits](https://github.com/bluenviron/mediacommon/compare/v1.13.4...v1.14.0)

---
updated-dependencies:
- dependency-name: github.com/bluenviron/mediacommon
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-07 19:59:16 +01:00
Alessandro Ros
e963544973 fix compatibility with AVOID encoders (bluenviron/mediamtx#4183) (#688) 2025-02-01 13:36:02 +01:00
Alessandro Ros
4c8670a4b0 refactor format parser (#682) 2025-01-18 17:18:04 +01:00
dependabot[bot]
ec919809a4 Bump github.com/bluenviron/mediacommon from 1.13.2 to 1.13.3 (#674)
* Bump github.com/bluenviron/mediacommon from 1.13.2 to 1.13.3

Bumps [github.com/bluenviron/mediacommon](https://github.com/bluenviron/mediacommon) from 1.13.2 to 1.13.3.
- [Commits](https://github.com/bluenviron/mediacommon/compare/v1.13.2...v1.13.3)

---
updated-dependencies:
- dependency-name: github.com/bluenviron/mediacommon
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix lint

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2025-01-02 12:45:18 +01:00
Alessandro Ros
c548551701 prevent wrong results in format comparisons or when formats are used as keys (#673) 2025-01-01 12:55:03 +01:00
Chris Hiszpanski
44aaa0977a rtph264: accept non-compliant single FU-A frames (#649)
Some IP cameras (e.g. CostarHD) have been observed to emit single
fragment RTP FU-A packets, with start and end bit both set, for
sufficiently small H.264 P-frames. Rather than emit an error,
workaround such non-compliant frames.
2024-12-04 23:21:09 +01:00
Alessandro Ros
a19432fd87 bump Golang to 1.23 (#610) 2024-11-04 13:39:10 +01:00
Alessandro Ros
508d025097 prevent decoders from emitting corrupted frames (#638) 2024-10-23 21:10:37 +02:00
Alessandro Ros
f41b196241 add resetFragments() to all fragment-based decoders (#637) 2024-10-23 20:42:21 +02:00
Jesus Tejedor
b561229761 support H264 with payload type 35 from Bosh Cameras (#632)
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2024-10-14 12:18:56 +02:00
Alessandro Ros
1ca217ae3a simplify format.Unmarshal; improve tests (#631) 2024-10-09 16:21:01 +02:00
Alessandro Ros
2023bf1b00 fix panic when checking pts = dts on H265 (bluenviron/mediamtx#3754) (#617) 2024-09-11 11:43:15 +02:00
Kevin Wang
a99cc55082 mjpeg: fix decoding and encoding JPEG types 1-63 (#605)
Type 0 corresponds to YUV 4:2:2. Since this header is passed directly to the JPEG header, no additional changes are necessary for support. See the type field here: https://datatracker.ietf.org/doc/html/rfc2435#section-4.1

Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2024-08-25 21:27:05 +02:00
Alessandro Ros
92cf812d01 improve fuzz tests (#592) 2024-08-01 16:33:04 +02:00
Alessandro Ros
e2d1e6dab4 improve fuzz tests (#591) 2024-08-01 11:56:52 +02:00
Alessandro Ros
b160f5a614 fix panic in MPEG4Audio.GetConfig() (#590)
https://github.com/bluenviron/mediamtx/issues/3590
2024-08-01 11:54:49 +02:00
Alessandro Ros
4750375772 support decoding M-JPEG streams with any quantization (#566) (#583) 2024-06-22 23:32:31 +02:00
Alessandro Ros
fd4a9137cc support multichannel Opus (https://github.com/bluenviron/mediamtx/issues/3355) (#572) 2024-05-19 14:37:02 +02:00
Alessandro Ros
ef60c8c755 improve fuzz tests (#571) 2024-05-17 19:19:15 +02:00
Alessandro Ros
5eddb77935 bump mediacommon (#564) 2024-05-05 18:56:20 +02:00
Alessandro Ros
9da49cdf63 various performance improvements (#561) 2024-05-05 11:20:22 +02:00
Alessandro Ros
8c26f5f00a improve check on H264 padding (#559) 2024-05-05 11:19:35 +02:00
Alessandro Ros
1888996801 remove redundant AV1 check (#560) 2024-05-05 11:15:12 +02:00
Alessandro Ros
1d60608b6b fix VP9 decoding on iOS (https://github.com/bluenviron/mediamtx/issues/3060) (#553) 2024-04-29 10:22:27 +02:00
Alessandro Ros
24ed937861 update golangci-lint (#535) 2024-03-19 12:50:26 +01:00
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