Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Audio ffmpeg 4:在视频播放过程中使用stream_loop参数循环音频,最终导致无限循环 总结 上下文 我使用的软件 问题_Audio_Video_Ffmpeg - Fatal编程技术网

Audio ffmpeg 4:在视频播放过程中使用stream_loop参数循环音频,最终导致无限循环 总结 上下文 我使用的软件 问题

Audio ffmpeg 4:在视频播放过程中使用stream_loop参数循环音频,最终导致无限循环 总结 上下文 我使用的软件 问题,audio,video,ffmpeg,Audio,Video,Ffmpeg,结果 4.1. 实际结果 4.2。预期结果 我尝试了什么来修复这个bug 如何重现此缺陷:提供所需数据的最小且可测试的示例 问题 来源 上下文 我想将音频WAV设置为视频WEBM的背景声音。视频可以比音频短,也可以比音频长。在我将音频添加到视频的那一刻,我不知道两个流的长度。音频必须重复,直到视频结束(如果视频在最后一次音频重复结束之前结束,音频可能会被截断) 我使用的软件 我使用ffmpeg版本4.2.2-1ubuntu1~18.04.sav0 问题 ffmpeg在处理音频和视频混合时似乎进

结果
4.1. 实际结果

4.2。预期结果

  • 我尝试了什么来修复这个bug

  • 如何重现此缺陷:提供所需数据的最小且可测试的示例

  • 问题

  • 来源


  • 上下文 我想将音频WAV设置为视频WEBM的背景声音。视频可以比音频短,也可以比音频长。在我将音频添加到视频的那一刻,我不知道两个流的长度。音频必须重复,直到视频结束(如果视频在最后一次音频重复结束之前结束,音频可能会被截断)

    我使用的软件 我使用ffmpeg版本4.2.2-1ubuntu1~18.04.sav0

    问题 ffmpeg在处理音频和视频混合时似乎进入了一个无限循环。此外,当前生成的输出文件(包含视频和音频)的长度等于音频的长度,而不是视频的长度

    此问题似乎是由以下命令行触发的:

    ffmpeg -i directory_1/video.webm -stream_loop -1 -fflags +shortest -max_interleave_delta 50000 -i directory_2/audio.wav directory_3/video_and_audio.webm
    
    结果 实际结果 三件事:

  • ffmpeg进程的无限循环:我必须手动停止ffmpeg进程

  • 带有音乐的输出视频文件(当前正在生成但仍在输出):它同时包含音频和视频。但是输出文件的长度等于音频的长度,而不是视频的长度

  • 以下输出日志:

  • ffmpeg版本4.2.2-1ubuntu1~18.04.sav0版权所有(c)2000-2019 使用gcc 7构建的FFmpeg开发人员(Ubuntu 7.5.0-3ubuntu1~18.04)
    配置:--prefix=/usr--extra version='1ubuntu1~18.04.sav0' --toolchain=harded--libdir=/usr/lib/x86_64-linux-gnu--incdir=/usr/include/x86_64-linux-gnu--arch=amd64--enable gpl--disable strip--enable avresample--disable filter=resample--enable avisynch--enable ladspa--enable libaom--enable libass enable libble-libbs2b--enable libcaca--enable libcdio--enable-libcodec2--enable-libflite--enable-libfontconfig--enable-libfreetype--enable-libgme--enable-libgsm--enable-libjack--enable-libmp3lame--enable-libmysofa--enable-libopenjpeg--enable-libopus--enable-librsvg--enable-librubberband--enable-libshine--enable-libsnapy--enable libsoxr--enable libspeex--enable libssh--enable libthera--enable libtwolame--enable libvidstab--enable libvorbis--enable libvpx--enable libwavpack--enable libwebp--enable-libx265--enable-libxml2--enable libxvid enable libzvbi--enable-lv2--enable omx--enable openal--enable opencl--enable opengl--enable-sdl2--enable-libdc1394--enable-libdrm--enable-libiec61883--enable-nvenc--enable-chromaprint--enable-frei0r--enable-libx264--enable-shared libavutil 56。31.100 / 56. 31.100 libav编解码器58。54.100 / 58. 54.100 libav58格式。29.100 / 58. 29.100 libav设备58。8.100 / 588.100 libav过滤器7。57.100 / 7. 57.100 libavresample 4。00 / 4. 00 libswscale 5。5.100 / 5. 5.100磅重采样3。5.100 / 3. 5.100 libpostroc 55。5.100 / 555.100“youtubed/my_youtube_video.webm”中的“0,matroska,webm”输入:元数据: 编码器:Chrome持续时间:不适用,开始时间:0.000000,比特率:不适用 流#0:0(英文):视频:vp8,yuv420p(渐进式),3200x1608,SAR 1:1 DAR 400:201,1k tbr,1k tbn,1k tbc(默认) 元数据: alpha#u模式:输入流的1个猜测频道布局#1.0:立体声输入#1,wav,来自“tmp#u music/original#u music.wav”:
    持续时间:00:00:11.78,比特率:1411KB/s 流#1:0:音频:pcm#s16le([1][0][0][0]/0x0001),44100 Hz,立体声,s16,1411 kb/s流映射:流#0:0->#0:0(vp8 (本机)->vp9(libvpx-vp9))流#1:0->#0:1(pcm#s16le (本机)->opus(libopus))按[q]停止,[?]获取帮助 [libvpx-vp9@0x5645268aed80]v1.8.2[libopus@0x5645268b09c0]无位 费率设置。默认为96000个基点。输出#0,webm,到 “youtubed/my\u youtube\u video\u with\u music.webm”:元数据: 编码器:Lavf58.29.100 流#0:0(英文):视频:vp9(libvpx-vp9),yuv420p(渐进式),3200x1608[SAR 1:1 DAR 400:201],q=-1--1200 kb/s,1k fps,1k tbn,1k 待定(默认) 元数据: alpha_模式:1 编码器:Lavc58.54.100 libvpx-vp9 辅助数据: cpb:比特率最大/最小/平均:0/0/0缓冲区大小:0 vbv_延迟:-1 流#0:1:音频:opus(libopus),48000 Hz,立体声,s16,96 kb/s 元数据: 编码器:Lavc58.54.100 libopus

    预期结果
  • ffmpeg过程中没有无限循环

  • 关于输出日志,我不知道它应该是什么样子

  • 带有音频和视频的输出文件应:

    3.1。如果视频比音频长,则会重复音频,直到完全适合视频。音频可以被截断

    3.2。如果视频比音频短,则音频会被截断并与视频完全匹配

    3.3。如果视频和音频的长度相同,则音频正好适合视频

  • 如何复制这个bug?(+所需数据)
  • 下载以下文件(分别为音频和视频)(我必须每24小时刷新一次这些下载链接):

    1.1

    1.2

  • 将它们移动到您选择的目录中

  • 打开CLI,移动到adequat目录并复制/粘贴/执行第部分给出的指令。问题在于(不要忘记根据步骤2,通过指示adequat目录最终修改此指令)

  • 你将面对我的公关
    ffmpeg -i directory_1/video.webm -stream_loop -1 -i directory_2/audio.wav -c:v copy -shortest -fflags +shortest -max_interleave_delta 100M directory_3/video_and_audio.webm