You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Changing the header from "The Ffmpeg Plugin for MTL" to "The MTL
Plugin for FFmpeg" as the FFmpeg is main program, which has an MTL
plugin.
- Added a note about `--prefix` option to build in a different directory
than default
- H.265 and HEVC are the same video compression standard - removed
doubled mention
- Various punctuation and capitalization
- ST2110 -> ST 2110
- 10 bit -> 10-bit
- SVT-JPEGXS -> SVT JPEG XS
- SVT-HEVC -> SVT HEVC
- ffmpeg/Ffmpeg -> FFmpeg
- `payload_type` numbers changed from defaults to commonly used values
as mentioned by Mionsz in the comment
Copy file name to clipboardExpand all lines: ecosystem/ffmpeg_plugin/README.md
+50-42Lines changed: 50 additions & 42 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,4 +1,4 @@
1
-
# The Ffmpeg Plugin for MTL
1
+
# The MTL Plugin for FFmpeg
2
2
3
3
## Notice
4
4
@@ -18,9 +18,9 @@ sudo ldconfig
18
18
cd ../
19
19
```
20
20
21
-
### 1.2. Build ffmpeg with MTL patches
21
+
### 1.2. Build FFmpeg with MTL patches
22
22
23
-
Note: `$mtl_source_code` should be pointed to top source code tree of Media Transport Library.
23
+
> Note: `$mtl_source_code` should be pointed to top source code tree of Media Transport Library.
24
24
25
25
```bash
26
26
git clone https://github.com/FFmpeg/FFmpeg.git
@@ -38,21 +38,25 @@ sudo make install
38
38
sudo ldconfig
39
39
```
40
40
41
-
Note, for ffmpeg 4.4 or 6.1 version, replace 7.0 with 4.4/6.1 for above example commands.
41
+
> Note: For FFmpeg version 4.4 or 6.1, replace 7.0 with 4.4 or 6.1 respectively in above commands.
42
+
43
+
In order to build the FFmpeg in a non-default path, use `--prefix="<path>"` within the `./configure` command to point to an empty installation folder.
42
44
43
45
## 2. ST20P raw video run guide
44
46
45
-
The MTL ST20P plugin is implemented as an FFMpeg input/output device, enabling direct reading from or sending raw video via the ST2110-20 stream.
47
+
The MTL ST20P plugin is implemented as an FFmpeg input/output device, enabling direct reading from or sending raw video via the ST 2110-20 stream.
48
+
49
+
> **Note:** The default `payload_type` value for Media Transport Library raw video is 112. Below, it is changed to 96 - a commonly used number for raw video transmissions.
46
50
47
51
### 2.1. St20p input
48
52
49
-
Reading a st2110-20 10bit YUV422 stream on "239.168.85.20:20000" with payload_type 112:
53
+
Reading a ST 2110-20 10-bit YUV422 stream on 239.168.85.20:20000 with payload_type 96:
Note: The format y210 is not supported by the Ffmpeg plugins for MTL.
91
+
The y210 format is not supported by the MTL Plugin for FFmpeg.
88
92
89
93
## 3. ST22 compressed video run guide
90
94
91
-
A typical workflow for processing an MTL ST22 compressed stream with FFMpeg is outlined in the following steps: Initially, FFMpeg reads a YUV frame from the input source, then forwards the frame to a codec to encode the raw video into a compressed codec stream. Finally, the codec stream is sent to the MTL ST22 plugin.
92
-
The MTL ST22 plugin constructs the codec stream and transmits it as ST2110-22 RTP packets, adhering to the standard. In addition to the JPEG XS stream, the MTL ST22 plugin is capable of supporting various other common compressed codecs, including H264, H265, and HEVC, among others.
95
+
A typical workflow for processing an MTL ST22 compressed stream with FFmpeg is outlined in the following steps: Initially, FFmpeg reads a YUV frame from the input source, then forwards the frame to a codec to encode the raw video into a compressed codec stream. Finally, the codec stream is sent to the MTL ST22 plugin.
96
+
The MTL ST22 plugin constructs the codec stream and transmits it as ST 2110-22 RTP packets, adhering to the standard. In addition to the JPEG XS stream, the MTL ST22 plugin is capable of supporting various other common compressed codecs, including H.264 (AVC), and H.265 (HEVC), among others.
97
+
98
+
> **Note:** The default `payload_type` value for Media Transport Library compressed video is 112. Below, it is changed to 98 - a commonly used number for compressed video transmissions.
93
99
94
100

95
101
96
102
### 3.1. St22 output
97
103
98
-
Reading from a yuv stream from local source file, encode with h264 codec and sending a st2110-22 codestream on "239.168.85.20:20000" with payload_type 112:
104
+
Reading from a yuv stream from local source file, encode with h264 codec and sending a ST 2110-22 codestream on 239.168.85.20:20000 with payload_type 98:
Another option involves utilizing the MTL built-in ST22 codec plugin, where FFmpeg can directly send or retrieve the YUV raw frame to/from the MTL ST22P plugin. MTL will then internally decode or encode the codec stream.
137
143
138
-
Reading a st2110-22 pipeline jpegxs codestream on "239.168.85.20:20000" with payload_type 112:
144
+
Reading a ST 2110-22 pipeline jpegxs codestream on 239.168.85.20:20000 with payload_type 98:
> **Note:** The default `payload_type` value for Media Transport Library raw audio is 111. Below, it is changed to 97 - a commonly used number for raw audio transmissions.
159
+
152
160
### 4.1. St30p input
153
161
154
-
Reading a st2110-30 stream(pcm24,1ms packet time,2 channels) on "239.168.85.20:30000" with payload_type 111 and encoded to a wav file:
162
+
Reading a ST 2110-30 stream(pcm24,1ms packet time,2 channels) on 239.168.85.20:30000 with payload_type 97 and encoded to a wav file:
0 commit comments