forked from GStreamer/gst-rtsp-server
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathChangeLog
9899 lines (7238 loc) · 338 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.9.90 ===
2016-09-30 Sebastian Dröge <slomo@coaxion.net>
* configure.ac:
releasing 1.9.90
2016-09-17 13:17:19 +0100 Ian Jamison <ian.dev@arkver.com>
* gst/rtsp-server/rtsp-media-factory.c:
* gst/rtsp-server/rtsp-media.c:
* gst/rtsp-server/rtsp-stream.c:
rtsp-server: Hint that set_multicast_iface expects the name of the interface
To prevent any possibly confusion with IPs or anything else.
https://bugzilla.gnome.org/show_bug.cgi?id=771530
2016-09-18 09:58:55 -0400 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-media-factory.c:
* gst/rtsp-server/rtsp-media.c:
rtsp-media: Call g_free() instead of g_object_unref() on multicast-iface strings
https://bugzilla.gnome.org/show_bug.cgi?id=763000#c5
2016-09-14 11:31:15 +0200 Sebastian Dröge <sebastian@centricular.com>
* configure.ac:
configure: Depend on gstreamer 1.9.2.1
2016-09-10 20:52:31 +1000 Jan Schmidt <jan@centricular.com>
* autogen.sh:
* common:
Automatic update of common submodule
From b18d820 to f980fd9
2016-09-10 09:58:31 +1000 Jan Schmidt <jan@centricular.com>
* autogen.sh:
* common:
Automatic update of common submodule
From 6f2d209 to b18d820
2016-09-07 18:44:34 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: Remove unused _locked() variant of a function
It was added during refactoring.
2016-09-07 10:21:09 -0400 Xavier Claessens <xavier.claessens@collabora.com>
* gst/rtsp-server/rtsp-stream.c:
stream: cosmetic cleanup
https://bugzilla.gnome.org/show_bug.cgi?id=766612
2016-09-07 10:16:19 -0400 Xavier Claessens <xavier.claessens@collabora.com>
* gst/rtsp-server/rtsp-stream.c:
stream: Compare IP addresses case insensitive in more places
https://bugzilla.gnome.org/show_bug.cgi?id=766612
2016-09-07 10:12:18 -0400 Xavier Claessens <xavier.claessens@collabora.com>
* common:
* gst/rtsp-server/rtsp-stream.c:
stream: Fix leaked joined_bin
There is no need to keep a strong ref on it, and _leave_bin() was
setting it to NULL before calling g_clear_object() so it was leaked.
https://bugzilla.gnome.org/show_bug.cgi?id=766612
2016-09-06 19:15:23 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: Compare IP address strings case insensitive
Otherwise IPv6 addresses might fail this comparision.
2016-09-06 19:10:21 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: Bind multicast sockets to ANY as before
https://bugzilla.gnome.org/show_bug.cgi?id=766612#c48
2016-09-05 18:31:36 +0300 Kseniia <vasilchukkseniia@gmail.com>
* gst/rtsp-server/rtsp-session.c:
rtsp-session: Fix segfault when doing keep-alive after removing the session
If keep-alive happens after removing the session but before finalizing the
stream transport, we would segfault.
https://bugzilla.gnome.org/show_bug.cgi?id=750544
2016-09-05 18:04:50 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: Always create multicast UDP elements if the protocol flag is set
Adding them later will cause deadlocks due to
1) pre-rolling and staying in PAUSED with the unicast/TCP sinks
2) adding the multicast sink
3) waiting for it to get data to preroll again
3) never happens because the queues after the tee are full.
2016-09-05 16:32:57 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: Fix up various multicast related issues
2016-09-05 13:40:59 +0300 Sebastian Dröge <sebastian@centricular.com>
* tests/check/gst/stream.c:
tests: Fix compilation
2016-07-28 15:33:05 -0400 Xavier Claessens <xavier.claessens@collabora.com>
* gst/rtsp-server/rtsp-client.c:
* gst/rtsp-server/rtsp-stream.c:
* tests/check/gst/stream.c:
stream: revert back to create udpsrc/udpsink on DESCRIBE for unicast
This is basically reverting changes introduced in commit f62a9a7,
because it was introducing various regressions:
- It introduces a leak of udpsrc elements that got wrongly fixed by adding
an hash table in commit cba045e. We should have at most 4 udpsrc for unicast:
ipv4/ipv6, rtp/rtcp. They can be reused for all unicast clients.
- If a mcast client connects, it creates a new socket in SETUP to try to respect
the destination/port given by the client in the transport, and overrides the
socket already set on the udpsink element. That means that if we already had a
client connected, the source address on the udp packets it receives suddenly
changes.
- If a 2nd mcast client connects, the destination/port in its transport is
ignored but its transport wasn't updated.
What this patch does:
- Revert back to create udpsrc/udpsink for unicast clients on DESCRIBE.
- Always have a tee+queue when udp is enabled. This could be optimized
again in a later patch, but is more complicated. If no unicast clients
connects then those elements are useless, this could be also optimized
in a later patch.
- When mcast transport is added, it creates a new set of udpsrc/udpsink,
seperated from those for unicast clients. Since we already support only
one mcast address, we also create only one set of elements.
https://bugzilla.gnome.org/show_bug.cgi?id=766612
2016-07-28 15:20:31 -0400 Xavier Claessens <xavier.claessens@collabora.com>
* gst/rtsp-server/rtsp-stream.c:
stream: factor our plug_src function
https://bugzilla.gnome.org/show_bug.cgi?id=766612
2016-07-21 21:46:16 -0400 Xavier Claessens <xavier.claessens@collabora.com>
* gst/rtsp-server/rtsp-stream.c:
stream: factor out plug_sink function
https://bugzilla.gnome.org/show_bug.cgi?id=766612
2016-07-20 23:05:09 -0400 Xavier Claessens <xavier.claessens@collabora.com>
* gst/rtsp-server/rtsp-stream.c:
stream: small documentation clarification
https://bugzilla.gnome.org/show_bug.cgi?id=766612
2016-07-20 15:35:44 -0400 Xavier Claessens <xavier.claessens@collabora.com>
* gst/rtsp-server/rtsp-stream.c:
stream: rename addr_v4/6 to mcast_addr_v4/6 for clarity
https://bugzilla.gnome.org/show_bug.cgi?id=766612
2016-07-14 11:10:31 -0400 Xavier Claessens <xavier.claessens@collabora.com>
* gst/rtsp-server/rtsp-stream.c:
stream: Keep a ref on joined bin
https://bugzilla.gnome.org/show_bug.cgi?id=766612
2016-07-20 15:11:32 -0400 Xavier Claessens <xavier.claessens@collabora.com>
* gst/rtsp-server/rtsp-stream.c:
stream: code cleanup
https://bugzilla.gnome.org/show_bug.cgi?id=766612
2016-07-20 23:18:23 -0400 Xavier Claessens <xavier.claessens@collabora.com>
* gst/rtsp-server/rtsp-stream.c:
stream: small fix in error code path
https://bugzilla.gnome.org/show_bug.cgi?id=766612
2016-07-20 20:09:57 -0400 Xavier Claessens <xavier.claessens@collabora.com>
* gst/rtsp-server/rtsp-stream.c:
Revert "rtsp-stream: Fix crash on cleanup with shared media and multiple udpsrc"
This partly reverts commit cba045e1b19fad6e689e10206f57903e15f1229a,
but keeps unit tests.
https://bugzilla.gnome.org/show_bug.cgi?id=766612
2016-09-01 12:33:00 +0300 Sebastian Dröge <sebastian@centricular.com>
* configure.ac:
Back to development
=== release 1.9.2 ===
2016-09-01 12:32:51 +0300 Sebastian Dröge <sebastian@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* configure.ac:
* gst-rtsp-server.doap:
Release 1.9.2
2016-01-27 01:03:52 +0000 Tim-Philipp Müller <tim@centricular.com>
* config.h.meson:
* examples/meson.build:
* gst/meson.build:
* gst/rtsp-server/meson.build:
* gst/rtsp-sink/meson.build:
* meson.build:
* pkgconfig/meson.build:
* tests/check/meson.build:
* tests/meson.build:
Add support for Meson as alternative/parallel build system
https://github.com/mesonbuild/meson
2016-08-26 21:56:13 +0200 Josep Torra <n770galaxy@gmail.com>
* configure.ac:
* tests/check/Makefile.am:
build: silence error about pthread for 'make check' in osx
Fixes "clang: error: argument unused during compilation: '-pthread'"
2015-09-25 15:04:00 +0000 Nikita Bobkov <NikitaDBobkov@gmail.com>
* gst/rtsp-server/rtsp-client.c:
rtsp-client: Fix leaking of media in error cases
With additional fixes by Kseniya Vasilchuk <vasilchukkseniia@gmail.com>
and myself to make the media refcounting a bit easier to follow.
https://bugzilla.gnome.org/show_bug.cgi?id=755632
2016-08-02 15:08:22 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-client.c:
rtsp-client: Fix leaking of session in error cases
https://bugzilla.gnome.org/show_bug.cgi?id=755632
2016-07-11 21:16:04 +0200 Stefan Sauer <ensonic@users.sf.net>
* common:
Automatic update of common submodule
From f363b32 to f49c55e
2016-07-06 13:51:15 +0300 Sebastian Dröge <sebastian@centricular.com>
* configure.ac:
Back to development
=== release 1.9.1 ===
2016-07-06 13:28:12 +0300 Sebastian Dröge <sebastian@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* configure.ac:
* gst-rtsp-server.doap:
Release 1.9.1
2016-06-24 02:02:20 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
* configure.ac:
configure: Need to add -DGST_STATIC_COMPILATION when building only statically
https://bugzilla.gnome.org/show_bug.cgi?id=767463
2016-06-21 11:49:02 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* common:
Automatic update of common submodule
From ac2f647 to f363b32
2016-04-14 22:56:11 -0700 Aleix Conchillo Flaqué <aleix@oblong.com>
* gst/rtsp-server/rtsp-sdp.c:
* gst/rtsp-server/rtsp-sdp.h:
* gst/rtsp-server/rtsp-stream.c:
* gst/rtsp-server/rtsp-stream.h:
sdp: add rollover counters for all sender SSRC
We add different crypto sessions in MIKEY, one for each sender
SSRC. Currently, all of them will have the same security policy, 0.
The rollover counters are obtained from the srtpenc element using the
"stats" property.
https://bugzilla.gnome.org/show_bug.cgi?id=730539
2016-06-07 20:44:42 +0100 Tim-Philipp Müller <tim@centricular.com>
* gst/rtsp-server/rtsp-media-factory.h:
* gst/rtsp-server/rtsp-server.h:
docs: fix some typos
2016-05-25 10:28:43 +0100 Tim-Philipp Müller <tim@centricular.com>
* gst/rtsp-server/Makefile.am:
g-i: pass compiler env to g-ir-scanner
It's what introspection.mak does as well. Should
fix spurious build failures on gnome-continuous
(caused by g-ir-scanner getting compiler details
via python which is broken in some environments
so passing the compiler details bypasses that).
2016-05-18 16:48:44 +0100 Ian <ian.arkver.dev@gmail.com>
* gst/rtsp-server/rtsp-session.c:
rtsp-session: RFC2326 does not allow a space between ; and timeout in the Session header
This works with rtspsrc and live555, but fails with e.g. ffmpeg.
https://bugzilla.gnome.org/show_bug.cgi?id=766619
2016-03-07 14:48:38 +0100 Edward Hervey <bilboed@bilboed.com>
* gst/rtsp-sink/gstrtspclientsink.c:
rtspclientsink: Check return value of sscanf
And just make sure we always have 0/0 if we have an error
CID #1352031
2016-04-25 08:55:25 -0400 Jake Foytik <jake.foytik@ipconfigure.com>
* gst/rtsp-server/rtsp-stream.c:
* tests/check/gst/rtspserver.c:
* tests/check/gst/stream.c:
rtsp-stream: Fix crash on cleanup with shared media and multiple udpsrc
- Unicast udpsrcs are now managed in a hash table. This allows for proper cleanup in with shared streams and fixes a memory leak.
- Unicast udpsrcs are now properly cleaned up when shared connections exit. See the update_transport() function.
- Create unit test for shared media.
https://bugzilla.gnome.org/show_bug.cgi?id=764744
2016-04-11 10:55:23 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: Always bind to ANY when address is a multicast address and not only on Windows
For IPv6 addresses, binding to a multicast group does not work on Linux
either. Always bind to ANY and then later join the multicast group.
https://bugzilla.gnome.org/show_bug.cgi?id=764679
2016-04-14 10:05:02 +0100 Julien Isorce <j.isorce@samsung.com>
* common:
Automatic update of common submodule
From 6f2d209 to ac2f647
2016-04-06 10:09:46 +0200 Patricia Muscalu <patricia@axis.com>
* gst/rtsp-server/rtsp-thread-pool.c:
rtsp-thread-pool: explained why GSource is a part of ThreadImpl
Clarified why it is necessary to add source information to
GstRTSPThreadImpl. See the reported bug in GLib:
https://bugzilla.gnome.org/show_bug.cgi?id=720186
for more information.
https://bugzilla.gnome.org/show_bug.cgi?id=761702
2016-04-04 12:58:38 +0300 Sebastian Dröge <sebastian@centricular.com>
* examples/Makefile.am:
examples: Clean up CFLAGS/LDADD even more
The internal .la should come first and is part of LDADD, as is
GST_CFLAGS/LIBS.
2016-04-04 12:39:39 +0300 Sebastian Dröge <sebastian@centricular.com>
* examples/Makefile.am:
examples: Clean up CFLAGS/LDADD to link with the correct versions of all libraries
2016-04-03 12:06:29 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/Makefile.am:
rtsp-server: Use $(GST_NET_LIBS) / $(GST_NET_CFLAGS)
2015-12-30 18:39:05 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-client.c:
* gst/rtsp-server/rtsp-media-factory.c:
* gst/rtsp-server/rtsp-media-factory.h:
* gst/rtsp-server/rtsp-media.c:
* gst/rtsp-server/rtsp-media.h:
* gst/rtsp-server/rtsp-sdp.c:
* gst/rtsp-server/rtsp-stream.c:
* gst/rtsp-server/rtsp-stream.h:
rtsp-server: Implement clock signalling according to RFC7273
For NTP and PTP clocks we signal the actual clock that is used and signal
the direct media clock offset.
For all other clocks we at least signal that it's the local sender clock.
This allows receivers to know which clock was used to generate the media and
its RTP timestamps. Receivers can then implement network synchronization,
either absolute or at least relative by getting the sender clock rate directly
via NTP/PTP instead of estimating it from RTP timestamps and packet receive
times.
https://bugzilla.gnome.org/show_bug.cgi?id=760005
2016-03-02 19:42:58 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-sink/gstrtspclientsink.c:
rtspclientsink: Add support for setting the multicast interface
https://bugzilla.gnome.org/show_bug.cgi?id=763000
2016-03-02 19:42:13 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-media-factory.c:
* gst/rtsp-server/rtsp-media-factory.h:
* gst/rtsp-server/rtsp-media.c:
* gst/rtsp-server/rtsp-media.h:
* gst/rtsp-server/rtsp-stream.c:
* gst/rtsp-server/rtsp-stream.h:
rtsp-media: Add support for setting the multicast interface
https://bugzilla.gnome.org/show_bug.cgi?id=763000
2016-03-07 08:50:01 +0900 Vineeth TM <vineeth.tm@samsung.com>
* gst/rtsp-sink/gstrtspclientsink.c:
rtspclientsink: use new gst_element_class_add_static_pad_template()
https://bugzilla.gnome.org/show_bug.cgi?id=763196
2016-03-24 13:33:43 +0200 Sebastian Dröge <sebastian@centricular.com>
* configure.ac:
Back to development
=== release 1.8.0 ===
2016-03-24 13:00:35 +0200 Sebastian Dröge <sebastian@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* configure.ac:
* gst-rtsp-server.doap:
Release 1.8.0
2016-03-16 23:35:09 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: Don't set the state of the appsrc from PLAYING to PAUSED again during setup
This would get us NO_PREROLL in the bin again and break seeking.
Thanks to Carlos Rafael Giani for helping to debug this!
https://bugzilla.gnome.org/show_bug.cgi?id=740509
=== release 1.7.91 ===
2016-03-15 12:26:13 +0200 Sebastian Dröge <sebastian@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* configure.ac:
* gst-rtsp-server.doap:
Release 1.7.91
2016-03-10 13:54:38 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: Ensure that the pipeline is live and later-added udpsrcs are syncing the state with the parent bin
Without this, RECORD pipelines are broken because
a) we wait for ASYNC_DONE which never happens anymore because udpsrc would be
added later. Previously it was there earlier and due to NO_PREROLL caused the
pipeline to preroll immediately
b) the udpsrc for the pipeline is added later and never set to PLAYING state,
as the corresponding code previously was only for PLAY pipelines.
https://bugzilla.gnome.org/show_bug.cgi?id=763281
2016-03-11 01:22:54 +1100 Jan Schmidt <jan@centricular.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: Fix typo in the docstring
gst_rtsp_stream_set_client_side -> gst_rtsp_stream_is_client_side
2016-03-05 10:52:11 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: Disable multicast loopback for all our sockets
On Windows this is a receiver-side setting, on Linux a sender-side setting. As
we provide a socket ourselves to udpsrc, udpsrc is never setting the multicast
loopback setting on the socket... while udpsink does which unfortunately has
no effect here on Windows but on Linux.
https://bugzilla.gnome.org/show_bug.cgi?id=757488
2016-03-03 15:07:06 +0100 Patricia Muscalu <patricia@axis.com>
* tests/check/gst/stream.c:
stream tests: added new tests
Test a case when the address pool only contains multicast addresses
and the client is requesting unicast udp.
Added tests for multicast ports allocation.
https://bugzilla.gnome.org/show_bug.cgi?id=757488
2016-03-04 13:51:12 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: Only bind multicast sockets to ANY on Windows
On Linux it is still needed to bind to the multicast address
to filter out random other packets, while on Windows binding
to multicast addresses just fails.
2016-03-03 10:41:51 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: Only use the address pool for unicast UDP if it contains unicast addresses
Otherwise we fail to allocate UDP ports if the pool only contains multicast
addresses, which is something that used to work before. For unicast addresses
if the pool contains none, we just allocate them as if there is no pool at
all.
https://bugzilla.gnome.org/show_bug.cgi?id=757488
2016-03-02 11:48:49 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-client.c:
* gst/rtsp-server/rtsp-stream.c:
rtsp-server: Fix indentation
2016-03-02 11:47:47 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: Don't bind the sockets to multicast addresses
This works on Linux but fails completely on Windows. You're supposed
to bind to ANY and then join the multicast group.
https://bugzilla.gnome.org/show_bug.cgi?id=757488
=== release 1.7.90 ===
2016-03-01 19:00:45 +0200 Sebastian Dröge <sebastian@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* configure.ac:
* gst-rtsp-server.doap:
Release 1.7.90
2016-02-26 12:42:51 +0200 Sebastian Dröge <sebastian@centricular.com>
* common:
Automatic update of common submodule
From b64f03f to 6f2d209
2016-02-24 00:10:52 +1100 Jan Schmidt <jan@centricular.com>
* gst/rtsp-sink/gstrtspclientsink.c:
* tests/check/gst/rtspclientsink.c:
rtspsink: Fix some leaks in rtspclientsink and the unit test.
https://bugzilla.gnome.org/show_bug.cgi?id=762525
2016-02-23 15:01:22 +0100 Patricia Muscalu <patricia@axis.com>
* tests/check/gst/media.c:
* tests/check/gst/rtspclientsink.c:
* tests/check/gst/rtspserver.c:
* tests/check/gst/stream.c:
tests: unit test fixes
Removed port allocation test from the media suite.
The port allocation failure is now in the stream suite.
rtspserver:
Make sure that the media is suspended after the DESCRIBE request
before reconfiguring the UDP sinks.
rtspclientsink:
In the RECORD case we have to set async property to false
for the appsink element in the test in order to make sure
that the media pipeline doesn't hang in start_preroll().
https://bugzilla.gnome.org/show_bug.cgi?id=757488
2016-02-23 14:59:32 +0100 Patricia Muscalu <patricia@axis.com>
* gst/rtsp-server/rtsp-client.c:
* gst/rtsp-server/rtsp-stream.c:
* gst/rtsp-server/rtsp-stream.h:
rtsp-stream: postpone UDP socket allocation until SETUP
Postpone the allocation of the UDP sockets until we know
what transport has been chosen by the client.
Both unicast and multicast UDP sources are created in one
function.
https://bugzilla.gnome.org/show_bug.cgi?id=757488
2016-01-13 11:29:35 +0100 Patricia Muscalu <patricia@axis.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: postpone the creation of the UDP sources
Code refactoring: allocate the UDP ports after the sender and
the reciver parts have been created.
We postpone the creation of the UDP sources until the UDP
ports have been allocated.
https://bugzilla.gnome.org/show_bug.cgi?id=757488
2016-01-13 10:55:40 +0100 Patricia Muscalu <patricia@axis.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: added function for setting UDP sources to PLAYING state
Code refactoring: Introduced a function for setting UDP sources
to PLAYING state.
https://bugzilla.gnome.org/show_bug.cgi?id=757488
2015-11-20 15:34:43 +0100 Patricia Muscalu <patricia@axis.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: added function for creating and configuring UDP sources
Code refactoring: create and configure UDP sources in a separate function.
https://bugzilla.gnome.org/show_bug.cgi?id=757488
2015-11-20 14:43:38 +0100 Patricia Muscalu <patricia@axis.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: added function for RTP/RTCP socket configuration
Code refactoring: configure RTP and RTCP sockets for UDP sinks
in a separate function.
https://bugzilla.gnome.org/show_bug.cgi?id=757488
2015-11-20 08:38:42 +0100 Patricia Muscalu <patricia@axis.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: added function for creating and configuring UDP sinks
Code refactoring: create and configure UDP sinks in a separate function.
https://bugzilla.gnome.org/show_bug.cgi?id=757488
2015-11-19 14:09:25 +0100 Patricia Muscalu <patricia@axis.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: added helper function for creating the sender/receiver parts
Code refactoring: introduced helper function for creating
the receiver and the sender parts of the streaming pipeline.
https://bugzilla.gnome.org/show_bug.cgi?id=757488
2016-02-19 12:38:42 +0200 Sebastian Dröge <sebastian@centricular.com>
* configure.ac:
Back to development
=== release 1.7.2 ===
2016-02-19 12:03:18 +0200 Sebastian Dröge <sebastian@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* configure.ac:
* gst-rtsp-server.doap:
Release 1.7.2
2016-02-18 15:20:05 +0000 Julien Isorce <j.isorce@samsung.com>
* pkgconfig/gstreamer-rtsp-server-uninstalled.pc.in:
uninstalled.pc: add support for non libtool build systems
Currently the .la path is provided which requires to use libtool as
mentioned in the GStreamer manual section-helloworld-compilerun.html.
It is fine as long as the application is built using libtool.
So currently it is not possible to compile a GStreamer application
within gst-uninstalled with CMake or other build system different
than autotools.
This patch allows to do the following in gst-uninstalled env:
gcc test.c -o test $(pkg-config --cflags --libs gstreamer-1.0 \
gstreamer-rtsp-server-1.0)
Previously it required to prepend libtool --mode=link
https://bugzilla.gnome.org/show_bug.cgi?id=720778
2016-02-09 10:34:22 +0000 Luis de Bethencourt <luisbg@osg.samsung.com>
* gst/rtsp-sink/gstrtspclientsink.c:
rtspclientsink: remove check for impossible condition
Goto error label checks stream to see if it needs to be unreferenced before
returning, but this goto jumps happens before the stream is ever set, so it
will always be NULL in this error label.
CID #1352034
2016-02-08 23:33:03 +0000 Luis de Bethencourt <luisbg@osg.samsung.com>
* gst/rtsp-sink/gstrtspclientsink.c:
rtspclientsink: clean switch statements
Coverity demands for fallthrough statements to be clearly commented,
to distinguish from accidental fall throughs. And it also needs all
cases to finish with a break, even if the break is never going to be
executed like in the case of a continue jump.
CID #1352039
CID #1352040
2016-02-05 20:03:01 -0300 Thiago Santos <thiagoss@osg.samsung.com>
* tests/check/Makefile.am:
tests: extend the AM_TESTS_ENVIRONMENT from check.mak
To get the CK_DEFAULT_TIMEOUT defined for all tests
Also removes a 120 seconds timeout that was set as default
explicitly in this module
https://bugzilla.gnome.org/show_bug.cgi?id=761472
2016-02-05 18:11:41 -0300 Thiago Santos <thiagoss@osg.samsung.com>
* autogen.sh:
* common:
Automatic update of common submodule
From 86e4663 to b64f03f
2016-02-02 09:01:51 +0100 Steven Hoving <sh@bigbrother.nl>
* gst/rtsp-server/rtsp-media.c:
rtsp-media: fix state_lock not locked again when preroll fails
https://bugzilla.gnome.org/show_bug.cgi?id=761399
2016-01-28 22:05:56 +0100 Sebastian Dröge <sebastian@centricular.com>
* configure.ac:
configure: Move plugin specific flags below all the others
They use some of the other flags, like $GST_ALL_LDFLAGS which is adding
-no-undefined. And -no-undefined is required on Windows to build DLLs.
2016-01-28 04:58:00 +1100 Jan Schmidt <jan@centricular.com>
* gst/rtsp-sink/gstrtspclientsink.c:
rtspclientsink: Simplify slightly using new -base API
Use the new Mikey and SDP API in the base plugins libs
to simplify some code.
https://bugzilla.gnome.org/show_bug.cgi?id=758180
2015-11-17 01:12:28 +1100 Jan Schmidt <jan@centricular.com>
* .gitignore:
* configure.ac:
* gst/Makefile.am:
* gst/rtsp-sink/Makefile.am:
* gst/rtsp-sink/gstrtspclientsink.c:
* gst/rtsp-sink/gstrtspclientsink.h:
* gst/rtsp-sink/plugin.c:
* tests/check/Makefile.am:
* tests/check/gst/rtspclientsink.c:
rtspsink: Add rtspclientsink element
Add an rtspclientsink element that accepts streams for which
there is a registered payloader and sends them to
an RTSP server using RECORD.
Sending is synchronised to the pipeline clock. Payload-types
are automatically selected. The 'new-payloader' signal is fired
for custom configuration of payloaders when they are created.
Can now stream a movie like this:
receiver:
./test-record "( decodebin name=depay0 ! videoconvert ! autovideosink \
decodebin name=depay1 ! audioconvert ! autoaudiosink )"
sender:
gst-launch-1.0 filesrc location=file-with-aac-and-h264.mp4 ! qtdemux name=d ! \
queue ! aacparse ! rtspclientsink location=rtsp://127.0.0.1:8554/test name=s \
https://bugzilla.gnome.org/show_bug.cgi?id=758180
2015-11-17 01:12:28 +1100 Jan Schmidt <jan@centricular.com>
* gst/rtsp-server/rtsp-stream.c:
* gst/rtsp-server/rtsp-stream.h:
rtsp-stream: Add functions for using rtsp-stream from the client
Add a boolean to indicate that the rtsp-stream is running on the
'client' side of an RTSP connection, for sending streams via
RECORD. In that case, the roles of the client/server ports
in transport setup are swapped.
https://bugzilla.gnome.org/show_bug.cgi?id=758180
2015-11-17 01:12:28 +1100 Jan Schmidt <jan@centricular.com>
* gst/rtsp-server/rtsp-sdp.c:
* gst/rtsp-server/rtsp-sdp.h:
rtsp-sdp: Add gst_rtsp_sdp_from_stream()
A new function that adds info from a GstRTSPStream into an SDP message.
https://bugzilla.gnome.org/show_bug.cgi?id=758180
2016-01-28 09:22:18 +0100 Steven Hoving <sh@bigbrother.nl>
* gst/rtsp-server/rtsp-media.c:
rtsp-media: Fix mutex beeing unlocked while they should be locked
https://bugzilla.gnome.org/show_bug.cgi?id=761226
2016-01-15 07:01:37 +0000 Tim-Philipp Müller <tim@centricular.com>
* gst/rtsp-server/rtsp-media-factory.c:
rtsp-media-factory: add missing break in "clock" property setter
CID 1348453
2016-01-05 13:10:36 +0100 Srimanta Panda <srimanta@axis.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: fixed assert during update transport
When RTSP server trying update transport during multicast, it throws an
assert. The assert is thrown because it is trying to get the parent of
an non-existing funnel element.
https://bugzilla.gnome.org/show_bug.cgi?id=760150
2016-01-03 17:26:31 +0000 Tim-Philipp Müller <tim@centricular.com>
* gst/rtsp-server/rtsp-permissions.h:
* gst/rtsp-server/rtsp-thread-pool.h:
* gst/rtsp-server/rtsp-token.h:
docs: remove dummy function declarations with G_INLINE_FUNC for gtk-doc
gtk-doc can handle static inline functions just fine these days,
there's no need for this stuff any more.
2015-10-07 18:53:01 +0900 Hyunjun Ko <zzoon.ko@samsung.com>
* gst/rtsp-server/rtsp-media.c:
* gst/rtsp-server/rtsp-sdp.c:
sdp: replace duplicated codes to call new base sdp apis
https://bugzilla.gnome.org/show_bug.cgi?id=745880
2015-12-30 16:34:30 +0200 Sebastian Dröge <sebastian@centricular.com>
* examples/test-netclock.c:
test-netclock: Use the new API to configure a clock directly
2015-12-30 16:31:13 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-media-factory.c:
* gst/rtsp-server/rtsp-media-factory.h:
* gst/rtsp-server/rtsp-media.c:
* gst/rtsp-server/rtsp-media.h:
rtsp-media: Add API to directly configure a clock on the media pipelines
2015-12-30 16:43:17 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-media.c:
rtsp-media: Fix typo in docs gst_rtsp_media_set_latncy() -> latency()
2015-12-30 16:30:38 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-media-factory.c:
rtsp-media-factory: Add FIXME for 2.0
2015-12-30 16:29:45 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: Fix indentation
2015-12-22 12:08:02 +0100 Sebastian Rasmussen <sebras@hotmail.com>
* gst/rtsp-server/rtsp-media.c:
rtsp-media: Do not prepare media after media times out
Deferred calls to start_prepare() can be deferred past the point until
which wait_preroll() and by proxy gst_rtsp_media_get_status() is
prepared to wait. Previously there was no lock and no check for this
situation. This meant that a media could be prepared and unprepared
simultaneously by two different threads. Now a lock is in place and a
suitable check is done.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=759773
2015-12-09 18:24:24 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-client.c:
* gst/rtsp-server/rtsp-media-factory.c:
* gst/rtsp-server/rtsp-media-factory.h:
* gst/rtsp-server/rtsp-media.c:
* gst/rtsp-server/rtsp-media.h:
rtsp-media: Add property to decide if sending media should be stopped when a client disconnects without TEARDOWN
Without TEARDOWN it might be desireable to keep the media running and continue
sending data to the client, even if the RTSP connection itself is
disconnected.
Only do this for session medias that have only UDP transports. If there's at
least on TCP transport, it will stop working and cause problems when the
connection is disconnected.
https://bugzilla.gnome.org/show_bug.cgi?id=758999
2015-12-24 15:29:33 +0100 Sebastian Dröge <sebastian@centricular.com>
* configure.ac:
Back to development
=== release 1.7.1 ===
2015-12-24 14:54:06 +0100 Sebastian Dröge <sebastian@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* configure.ac:
* gst-rtsp-server.doap:
Release 1.7.1
2015-12-21 00:43:49 +0100 Koop Mast <kwm@rainbow-runner.nl>
* configure.ac:
configure: Make -Bsymbolic check work with clang.
Update the -Bsymbolic check with the version glib has. This version
works with clang.
https://bugzilla.gnome.org/show_bug.cgi?id=759713
2015-11-17 22:30:54 -0500 Olivier Crête <olivier.crete@collabora.com>
* gst/rtsp-server/rtsp-session-pool.c:
rtsp-session-pool: Avoid dollar sign ($) in session ids
Live555 in VLC strips off dollar signs and then gets very confused,
we don't loose too much entropy by just skipping it.
2015-11-10 14:17:18 -0500 Xavier Claessens <xavier.claessens@collabora.com>
* gst/rtsp-server/rtsp-address-pool.h:
* gst/rtsp-server/rtsp-auth.h:
* gst/rtsp-server/rtsp-client.h:
* gst/rtsp-server/rtsp-media-factory-uri.h:
* gst/rtsp-server/rtsp-media-factory.h:
* gst/rtsp-server/rtsp-media.h:
* gst/rtsp-server/rtsp-mount-points.h:
* gst/rtsp-server/rtsp-permissions.h:
* gst/rtsp-server/rtsp-server.h:
* gst/rtsp-server/rtsp-session-media.h:
* gst/rtsp-server/rtsp-session-pool.h:
* gst/rtsp-server/rtsp-session.h:
* gst/rtsp-server/rtsp-stream-transport.h:
* gst/rtsp-server/rtsp-stream.h:
* gst/rtsp-server/rtsp-thread-pool.h:
* gst/rtsp-server/rtsp-token.h:
rtsp-server: Add g_autoptr() support to all types
https://bugzilla.gnome.org/show_bug.cgi?id=754464
2015-12-08 08:27:20 +0100 Srimanta Panda <srimanta@axis.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: fixed valgrind error
Fixed the valgrind error in unit test. The UDP source created during
gst_rtsp_stream_join_bin() was not released while destroying the rtp
bin.
https://bugzilla.gnome.org/show_bug.cgi?id=759010
2015-12-07 09:11:35 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
* autogen.sh:
* common:
Automatic update of common submodule
From b319909 to 86e4663
2015-11-18 11:14:39 +0100 Srimanta Panda <srimanta@axis.com>
* gst/rtsp-server/rtsp-client.c:
rtsp-client: suspend media during setup request
SETUP request from clients needs to suspend the media to clear the
prerolled buffers. Otherwise it will not affect the prerolled buffer
and the prerolled buffers will be incorrect (for example block-size
from setup request will not affect the prerolled buffer unless the
media is suspended).
https://bugzilla.gnome.org/show_bug.cgi?id=758268
2015-12-04 08:01:37 +0100 Srimanta Panda <srimanta@axis.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: create stream pipeline based on transport
Based on the protocol, create the rtsp stream pipeline. If only TCP or
only UDP is set as the transport protocol, it will not add the extra tee
or queue element to the pipeline. Both these elements will be added, if
it supports both TCP and UDP protocols. This improves the pipeline
performance when one protocol is present.
https://bugzilla.gnome.org/show_bug.cgi?id=758179
2015-11-19 15:01:16 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: Only create RTP sending/receiving rtpbin pads if needed
Adding them when not needed will start some logic inside rtpbin that might be
problematic. Also if e.g. for a sender media we suddenly receive RTP data, we
would start up a rtpjitterbuffer and behave in weird ways.
We still set up the UDP sources for RTP receiving for a sender media to be
able to receive any packets sent by the client for NAT traversal. They will
all go to a fakesink though.
Having an rtpjitterbuffer in the media pipeline will cause the pipeline to be
NO_PREROLL, which will cause deadlocks when seeking the media as it will never
receive ASYNC_DONE after a seek.
https://bugzilla.gnome.org/show_bug.cgi?id=758319
2015-11-17 12:44:38 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-stream.c:
rtsp-stream: Disable multicast loopback for the multicast udp sources too
On POSIX this setting is for sender sockets, on Windows for receiver sockets.
Previously we were only setting this for sender sockets, which caused looped
back packets to be received on Windows if a multicast transport was used.
2015-11-17 01:12:28 +1100 Jan Schmidt <jan@centricular.com>
* examples/test-record-auth.c:
* examples/test-record.c:
examples: Actually use the provided port in the record examples
2015-11-17 01:12:28 +1100 Jan Schmidt <jan@centricular.com>
* examples/test-record-auth.c:
test-record-auth: Add the option to build in TLS support
2015-11-17 01:12:28 +1100 Jan Schmidt <jan@centricular.com>
* examples/test-auth.c:
test-auth: Use an 'anonymous' user for unauthenticated default
There's a comment on one of the resources that 'user' and 'admin'
shouldn't even be able to see it, but they can if the default
token is 'admin2', since that gives them access anyway.
2015-11-17 01:12:28 +1100 Jan Schmidt <jan@centricular.com>
* examples/.gitignore:
* examples/Makefile.am:
* examples/test-record-auth.c:
Add test-record-auth example
2015-11-17 01:12:28 +1100 Jan Schmidt <jan@centricular.com>
* gst/rtsp-server/rtsp-client.c:
* tests/check/gst/client.c:
rtsp-client: Report RECORD and ANNOUNCE as supported in the OPTIONS
2015-11-11 14:58:33 +0100 Marcus Prebble <prebble@axis.com>
* gst/rtsp-server/rtsp-server.c:
rtsp-server: Change the logic so we don't pop a NULL context
When doing a port scan (e.g. with nmap) the call to GST_RTSP_CHECK()
will sometimes fail. This call is made before any context is pushed
resulting in an attempt to pop a NULL context.
https://bugzilla.gnome.org/show_bug.cgi?id=757949