-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathChangeLog
12401 lines (10057 loc) · 532 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
=== release 1.22.0 ===
2023-01-23 19:29:34 +0000 Tim-Philipp Müller <[email protected]>
* NEWS:
* RELEASE:
* gst-plugins-bad.doap:
* meson.build:
Release 1.22.0
2023-01-23 16:28:08 +0000 Tim-Philipp Müller <[email protected]>
* po/hr.po:
* po/ro.po:
* po/zh_CN.po:
gst-plugins-bad: update translations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3773>
2023-01-23 23:29:08 +0900 Seungha Yang <[email protected]>
* sys/d3d11/gstd3d11compositor.cpp:
d3d11compositor: Workaround blending artifacts on Intel platform
Disable vendor implemented converter in d3d11compositor to workaround
artifacts
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3770>
2023-01-19 15:24:05 +0100 Jonas Danielsson <[email protected]>
* ext/wpe/WPEThreadedView.cpp:
* ext/wpe/WPEThreadedView.h:
* ext/wpe/gstwpesrcbin.cpp:
* ext/wpe/gstwpevideosrc.cpp:
wpe: Add 'run-javascript' action signal
Introduce way of running a script in the context of the internal
webView.
Fixes #1722
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3753>
2023-01-19 22:40:36 +0900 Seungha Yang <[email protected]>
* sys/win32ipc/gstwin32ipcvideosrc.cpp:
win32ipcvideosrc: Fix leak in fallback copy path
Clear shared memory after use
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3751>
2023-01-19 15:36:40 +0100 Edward Hervey <[email protected]>
* sys/va/gstvah264enc.c:
* sys/va/gstvah265enc.c:
va: Fix path leak
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3755>
=== release 1.21.90 ===
2023-01-13 19:08:48 +0000 Tim-Philipp Müller <[email protected]>
* NEWS:
* RELEASE:
* gst-plugins-bad.doap:
* meson.build:
Release 1.21.90
2023-01-12 22:17:24 +0900 Seungha Yang <[email protected]>
* gst-libs/gst/d3d11/gstd3d11memory.cpp:
d3d11memory: Fix potential crash in GstD3D11PoolAllocator
Allocator object can be the final refcount holder, when a GstD3D11Memory
is being released. Do unref allocator once there's no more
remaining operation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3715>
2023-01-12 22:14:30 +0900 Seungha Yang <[email protected]>
* gst-libs/gst/d3d11/gstd3d11memory.cpp:
d3d11memory: Remove GstD3D11PoolAllocator::dispose
Clear GstD3D11Device object in finalize method as well
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3715>
2023-01-11 15:41:21 +0000 Tim-Philipp Müller <[email protected]>
* po/LINGUAS:
* po/es.po:
* po/hr.po:
* po/ka.po:
* po/lt.po:
* po/nl.po:
* po/ru.po:
* po/sk.po:
* po/sl.po:
* po/sr.po:
* po/uk.po:
* po/zh_TW.po:
gst-plugins-bad: update translations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3711>
2023-01-11 14:53:39 +0000 Tim-Philipp Müller <[email protected]>
* scripts/dist-translations.py:
* scripts/meson.build:
Fix translation pot files when creating dist tarballs
Add version as per Translation Project requirements and
also add a .pot file without the ABI suffix.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3711>
2023-01-11 12:17:13 +0200 Sebastian Dröge <[email protected]>
* tools/gst-transcoder.c:
tools: Use `gst_macos_main()` on macOS
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1673
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3709>
2023-01-11 03:23:57 +0900 Seungha Yang <[email protected]>
* meson.build:
meson: gst-plugins-bad: Disable spammy MSVC warning
warning C5051: attribute 'noinline' requires at least '/std:c++20';
ignored
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3705>
2023-01-09 12:39:55 +0200 Sebastian Dröge <[email protected]>
* gst/mxf/mxfmetadata.c:
mxfmux: Add all local tags to the primer
No matter if they're allocated via GSlice or malloc(). The allocator is
completely irrelevant, all local tags need to be in the primer so they
can be handled.
This didn't have any effect in practice because all local tags that
appear in the muxer are allocated via GSlice. Only from the demuxer they
might be allocated via malloc().
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3699>
2022-12-15 18:42:26 +0000 Philippe Normand <[email protected]>
* docs/plugins/gst_plugins_cache.json:
* ext/aom/gstav1enc.c:
* ext/aom/gstav1enc.h:
av1enc: Add property for controlling max distance between 2 keyframes
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2743>
2022-07-11 11:03:16 +0530 Yatin Mann <[email protected]>
* docs/plugins/gst_plugins_cache.json:
* ext/aom/gstav1enc.c:
* ext/aom/gstav1enc.h:
aom: av1enc: Expose more properties
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2743>
2023-01-08 23:46:40 +0530 yatinmaan <[email protected]>
* ext/aom/gstav1enc.h:
aom: av1enc: Remove redundant enum variants from header
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2743>
2022-07-11 09:27:41 +0530 Yatin Mann <[email protected]>
* ext/aom/gstav1enc.c:
* ext/aom/gstav1enc.h:
aom: av1enc: Ensure that input pts is strictly increasing
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2743>
2022-07-04 19:55:59 +0530 Yatin Mann <[email protected]>
* ext/aom/gstav1enc.c:
aom: av1enc: Fix pts unit
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2743>
2023-01-02 18:34:59 +0900 ekwange <[email protected]>
* ext/directfb/dfbvideosink.c:
* ext/directfb/dfbvideosink.h:
dfbvideosink: Fix compile error
Fix some compile errors
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3670>
2023-01-01 19:19:03 -0500 Olivier Crête <[email protected]>
* gst-libs/gst/webrtc/nice/nice.c:
webrtc nice: Let libnice handle STUN/TURN DNS resolution
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3676>
2023-01-06 15:07:42 -0500 Olivier Crête <[email protected]>
* gst-libs/gst/webrtc/nice/meson.build:
* gst-libs/gst/webrtc/nice/nice.c:
webrtc: Change requirement to libnice 0.1.20
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3676>
2023-01-04 21:37:55 +0100 Mathieu Duponchelle <[email protected]>
* docs/meson.build:
docs: explicitly declare gir build dependencies
As the path to the gir file is passed to hotdoc.generate_doc() and
not the build target itself, meson doesn't know about the dependency.
In turn, as the CI doesn't build everything before building the
documentation target, some gir files might not exist, for instance
in the case of gst-rtsp-server, causing the output documentation to
be empty.
The error occurred silently because hotdoc accepts wildcards for
*-sources arguments, thus it won't warn about a missing gir file as
it is legitimate for glob matching to resolve to nothing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3686>
2023-01-04 18:55:08 -0300 Rodrigo Bernardes <[email protected]>
* sys/dvb/parsechannels.c:
dvbbasebin: don't rely on g_key_file_get_(integer|uint64) return
instead check if an error was returned, and fail if any
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3688>
2023-01-03 15:01:37 -0500 Olivier Crête <[email protected]>
* ext/srt/gstsrtobject.c:
srt: Avoid crash on unknown option
Use the correct field that is null instead of the struct value which
never is.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3672>
2022-12-30 10:30:38 -0500 Xavier Claessens <[email protected]>
* ext/qroverlay/gstbaseqroverlay.c:
qroverlay: Add qrcode-case-sensitive property
This allows to encode case sensitive strings, like wifi SSID/password.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3662>
2023-01-03 17:28:18 +0800 He Junyan <[email protected]>
* gst-libs/gst/codecs/gsth265decoder.c:
h265decoder: Fix a memory leak because of slice header.
The gst_h265_slice_hdr_free() should free the slice header just
parsed, not the priv->current_slice. Or, the memory leak will
happen because we do not free the slices in priv->nalu list.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3671>
2022-12-30 17:10:12 +0000 مهدي شينون (Mehdi Chinoune) <[email protected]>
* ext/opencv/meson.build:
meson: Accept latest version of opencv 4.x
We've been bumping along the maximum opencv 4.x version for years,
just accept all opencv versions till someone reports breakage.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1680
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3664>
2022-12-26 20:53:53 +0900 Seungha Yang <[email protected]>
* sys/va/gstvajpegdec.c:
vajpegdec: Set maybe-leaked flag on template caps
The fixup function could return new caps object
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3642>
2022-12-22 21:29:39 +0000 Philippe Normand <[email protected]>
* ext/webrtc/gstwebrtcbin.c:
* ext/webrtc/gstwebrtcstats.c:
* tests/check/elements/webrtcbin.c:
webrtcbin: Support for setting kind attribute on RTCRtpStreamStats
The attribute maps the `kind` property of the associated transceiver.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3630>
2022-12-23 01:00:57 +0900 Seungha Yang <[email protected]>
* gst-libs/gst/d3d11/gstd3d11memory.cpp:
* gst-libs/gst/d3d11/gstd3d11memory.h:
d3d11memory: Fix typo in vfunc name
s/set_actvie/set_active/g
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3627>
2022-12-19 19:53:28 +0900 Seungha Yang <[email protected]>
* sys/nvcodec/gstnvenc.c:
* sys/nvcodec/gstnvenc.h:
* sys/nvcodec/gstnvencoder.cpp:
nvcudaenc: Don't use default CUDA stream
Set non-default CUDA stream via NvEncSetIOCudaStreams() if possible,
so that NVENC's internal kernel function can run on the given CUDA
stream instead of default CUDA stream
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3615>
2022-12-14 10:35:53 +0100 Evgeny Pavlov <[email protected]>
* sys/amfcodec/gstamfav1enc.cpp:
* sys/amfcodec/gstamfav1enc.h:
* sys/amfcodec/include/components/VideoEncoderAV1.h:
* sys/amfcodec/meson.build:
* sys/amfcodec/plugin.cpp:
amfcodec: add support of AMF AV1 encoder
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3569>
2022-12-22 00:22:46 +0900 Seungha Yang <[email protected]>
* sys/nvcodec/gstcudabasetransform.c:
cudabasetransform: Update CUDA stream on context update
CUDA stream must be associated with updated CUDA context
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3618>
2022-12-21 14:36:31 +0800 He Junyan <[email protected]>
* sys/va/gstvafilter.c:
va: Delay the VAProcPipelineCaps query after context created.
The VAAPI vaQueryVideoProcPipelineCaps() requires the context as the
parameter. So far, we always pass VA_INVALID_ID and it can succeed.
But the API does not say that and in theory, a valid context is required.
Now the new platform really needs a valid context and so we have to
delay that query until the context is created.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3613>
2022-12-21 00:20:17 +0900 Seungha Yang <[email protected]>
* sys/nvcodec/gstnvdecoder.c:
nvdecoder: Use own CUDA stream in GL output path
Use the same CUDA stream passed to CuvidMapVideoFrame()
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3611>
2022-12-13 08:58:43 -0500 Xavier Claessens <[email protected]>
* meson.build:
Fix API visibility macros
This copies the logic from GLib discussed there:
https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2936
Beside being simpler, it also fix all public symbols being annotated
with dllexport when doing a static build, as discovered there:
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3540#note_1678335
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3567>
2022-12-19 18:41:46 +0900 Seungha Yang <[email protected]>
* sys/nvcodec/gstnvdec.c:
* sys/nvcodec/gstnvdecoder.c:
nvdec: Don't use default CUDA stream
NVDEC launches CUDA kernel function (ConvertNV12BLtoNV12 or so)
when CuvidMapVideoFrame() is called. Which seems to be
NVDEC's internal post-processing kernel function, maybe
to convert tiled YUV to linear YUV format or something similar.
A problem if we don't pass CUDA stream to the CuvidMapVideoFrame()
call is that the NVDEC's internel kernel function will use default CUDA stream.
Then lots of the other CUDA API calls will be blocked/serialized.
To avoid the unnecessary blocking, we should pass our own
CUDA stream object to the CuvidMapVideoFrame() call
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3605>
2022-12-16 15:03:12 +0100 Edward Hervey <[email protected]>
* gst/mpegtsdemux/mpegtsbase.c:
mpegts: Always clear packetizer on DISCONT push mode
If a discontinuity is detected in push mode, we need to clear the cached section
observations since they might have potentially changed.
This was only done properly when operating with TIME segments (dvb, udp,
adaptive demuxers, ...) but not with BYTE segments (such as with custom app/fd
sources).
We still don't want to flush out the PCR observations, since this might be
needed for seeking in push-based BYTE sources.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1650
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3584>
2022-12-17 20:04:01 +0900 Seungha Yang <[email protected]>
* sys/d3d11/gstd3d11window_win32.cpp:
d3d11videosink: Fixing focus lost on desktop layout change
Watch all message on the window thread, instead of internal window only.
Otherwise, some global window messages, such as desktop layout change,
wouldn't be handled by our window.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3593>
2022-12-17 01:01:00 +0530 Nirbheek Chauhan <[email protected]>
* sys/applemedia/avfvideosrc.m:
avfvideosrc: Report latency when doing screen capture
There is no `device` when doing screen capture, but there is always an
`input`, so use that to decide when we can reply to a latency query.
Without this, the latency query just fails.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3589>
2022-12-16 18:15:04 +0100 Victor Manuel Jaquez Leal <[email protected]>
* sys/va/gstvaav1dec.c:
vaav1dec: Remove double caps unref.
There was a duplicated caps unref raising a warning.
Also it reorgs the sorrounding code for simplicity.
Fixes: #1196
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3587>
2022-12-16 02:52:08 +0900 Seungha Yang <[email protected]>
* sys/d3d11/gstd3d11videosink.cpp:
* sys/d3d11/gstd3d11window.cpp:
* sys/d3d11/gstd3d11window.h:
* sys/d3d11/gstd3d11window_win32.cpp:
d3d11videosink: Move potentially time-consuming operations to ::prepare()
Move following tasks to ::prepare() from ::show_frame()
* CPU -> GPU upload
* GstD3D11Window object setup, including input caps change handling
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3574>
2022-12-16 21:42:50 +0900 Seungha Yang <[email protected]>
* sys/d3d11/gstd3d11window_win32.cpp:
d3d11videosink: Call ShowWindow() from window thread
... when rendering on external HWND. ShowWindow() will cause
synchronous message passing to window thread and then can be blocked.
At the same time, window thread can wait for GStreamer thread.
Instead of the synchronous call, queue the task to window message
and performs from the window thread.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3583>
2022-12-15 01:15:10 +0900 Seungha Yang <[email protected]>
* sys/d3d11/gstd3d11videosink.cpp:
* sys/d3d11/gstd3d11window.cpp:
* sys/d3d11/gstd3d11window.h:
* sys/d3d11/gstd3d11window_dummy.cpp:
* sys/d3d11/gstd3d11window_win32.cpp:
d3d11videosink: Fix deadlock when parent window is busy
Deadlock sequence:
* From a streaming thread, d3d11videosink sends synchronous message
to the parent window, so that internal (child) window can be
constructed on the parent window's thread
* App thread (parent window thread) is waiting for pipeline's
state change (to GST_STATE_NULL) but streaming thread is
blocked and waiting for app thread
To avoid the deadlock, GstD3D11WindowWin32 should send message
to the parent window asynchronously.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3570>
2022-12-13 12:23:56 +0100 Thibault Saunier <[email protected]>
* ext/wpe/gstwpevideosrc.cpp:
base:navigation: Cleanup navigation key modifiers enum
We were exposing the 'ALT' modifier as if we were guaranteeing its
accuracy but truth is we were only exposing configuration dependent
values.
Make the API simpler for now, the same way as Gtk3 was exposing it, and
when we have time to guarantee more values by making them take backends
configuration into account, we will expose those values in a accurate
way.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1402
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3565>
2022-10-18 12:17:04 +1100 Matthew Waters <[email protected]>
* docs/plugins/gst_plugins_cache.json:
* ext/webrtc/gstwebrtcbin.c:
* ext/webrtc/gstwebrtcbin.h:
* ext/webrtc/utils.c:
* ext/webrtc/utils.h:
* tests/check/elements/webrtcbin.c:
webrtc: implement support for msid values
Local msid values are taken from sink pad property, or fallback to the
previously used cname.
The remote msid values are exposed on the relevant src pads.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3106>
2022-12-13 04:31:24 +0900 Seungha Yang <[email protected]>
* gst-libs/gst/codecparsers/gsth264parser.h:
h264parser: Update doc for GST_H264_FRMAE_PACKING_TOP_BOTTOM
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1318>
2021-11-07 11:18:15 +1100 Brad Hards <[email protected]>
* gst-libs/gst/codecparsers/gsth264parser.h:
* sys/msdk/gstmsdkh264enc.c:
h264parser: typo fix in enum value
Old value is marked deprecated, new enum with same entry is added. Should be binary compatible.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1318>
2022-10-21 22:46:16 -0500 A. Wilcox <[email protected]>
* gst-libs/gst/mpegts/gstmpegtsdescriptor.c:
* tests/check/libs/mpegts.c:
mpegts: Handle when iconv doesn't support ISO 6937
Systems like musl libc don't support ISO 6937 in iconv. This ensures
that the MPEG-TS plugin can cope with that. There is existing support
in the plugin for other methods, so it seems to have been the original
intent anyway.
Fixes: #1314
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3245>
2022-12-11 10:12:25 +0100 Víctor Manuel Jáquez Leal <[email protected]>
* gst-libs/gst/va/gstvaallocator.c:
vaallocator: Fix gi annotations.
Remove spurious types and skip functions that returns VASurfaceID
which isn't exposed to introspection.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3557>
2022-11-22 12:32:52 +0100 Stéphane Cerveau <[email protected]>
* ext/zxing/gstzxing.cpp:
* ext/zxing/meson.build:
zxing: update to 1.4.0 tag
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3450>
2022-12-06 11:30:47 +0100 Edward Hervey <[email protected]>
* gst/mpegtsdemux/mpegtspacketizer.c:
mpegts: Check continuity counter on section streams
This wasn't really done, and is needed in order to detect potential section
changes for sections that have got identical information (such as when switching
between streams that have the same PAT/PMT pid and subtable information).
Other checks exist in tsbase to detect if the "new" PAT/PMT really is an update or not.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3530>
2022-12-08 06:05:25 +0900 Seungha Yang <[email protected]>
* gst-libs/gst/cuda/gstcudanvrtc.c:
cuda: Fix runtime compiler library loading on Windows
The cuda is a part of GPU driver but runtime compiler is a part of
cuda toolkit, which means the version number can be different.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3545>
2022-12-08 05:58:48 +0900 Seungha Yang <[email protected]>
* gst-libs/gst/cuda/gstcuda-private.h:
* gst-libs/gst/cuda/gstcudautils.c:
* gst-libs/gst/cuda/gstcudautils.h:
* sys/nvcodec/gstcudamemorycopy.c:
cuda: Hide memory copy util function
The method was intended to be used by only cudaupload/download elements
and not ready to be a part of public API
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3545>
2022-12-08 04:32:47 +0900 Seungha Yang <[email protected]>
* sys/winks/gstksvideosrc.c:
ksvideosrc: Warn for deprecated plugin use
This plugin should not be used any more
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3544>
2022-12-08 04:25:55 +0900 Seungha Yang <[email protected]>
* sys/winscreencap/gstdx9screencapsrc.c:
* sys/winscreencap/gstgdiscreencapsrc.c:
winscreencap: Warn for deprecated plugin use
This plugin should not be used any more
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3544>
2022-11-27 00:26:22 +0900 Seungha Yang <[email protected]>
* gst/proxy/gstproxysink.c:
proxysink: Post EOS message on EOS event
proxysink is actual sink (GST_ELEMENT_FLAG_SINK flag has configured)
so it should post EOS message.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3472>
2022-12-07 12:28:55 -0300 Thibault Saunier <[email protected]>
* gst/videoparsers/gsth264parse.c:
h264parse: Avoid setting wrong colorimetry info if the stream doesn't contain it
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3543>
2022-12-01 19:35:07 +0200 Marek Olejnik <[email protected]>
* gst-libs/gst/codecs/gsth265decoder.c:
h265decoder: Do not abort when failed to prepare ref pic set
Currently the element calls abort when failed to prepare reference
picture set. This can happent when the input stream is somehow
corrupted, like a rtsp strem with lost packets. Now it will only
return with GST_FLOW_ERROR instead of terminating whole process.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3505>
2022-12-07 10:21:52 +0200 Sebastian Dröge <[email protected]>
* gst/dvbsubenc/gstdvbsubenc.c:
dvbsubenc: Forward GAP events as-is if we wouldn't produce an end packet and are not in the middle of an existing subtitle
An end packet is only produced once for the last subtitle, so multiple
GAP events between subtitles would result only in a single end packet
and nothing else otherwise. This would potentially starve downstream
then, so instead forward the GAP events in that case.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3534>
2022-12-05 19:30:43 +0530 Nirbheek Chauhan <[email protected]>
* sys/directshow/dshowvideosink.cpp:
directshow: Fix build error with glib 2.75 and newer
Starting with glib 2.75, `NULL` is `nullptr`, which cannot be
implicitly coerced to `0`, unlike `NULL`. So explicitly pass `0`.
```
[3206/4524] Compiling C++ object subprojects/gst-plugins-bad/sys/directshow/gstdirectshow.dll.p/dshowvideosink.cpp.obj
FAILED: subprojects/gst-plugins-bad/sys/directshow/gstdirectshow.dll.p/dshowvideosink.cpp.obj
"cl" "-Isubprojects\gst-plugins-bad\sys\directshow\gstdirectshow.dll.p" "-Isubprojects\gst-plugins-bad\sys\directshow" "-I..\subprojects\gst-plugins-bad\sys\directshow" "-Isubprojects\gst-plugins-bad" "-I..\subprojects\gst-plugins-bad" "-Isubprojects\gst-plugins-base\gst-libs" "-I..\subprojects\gst-plugins-base\gst-libs" "-Isubprojects\gstreamer\libs" "-I..\subprojects\gstreamer\libs" "-Isubprojects\gstreamer" "-I..\subprojects\gstreamer" "-Isubprojects\orc" "-I..\subprojects\orc" "-I..\subprojects\gst-plugins-bad\sys\directshow\strmbase\baseclasses" "-Isubprojects\gst-plugins-base\gst-libs\gst\video" "-Isubprojects\gstreamer\gst" "-Isubprojects\gst-plugins-base\gst-libs\gst\audio" "-Isubprojects\gst-plugins-base\gst-libs\gst\tag" "-IC:/gst-install/include/glib-2.0" "-IC:/gst-install/lib/glib-2.0/include" "-IC:/gst-install/include" "/MD" "/nologo" "/showIncludes" "/utf-8" "/W2" "/EHsc" "/O2" "/Zi" "/wd4018" "/wd4146" "/wd4244" "/wd4305" "/utf-8" "/we4002" "/we4003" "/we4013" "/we4020" "/we4027" "/we4029" "/we4033" "/we4045" "/we4047" "/we4053" "/we4062" "/we4098" "/we4101" "/we4189" "/utf-8" "-D_MBCS" "/wd4189" "/wd4456" "/wd4701" "/wd4703" "/wd4706" "/wd4996" "-DHAVE_CONFIG_H" "/Fdsubprojects\gst-plugins-bad\sys\directshow\gstdirectshow.dll.p\dshowvideosink.cpp.pdb" /Fosubprojects/gst-plugins-bad/sys/directshow/gstdirectshow.dll.p/dshowvideosink.cpp.obj "/c" ../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp
../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(62): warning C5051: attribute 'noinline' requires at least '/std:c++20'; ignored
../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(123): error C2664: 'LRESULT SendMessageA(HWND,UINT,WPARAM,LPARAM)': cannot convert argument 3 from 'nullptr' to 'WPARAM'
../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(123): note: A native nullptr can only be converted to bool or, using reinterpret_cast, to an integral type
C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um\winuser.h(3690): note: see declaration of 'SendMessageA'
../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(635): error C2664: 'BOOL SystemParametersInfoA(UINT,UINT,PVOID,UINT)': cannot convert argument 2 from 'nullptr' to 'UINT'
../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(635): note: A native nullptr can only be converted to bool or, using reinterpret_cast, to an integral type
C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um\winuser.h(13153): note: see declaration of 'SystemParametersInfoA'
../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(1593): error C2664: 'LRESULT SendMessageA(HWND,UINT,WPARAM,LPARAM)': cannot convert argument 3 from 'nullptr' to 'WPARAM'
../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(1593): note: A native nullptr can only be converted to bool or, using reinterpret_cast, to an integral type
C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um\winuser.h(3690): note: see declaration of 'SendMessageA'
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3528>
2022-12-05 02:29:08 +0000 Tim-Philipp Müller <[email protected]>
* meson.build:
Back to development
=== release 1.21.3 ===
2022-12-05 01:28:21 +0000 Tim-Philipp Müller <[email protected]>
* NEWS:
* RELEASE:
* gst-plugins-bad.doap:
* meson.build:
Release 1.21.3
2022-12-04 12:25:41 +0000 Tim-Philipp Müller <[email protected]>
* ChangeLog:
* docs/random/ChangeLog-0.8:
Remove ChangeLog files from git repository
This information is tracked fully in the git repository, so
no point having the ChangeLog duplicate it, and it interferes
with grepping the repository.
We are going to create the ChangeLogs on the fly when generating
tarballs going forward (with a limited history), since it's still
valuable for tarball consumers to be able to easily see a list of
recent changes.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-project/-/issues/73
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3521>
2022-11-07 00:10:39 +0000 Tim-Philipp Müller <[email protected]>
* meson.build:
* scripts/gen-changelog.py:
meson: Generate ChangeLog files for release tarballs on dist
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3521>
2022-12-01 03:52:53 +0900 Seungha Yang <[email protected]>
* docs/plugins/gst_plugins_cache.json:
* sys/d3d11/plugin.cpp:
d3d11av1dec: Promote rank to primary + 1
... so that this element can have higher rank than the other software
AV1 decoders
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3495>
2022-12-02 07:03:30 +0100 Víctor Manuel Jáquez Leal <[email protected]>
* sys/va/gstvajpegdec.c:
vajpegdec: Reenable element negotiation.
negotiation vmethod were overwritten by vabasedec, leading to errors.
This was a regression of commit b6538e0560.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3509>
2022-12-01 13:28:16 +0100 Johan Sternerup <[email protected]>
* gst-libs/gst/webrtc/nice/nicestream.c:
webrtc: Fix possible use-after-free of GstWebRTCICETransport
Because of the asynchronous resolving of mDNS ICE candidates it is
possible that GstWebRTCICE outlives webrtcbin. This in turn prolongs
the lifetime of the GstWebRTCNiceStream objects via refs in
nice_stream_map. Thus the GstWebRTCICETransport objects held in
GstWebRTCNiceStream may be invalid at the time they are accessed by
the _on_candidate_gathering_done() callback since GstWebRTCNiceStream
doesn't take a reference to them. Doing so would create a circular
reference, so instead this commit introduces weak references to the
transport objects and then we can check if the objects are valid before
accessing them.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3502>
2022-11-28 20:42:29 +0100 Victor Manuel Jaquez Leal <[email protected]>
* sys/va/gstvaav1dec.c:
* sys/va/gstvabasedec.c:
* sys/va/gstvabasedec.h:
* sys/va/gstvah264dec.c:
* sys/va/gstvah265dec.c:
* sys/va/gstvajpegdec.c:
* sys/va/gstvampeg2dec.c:
* sys/va/gstvavp8dec.c:
* sys/va/gstvavp9dec.c:
va: Handle input caps change.
Update output caps if it's notified by baseclass
See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3328
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>
2022-11-27 13:00:20 +0100 Victor Manuel Jaquez Leal <[email protected]>
* sys/va/gstvaav1dec.c:
vaav1dec: Use gst_va_base_dec_set_output_state().
And even that vaav1dec doesn't use vabasedec negotiate vmethod, it should align
with the new scheme of using base's width & height for surface size and
output_info structure for downstream display size negotiation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>
2022-11-26 11:45:52 +0100 Victor Manuel Jaquez Leal <[email protected]>
* sys/va/gstvavp9dec.c:
vavp9dec: Use gst_va_base_dec_set_output_state().
As this element reopen the internal decoder differently, it only uses the helper
function to negotiate.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>
2022-11-28 19:31:57 +0100 Victor Manuel Jaquez Leal <[email protected]>
* sys/va/gstvampeg2dec.c:
vampeg2dec: Streams are progressive by default.
By initializating progressive, then interlaced streams are detected correctly.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>
2022-11-26 09:11:39 +0100 Victor Manuel Jaquez Leal <[email protected]>
* sys/va/gstvabasedec.c:
* sys/va/gstvabasedec.h:
* sys/va/gstvah264dec.c:
* sys/va/gstvah265dec.c:
* sys/va/gstvampeg2dec.c:
* sys/va/gstvavp8dec.c:
va: Add and use common decode negotiate vmethod.
This vmethod can be used by decoders with the same VA decoder reopen logic:
same profile, chroma, width and height.
Also a new public method called gst_va_base_dec_set_output_state() with the
common GStreamer code for setting the output state, which is always called by
the negotiate vmethod.
In order to do this refactoring, new variables in vabasedec have to be populated
by the decoders:
* width and height define the resolution set in VA decoder. In the case of H264
would be de coded_width and codec_height, or max_width and max_height in AV1.
* output_info is the downstream video info used for negotiation in
gst_va_base_dec_set_output_state().
* input_state, from codec parent class shall be also held by vabasedec
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>
2022-11-24 13:52:59 +0100 Víctor Manuel Jáquez Leal <[email protected]>
* sys/va/gstvaav1dec.c:
vaav1dec: Use gst_va_base_dec_prepare_output_frame().
And simplify a bit the code flow.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>
2022-11-24 13:15:04 +0100 Víctor Manuel Jáquez Leal <[email protected]>
* sys/va/gstvabasedec.c:
* sys/va/gstvabasedec.h:
* sys/va/gstvah264dec.c:
* sys/va/gstvajpegdec.c:
* sys/va/gstvampeg2dec.c:
* sys/va/gstvavp8dec.c:
* sys/va/gstvavp9dec.c:
va: Add and use gst_va_base_dec_prepare_output_frame().
This helper will do downstream negotiation and later will
allocate the output frame.
H265 and AV1 decoders don't use this approach since their output
frame allocation is different.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>
2022-11-23 18:29:58 +0100 Víctor Manuel Jáquez Leal <[email protected]>
* sys/va/gstvaav1dec.c:
* sys/va/gstvah264dec.c:
* sys/va/gstvah265dec.c:
* sys/va/gstvavp8dec.c:
va: Remove last_ret error handling in decoders.
It was used in the early development of the base classes. Now it
shouldn't be needed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>
2022-11-23 18:14:30 +0100 Víctor Manuel Jáquez Leal <[email protected]>
* sys/va/gstvaav1dec.c:
* sys/va/gstvabasedec.c:
* sys/va/gstvabasedec.h:
* sys/va/gstvah264dec.c:
* sys/va/gstvah265dec.c:
* sys/va/gstvajpegdec.c:
* sys/va/gstvampeg2dec.c:
* sys/va/gstvavp8dec.c:
* sys/va/gstvavp9dec.c:
va: Add and use gst_va_base_dec_process_output().
This function will copy the frame, if it's needed, and will apply buffer flags.
The function is used by all the decoders.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>
2022-12-01 22:50:30 +0800 He Junyan <[email protected]>
* sys/va/gstvaav1dec.c:
* sys/va/gstvabaseenc.c:
va: Fix the caps memory leak by gst_va_pool_new_with_config().
The gst_va_pool_new_with_config() will ref the caps, and so we need
to unref after that.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3503>
2022-11-30 13:33:49 +0100 Víctor Manuel Jáquez Leal <[email protected]>
* sys/va/gstvaav1dec.c:
* sys/va/gstvadevice.c:
* sys/va/gstvadevice.h:
* sys/va/gstvah264dec.c:
* sys/va/gstvah264enc.c:
* sys/va/gstvah265dec.c:
* sys/va/gstvah265enc.c:
* sys/va/gstvajpegdec.c:
* sys/va/gstvampeg2dec.c:
* sys/va/gstvavp8dec.c:
* sys/va/gstvavp9dec.c:
va: Add render node name in non-first devices.
There could be multi-GPU setups where the non-first has more
entrypoints than the first one, and the elements names are not
homogeneous, leading to pipeline building error.
This patch add the render node in the elements names when they belong
to the non-first device.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3491>
2022-11-26 21:02:00 +0100 Victor Manuel Jaquez Leal <[email protected]>
* sys/va/gstvafilter.c:
vafilter: Increase the caps for HDR.
As they might be other medatadata types.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3473>
2022-11-26 20:48:45 +0100 Victor Manuel Jaquez Leal <[email protected]>
* sys/va/gstvafilter.c:
vafilter: Increase the number of 3DLUT caps to 16.
To fix the warning on Alderlake
vafilter gstvafilter.c:534:gst_va_filter_ensure_filters:<vafilter0>
vaQueryVideoProcFiltersCaps: list argument exceeds maximum number
Increase the number of caps to 16 as vadumpcaps does.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3473>
2022-11-15 06:58:14 +0100 Víctor Manuel Jáquez Leal <[email protected]>
* tests/examples/va/vaenc-dynamic-reconfigure.c:
example: vaenc-dynamic-reconfigure: Support H265.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>
2022-05-04 10:42:59 +0800 He Junyan <[email protected]>
* sys/va/gstvah265enc.c:
va: Add H265 SCC profile support.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>
2022-05-02 23:14:32 +0800 He Junyan <[email protected]>
* sys/va/gstvah265enc.c:
va: Add extended formats support such as 10/12 bits, 4:2:2 and 4:4:4.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>
2022-04-25 15:49:31 +0800 He Junyan <[email protected]>
* sys/va/gstvaencoder.c:
* sys/va/gstvaencoder.h:
* sys/va/gstvah265enc.c:
va: enable multi tile support for H265 encoder.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>
2022-06-02 21:18:16 +0800 He Junyan <[email protected]>
* sys/va/gstvah265enc.c:
va: enable vah265lpenc for low power mode H265 encoder.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>
2022-04-18 22:36:09 +0800 He Junyan <[email protected]>
* sys/va/gstvah265enc.c:
va: Add the low-delay-b frame support for H265.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>
2022-04-06 17:06:20 +0800 He Junyan <[email protected]>
* sys/va/gstvaencoder.c:
* sys/va/gstvaencoder.h:
va: Add prediction direction attribute support for H265 encoder.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>
2022-03-25 21:55:28 +0800 He Junyan <[email protected]>
* sys/va/plugin.c:
va: Register and enable and the vah265enc plugin.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>
2022-03-25 21:54:30 +0800 He Junyan <[email protected]>
* sys/va/gstvah265enc.c:
* sys/va/gstvah265enc.h:
* sys/va/meson.build:
va: Implement the vah265enc plugin for va HEVC encoding.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>
2022-11-29 02:22:50 +0900 Seungha Yang <[email protected]>
* sys/mediafoundation/gstmfvideosrc.cpp:
mfvideosrc: Fix buffer leak
The allocated buffer should be released
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3479>
2022-11-29 02:10:42 +0900 Seungha Yang <[email protected]>
* sys/mediafoundation/gstmfsourcereader.cpp:
* sys/mediafoundation/gstwin32devicewatcher.cpp:
mediafoundation: Chain up from GObject::constructed
... so that GstTracer can trace it
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3479>
2022-11-29 02:06:11 +0900 Seungha Yang <[email protected]>
* sys/d3d11/gstd3d11videosink.cpp:
* sys/d3d11/gstd3d11window_corewindow.cpp:
* sys/d3d11/gstd3d11window_dummy.cpp:
* sys/d3d11/gstd3d11window_swapchainpanel.cpp:
* sys/d3d11/gstd3d11window_win32.cpp:
d3d11: Use correct ref/unref methods
Those objects are GstObject subclasses
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3479>
2022-11-25 20:19:22 +0900 Seungha Yang <[email protected]>
* sys/win32ipc/gstwin32ipcvideosrc.cpp:
win32ipcvideosrc: Fix property name and enum value mismatch
Make them consistent
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3465>
2022-11-25 20:14:43 +0900 Seungha Yang <[email protected]>
* sys/win32ipc/gstwin32ipcvideosrc.cpp:
win32ipcvideosrc: Protect pipe from flush thread
The pipe object must be protected against GstBaseSrc::unlock()
thread.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3465>
2022-11-25 18:38:27 +0800 He Junyan <[email protected]>
* gst-libs/gst/codecparsers/gsth264parser.c:
h264parser: Fix a typo in pred_weight_table parsing.
When setting default values, the reference list number of l1 is wrong.
Fix: https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/issues/336
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3464>
2022-11-22 17:01:37 +0800 Ma, Mingyang <[email protected]>
* sys/msdk/gstmsdkdec.c:
msdkdec: Update decoding pts
Update frame pts before calling gst_video_decoder_finish_frame, or frames may be lost when transcoding in specific stream
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3449>
2022-11-19 02:56:27 +0900 Seungha Yang <[email protected]>
* docs/plugins/gst_plugins_cache.json:
* meson_options.txt:
* sys/meson.build:
* sys/win32ipc/gstwin32ipcutils.cpp:
* sys/win32ipc/gstwin32ipcutils.h:
* sys/win32ipc/gstwin32ipcvideosink.cpp:
* sys/win32ipc/gstwin32ipcvideosink.h:
* sys/win32ipc/gstwin32ipcvideosrc.cpp:
* sys/win32ipc/gstwin32ipcvideosrc.h:
* sys/win32ipc/meson.build:
* sys/win32ipc/plugin.cpp:
* sys/win32ipc/protocol/win32ipcmmf.cpp:
* sys/win32ipc/protocol/win32ipcmmf.h:
* sys/win32ipc/protocol/win32ipcpipeclient.cpp:
* sys/win32ipc/protocol/win32ipcpipeclient.h:
* sys/win32ipc/protocol/win32ipcpipeserver.cpp:
* sys/win32ipc/protocol/win32ipcpipeserver.h:
* sys/win32ipc/protocol/win32ipcprotocol.cpp:
* sys/win32ipc/protocol/win32ipcprotocol.h:
* sys/win32ipc/protocol/win32ipcutils.cpp:
* sys/win32ipc/protocol/win32ipcutils.h:
win32ipc: Add WIN32 shared memory videosrc/sink elements
Windows supports various IPC methods but that's completely
different form that of *nix from implementation point of view.
So, instead of adding shared memory functionality to existing
shm plugin, new WIN32 shared memory source/sink elements
are implemented in this commit.
Each videosink (server) and videosrc (client) pair will communicate
using WIN32 named pipe and thus user should configure unique/proper
pipe name to them (e.g., \\.\pipe\MyPipeName).
Once connection is established, videosink will create named shared memory
object per frame and client will be able to consume the object
(i.e., memory mapped file handle) without additional copy operation.
Note that implementations under "protocol" directory are almost
pure C/C++ with WIN32 APIs except for a few defines and debug functions.
So, applications can take only the protocol part so that the application
can send/receive shared-memory object from/to the other end
even if it's not an actual GStreamer element.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3441>
2022-11-23 14:35:07 +0100 Jan Lorenz <[email protected]>
* sys/mediafoundation/gstmfcapturedshow.cpp:
mfvideosrc: check HRESULT of CreateClassEnumerator correctly
Fixes a crash during direct show device enumeration
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1599
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3460>
2022-11-22 15:27:38 -0500 Nicolas Dufresne <[email protected]>
* sys/kms/gstkmssink.h:
kmssink: Fix compilation without kernel headers
There was a drm/drm_mode.h included added recently, drm/ is usually
referencing the linux kernel header, but we only requires the libdrm
headers to be installed. On top of this, including drm_mode.h is never
needed as its already included by drm.h.
Fixes #1596
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3452>
2022-11-10 08:50:35 -0500 Daniel Morin <[email protected]>