Dash-Industry-Forum / livesim2

DASH Live Source Simulator v2 in Go
Other
36 stars 6 forks source link

CMAF Ingest #206

Closed tobbee closed 1 month ago

tobbee commented 3 months ago

This is an ongoing implementation of CMAF-Ingest role for livesim2.

It provides a REST API at /api/docs/](http://localhost:8888/api/docs#/ for creating CMAF Ingest sessions that sends segments to a provided URL on a server. The segments will be sent as the right wall-clock-time is reached. There is also a test mode where one can trigger each segment. That is used in unit-test, but can also be done via the REST API.

One can start a session via the exposed API in the browser, or via curl as

curl --request POST \
  --url http://localhost:8888/api/cmaf-ingests \
  --header 'Accept: application/json, application/problem+json' \
  --header 'Content-Type: application/json' \
  --data '{
  "destination": "http://localhost:8080/upload",
  "duration": 20,
  "livesimURL": "/livesim2/testpic_2s/Manifest.mpd"
  }'

There is also a receiving server at cmd/cmaf-ingest-receiver. It can receive a stream livesim2 but also from AWS Media Live.

Implementation status

Also see #201 for requirements.