Currently, the `AppleVTEncoder`'s encoded result will delay at least one encoding iteration since the encoded output is yielded when [`Encode` is called](https://searchfox.org/mozilla-central/rev/26a98a7ba56f315df146512c43449412f0592942/dom/media/platforms/apple/AppleVTEncoder.cpp#663), not when [`ProcessOutput` is executed](https://searchfox.org/mozilla-central/rev/f549a50b1e39b1e6bea19912d92545c4c0a06b7b/dom/media/platforms/apple/AppleVTEncoder.cpp#588). In some cases (e.g., Zoom's web conferencing), getting the encoded result as soon as possible is critical. We should output the encoded result as soon as it's generated.
Bug 1919384 Comment 0 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
Currently, the `AppleVTEncoder`'s encoded result will delay at least one encoding iteration since the encoded output is yielded when [`Encode` is called](https://searchfox.org/mozilla-central/rev/26a98a7ba56f315df146512c43449412f0592942/dom/media/platforms/apple/AppleVTEncoder.cpp#663), not when [`ProcessOutput` is executed](https://searchfox.org/mozilla-central/rev/f549a50b1e39b1e6bea19912d92545c4c0a06b7b/dom/media/platforms/apple/AppleVTEncoder.cpp#588). In some cases (e.g., Zoom's web conferencing), getting the encoded result as soon as possible is critical. We should output the encoded result as soon as it's generated. Additionally, doing this aligns with the encoding behaviors in other codecs like VPX and AV1.
Currently, the `AppleVTEncoder`'s encoded result will delay at least one encoding iteration since the encoded output is yielded when [`Encode` is called](https://searchfox.org/mozilla-central/rev/26a98a7ba56f315df146512c43449412f0592942/dom/media/platforms/apple/AppleVTEncoder.cpp#663), not when [`ProcessOutput` is executed](https://searchfox.org/mozilla-central/rev/f549a50b1e39b1e6bea19912d92545c4c0a06b7b/dom/media/platforms/apple/AppleVTEncoder.cpp#588). In some cases (e.g., Zoom's web conferencing), getting the encoded result as soon as possible is critical. Currently, the sample encoded in the *N*th round will be dispatched by the *N+1*th round's output callback (Users need to call `Encode` again to get the previous `Encode()` results). We should output the encoded result as soon as it's generated. Additionally, doing this aligns with the encoding behaviors in other codecs like VPX and AV1.
Currently, the `AppleVTEncoder`'s encoded result will delay at least one encoding iteration since the encoded output is yielded when [`Encode` is called](https://searchfox.org/mozilla-central/rev/26a98a7ba56f315df146512c43449412f0592942/dom/media/platforms/apple/AppleVTEncoder.cpp#663), not when [`ProcessOutput` is executed](https://searchfox.org/mozilla-central/rev/f549a50b1e39b1e6bea19912d92545c4c0a06b7b/dom/media/platforms/apple/AppleVTEncoder.cpp#588). In some cases (e.g., Zoom's web conferencing), getting the encoded result as soon as possible is critical. Currently, the sample encoded in the *N*th round will be dispatched by the *(N+1)*th round's output callback (Users need to call `Encode` again to get the previous `Encode()` results). We should output the encoded result as soon as it's generated. Additionally, doing this aligns with the encoding behaviors in other codecs like VPX and AV1.
Currently, the `AppleVTEncoder`'s encoded result will delay at least one encoding iteration since the encoded output is yielded when [`Encode` is called](https://searchfox.org/mozilla-central/rev/26a98a7ba56f315df146512c43449412f0592942/dom/media/platforms/apple/AppleVTEncoder.cpp#663), not when [`ProcessOutput` is executed](https://searchfox.org/mozilla-central/rev/f549a50b1e39b1e6bea19912d92545c4c0a06b7b/dom/media/platforms/apple/AppleVTEncoder.cpp#588). In some cases (e.g., Zoom's web conferencing), getting the encoded result as soon as possible is critical. Currently, the sample encoded in the *N*th round will be dispatched by the *(N+1)* th round's output callback (Users need to call `Encode` again to get the previous `Encode()` results). We should output the encoded result as soon as it's generated. Additionally, doing this aligns with the encoding behaviors in other codecs like VPX and AV1.
Currently, the `AppleVTEncoder`'s encoded result will delay at least one encoding iteration since the encoded output is yielded when [`Encode` is called](https://searchfox.org/mozilla-central/rev/26a98a7ba56f315df146512c43449412f0592942/dom/media/platforms/apple/AppleVTEncoder.cpp#663), not when [`ProcessOutput` is executed](https://searchfox.org/mozilla-central/rev/f549a50b1e39b1e6bea19912d92545c4c0a06b7b/dom/media/platforms/apple/AppleVTEncoder.cpp#588). In some cases (e.g., Zoom's web conferencing), getting the encoded result as soon as possible is critical. Currently, the sample encoded in the *N*th round will be dispatched by the *(N+1)* th round's output callback (That is, users need to call `Encode` again to get the previous `Encode()` results). Some real-time usage requires getting the encoded result ASAP. Additionally, doing this aligns with the encoding behaviors in other codecs like VPX and AV1.
Currently, the `AppleVTEncoder`'s encoded result will delay at least one encoding iteration since the encoded output is yielded when [`Encode` is called](https://searchfox.org/mozilla-central/rev/26a98a7ba56f315df146512c43449412f0592942/dom/media/platforms/apple/AppleVTEncoder.cpp#663), not when [`ProcessOutput` is executed](https://searchfox.org/mozilla-central/rev/f549a50b1e39b1e6bea19912d92545c4c0a06b7b/dom/media/platforms/apple/AppleVTEncoder.cpp#588). In some cases (e.g., Zoom's web conferencing), getting the encoded result as soon as possible is critical. Currently, the sample encoded in the *N*th round will be dispatched by the *(N+1)* th round's output callback (That is, users need to call `Encode` again to get the previous `Encode()` results). Some real-time usage requires getting the encoded result ASAP (not in the next encoding iteration). Additionally, doing this aligns with the encoding behaviors in other codecs like VPX and AV1.
Currently, the `AppleVTEncoder`'s encoded result will delay at least one encoding iteration since the encoded output is yielded when [`Encode` is called](https://searchfox.org/mozilla-central/rev/26a98a7ba56f315df146512c43449412f0592942/dom/media/platforms/apple/AppleVTEncoder.cpp#663), not when [`ProcessOutput` is executed](https://searchfox.org/mozilla-central/rev/f549a50b1e39b1e6bea19912d92545c4c0a06b7b/dom/media/platforms/apple/AppleVTEncoder.cpp#588). In some cases (e.g., Zoom's web conferencing), getting the encoded result as soon as possible is critical. For now, the sample encoded in the *N*th round will be dispatched by the *(N+1)* th round's output callback (That is, users need to call `Encode` again to get the previous `Encode()` results). Some real-time usage requires getting the encoded result ASAP (not in the next encoding iteration). Additionally, doing this aligns with the encoding behaviors in other codecs like VPX and AV1.