Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SRT I/O #898

Merged
merged 50 commits into from
Aug 23, 2019
Merged
Show file tree
Hide file tree
Changes from 14 commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
171d83b
First stab at srt I/O
toots Jul 26, 2019
97d1b79
Some progress!
toots Jul 27, 2019
d71225c
Merge remote-tracking branch 'origin/master' into srt-io
toots Jul 27, 2019
996e1f0
Make srt work with liquidsoap-full.
toots Jul 28, 2019
18fe21d
Forgot this.
toots Jul 28, 2019
864b776
Typo.
toots Jul 28, 2019
2148347
Merge branch 'master' into srt-io
toots Jul 28, 2019
4a6f62c
Merge branch 'master' into srt-io
toots Jul 28, 2019
2d18f34
Merge branch 'master' into srt-io
toots Jul 28, 2019
502d133
Merge branch 'master' into srt-io
toots Jul 28, 2019
d7b6cab
Flush the whole output buffer.
toots Jul 28, 2019
644fa87
More robust threading for SRT I/O
toots Jul 28, 2019
5bf8776
Close socket on input sleep.
toots Jul 28, 2019
ab803f8
Init calls for libsrt.
toots Jul 29, 2019
065c0e3
Update src/io/srt_io.ml
toots Jul 30, 2019
2d313f5
Clarify parameters and operator, switch to asynchronous I/O.
toots Jul 30, 2019
f706290
Fix logic with output.srt.
toots Jul 30, 2019
e6d2166
Use synchronous mode for output client read.
toots Jul 30, 2019
fdfbc16
No need to close the socket here.
toots Jul 30, 2019
dde3972
Merge branch 'master' into srt-io
toots Jul 31, 2019
1a3ca2c
Make sure to close the client.
toots Jul 31, 2019
b6b1e5b
Better to re-create the socket here.
toots Aug 1, 2019
270ba81
Added ffmpeg I/O decoder for input.srt.
toots Aug 2, 2019
be6d7c4
Rebuild with srt 1.3.3
toots Aug 2, 2019
1bc86f7
Adapt to new API, use custom log handler.
toots Aug 3, 2019
a5f64fd
Switch to clock-driving input.srt
toots Aug 3, 2019
7cd596a
Trim srt log message.
toots Aug 3, 2019
51ebbcc
Don't close the socket when waiting for a connection.
toots Aug 3, 2019
d9b0992
Merge remote-tracking branch 'origin/master' into srt-io
toots Aug 4, 2019
043f371
Add configuration for srt log level.
toots Aug 4, 2019
8f384a2
Update srt_io.ml
toots Aug 4, 2019
fe81367
Rewrite, cleanup.
toots Aug 4, 2019
b16eb81
More agressive stop.
toots Aug 4, 2019
4ff1e24
Flush all available data in output.
toots Aug 4, 2019
e7e6e2d
Fix clock.
toots Aug 5, 2019
cb2942e
Proper hookup for blocking/unblocking clock in input.srt
toots Aug 5, 2019
72d6b90
No need for this, creates a race condition risk.
toots Aug 5, 2019
5e97e22
Merge branch 'master' into srt-io
toots Aug 5, 2019
20bf310
Cleaner this way.
toots Aug 5, 2019
a2f7f4e
Fix more stuff with input.srt.
toots Aug 5, 2019
20f6bc8
Finer-grained poll shutdown.
toots Aug 5, 2019
7af1d42
Add temporary workaround for FFmpeg decoding errors.
toots Aug 9, 2019
e3a5776
Add temporary debug option.
toots Aug 9, 2019
1e5127d
Add srt locked stubs.
toots Aug 9, 2019
80c05ab
Merge branch 'master' into srt-io
toots Aug 13, 2019
6cd97c5
Remove debug.
toots Aug 14, 2019
43be403
Use library specific error API for ffmpeg decoder.
toots Aug 18, 2019
8a0a4a0
Rebuild
toots Aug 19, 2019
b0b3ebb
Merge branch 'master' into srt-io
toots Aug 22, 2019
d6b6f8a
Add CHANGES entry.
toots Aug 23, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions Makefile.defs.in
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,7 @@ W_DYNLINK=@W_DYNLINK@
W_GD=@W_GD@
W_INOTIFY=@W_INOTIFY@
W_WINSVC=@W_WINSVC@
W_SRT=@W_SRT@
W_SSL=@W_SSL@
W_OSX_SECURE_TRANSPORT=@W_OSX_SECURE_TRANSPORT@

Expand Down
14 changes: 14 additions & 0 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -798,6 +798,18 @@ AC_CHECK_OCAML_BINDING([ladspa],[0.1.4])
AC_CHECK_OCAML_BINDING([dssi],[0.1.0])
AC_CHECK_OCAML_BINDING([sdl],[],[],[],[sdl.sdlmixer sdl.sdlttf sdl.sdlimage])
AC_CHECK_OCAML_BINDING([camlimages],[4.0.0],[],[],[camlimages.all_formats])

# TODO: switch to dune all the way?
with_srt_types_dir=${with_srt_dir}
liquidsoap_ocamlcflags="${liquidsoap_ocamlcflags} -I ${with_srt_dir}/types"
AC_CHECK_OCAML_BINDING([srt.types],[0.1.0],[],[],[],[srt_types])

with_srt_stubs_dir=${with_srt_dir}
liquidsoap_ocamlcflags="${liquidsoap_ocamlcflags} -I ${with_srt_dir}/stubs"
AC_CHECK_OCAML_BINDING([srt.stubs],[0.1.0],[srt.types],[],[],[srt_stubs])

AC_CHECK_OCAML_BINDING([srt],[0.1.0],[srt.types srt.stubs])

AC_CHECK_OCAML_BINDING([lo],[0.1.2])
AC_CHECK_OCAML_BINDING([gd])

Expand Down Expand Up @@ -993,6 +1005,7 @@ cat <<EOMSG
- OSS : $w_OSS
- Portaudio : $w_PORTAUDIO
- Pulseaudio : $w_PULSEAUDIO
- SRT : $w_SRT

* Audio manipulation
- LADSPA : $w_LADSPA
Expand Down Expand Up @@ -1115,6 +1128,7 @@ variables {
yojson-enabled: $b_YOJSON
ssl-enabled: $b_SSL
secure_transport-enabled: $b_OSX_SECURE_TRANSPORT
srt-enabled: $b_SRT
winscv-enabled: $b_WINSVC
}
EOCFG
1 change: 1 addition & 0 deletions src/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -162,6 +162,7 @@ outputs = outputs/output.ml \
$(if $(W_ALSA),outputs/alsa_out.ml)

io = io/udp_io.ml \
$(if $(W_SRT),io/srt_io.ml) \
$(if $(W_OSS),io/oss_io.ml) \
$(if $(W_PULSEAUDIO),io/pulseaudio_io.ml) \
$(if $(W_PORTAUDIO),io/portaudio_io.ml) \
Expand Down
Loading