livepeer / livepeer/studio

Allow users to not transcode live streaming video

Open
#1,418 3 comments 0 reactions 1 assignee View on GitHub

@victorges is already working on this.

Since Dec 19, 2022.

bug team: studio tech debt
Dominant language
TypeScript
Stars
88
Forks
37
PR merge metrics
No merged PRs in 30d

Description

From our documentation:

> If you do not define transcoding rendition profiles when creating the stream, a default set of profiles will be used with 720p, 480p, 360p and 240p renditions. To disable transcoding for your stream you have to explicitly set an empty array of profiles in your stream object. Beware that in that setup, your playback video will have the attributes of the source stream only and will not take advantage of adaptive bitrate streaming, likely buffering on playback.

However, if a user creates a stream with an empty array

```
curl -X POST \
-H 'content-type: application/json' \
-H 'authorization: Bearer [api_key]' \
-d '{
"name": "test_stream",
"profiles": []
}' \
https://livepeer.studio/api/stream
```

They'll get a response without profiles

```
{
"lastSeen":0,
"isActive":false,
"record":false,
"suspended":false,
"sourceSegments":0,
"transcodedSegments":0,
"sourceSegmentsDuration":0,
"transcodedSegmentsDuration":0,
"sourceBytes":0,
"transcodedBytes":0,
"profiles":[

],
"name":"test_stream",
"kind":"stream",
"userId":"c7237bc3-8d7d-4ee6-b908-c3db50bb034b",
"renditions":{

},
"id":"3363ee17-c7c2-4d6b-90b4-dec84ba7fe56",
"createdAt":1664364428131,
"streamKey":"3363-unuh-tzrm-zp6j",
"playbackId":"3363pue2y8n66mhi",
"createdByTokenName":"test",
"multistream":{
"targets":[

]
}
}
```

But the stream is still transcoded:
```
[ERICs-MacBook-Pro-2][ericxtang]-> curl -L https://livepeercdn.com/hls/3363pue2y8n66mhi/index.m3u8
#EXTM3U
#EXT-X-INDEPENDENT-SEGMENTS
#EXT-X-STREAM-INF:CODECS="avc1.640028,mp4a.40.2",RESOLUTION=1920x1080,FRAME-RATE=30,BANDWIDTH=1248125,AVERAGE-BANDWIDTH=1056106
1_0/index.m3u8?mTrack=1&iMsn=1&sessId=4206290441
#EXT-X-STREAM-INF:CODECS="avc1.4d401f,mp4a.40.2",RESOLUTION=1280x720,FRAME-RATE=30,BANDWIDTH=1118738,AVERAGE-BANDWIDTH=946625
2_0/index.m3u8?mTrack=1&iMsn=1&sessId=4206290441
#EXT-X-STREAM-INF:CODECS="avc1.4d401e,mp4a.40.2",RESOLUTION=640x360,FRAME-RATE=30,BANDWIDTH=552791,AVERAGE-BANDWIDTH=467746
3_0/index.m3u8?mTrack=1&iMsn=1&sessId=4206290441
#EXT-X-STREAM-INF:CODECS="avc1.4d4015,mp4a.40.2",RESOLUTION=426x240,FRAME-RATE=30,BANDWIDTH=802391,AVERAGE-BANDWIDTH=678946
4_0/index.m3u8?mTrack=1&iMsn=1&sessId=4206290441
```

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.