realtime flag for http urls
This commit is contained in:
@@ -110,7 +110,7 @@ Frame output:
|
||||
|
||||
- Maps `0:v:0`
|
||||
- Disables audio with `-an`
|
||||
- Applies `fps=<fps>,scale=w='min(<width>,iw)':h=-2:flags=bicubic:out_range=pc,format=yuvj420p`
|
||||
- Applies `fps=<fps>,scale=w='min(<width>,iw)':h=-2:flags=bicubic:out_range=pc,format=yuvj420p,realtime`
|
||||
- Encodes `mjpeg`
|
||||
- Uses `-pix_fmt yuvj420p`, `-color_range pc`, `-q:v <quality>`
|
||||
- Outputs `image2pipe` to either `pipe:1` or `pipe:3`
|
||||
|
||||
@@ -2798,6 +2798,7 @@ function buildFrameArgs(session, inputUrl, inputOptions) {
|
||||
}
|
||||
|
||||
function buildInputArgs(inputUrl, { seekable = true, startTime = 0 } = {}) {
|
||||
const isHttpInput = isHttpInputUrl(inputUrl);
|
||||
const args = [
|
||||
'-hide_banner',
|
||||
'-nostdin',
|
||||
@@ -2806,7 +2807,7 @@ function buildInputArgs(inputUrl, { seekable = true, startTime = 0 } = {}) {
|
||||
'-nostats',
|
||||
];
|
||||
|
||||
if (seekable) {
|
||||
if (seekable && isHttpInput) {
|
||||
args.push('-seekable', startTime > 0 ? '1' : FFMPEG_INPUT_SEEKABLE);
|
||||
}
|
||||
|
||||
@@ -2814,7 +2815,7 @@ function buildInputArgs(inputUrl, { seekable = true, startTime = 0 } = {}) {
|
||||
args.push('-ss', formatFfmpegSeconds(startTime));
|
||||
}
|
||||
|
||||
if (FFMPEG_HTTP_RECONNECT && isHttpInputUrl(inputUrl)) {
|
||||
if (FFMPEG_HTTP_RECONNECT && isHttpInput) {
|
||||
args.push(
|
||||
'-reconnect',
|
||||
'1',
|
||||
@@ -2849,7 +2850,7 @@ function formatFfmpegSeconds(seconds) {
|
||||
|
||||
function buildFrameOutputArgs(session, outputUrl) {
|
||||
const { fps, quality, width } = session.options;
|
||||
const videoFilter = `fps=${fps},scale=w='min(${width},iw)':h=-2:flags=bicubic:out_range=pc,format=yuvj420p`;
|
||||
const videoFilter = `fps=${fps},scale=w='min(${width},iw)':h=-2:flags=bicubic:out_range=pc,format=yuvj420p,realtime`;
|
||||
|
||||
return [
|
||||
'-an',
|
||||
|
||||
Reference in New Issue
Block a user