当前位置: 首页 > 知识库问答 >
问题:

ffmpeg流映射'a: 0'匹配没有流

宋勇
2023-03-14

我尝试使用ffmpeg命令将mp4转换为hls

ffmpegtest_video.mp4-y
-预设veryslow-keyint_min100-g 100-sc_threshold0-r 25-c: v libx264-pix_fmtyuv420p
-map v: 0-s: 0 960x540-b: v: 02M-maxrate: 02.14M-bufsize: 03.5M
-map v: 0-s: 1 416x234-b: v: 1145k-maxrate: 1155k-bufsize: 1220k
-map v: 0-s: 2 640x360-b: v: 2365k-maxrate: 2390k-bufsize: 2640k
-map v: 0-s: 3$768x432-b: v: 3730k-maxrate: 3781k-bufsize: 31278k
-map v: 0-s: 4 768x432-b: v: 41.1M-maxrate: 41.17M-bufsize: 42M
-map v: 0-s: 5 1280x720-b: v: 53M-maxrate: 53.21M-bufsize: 55.5M
-map v: 0-s: 6 1280x720-b: v: 64.5M-maxrate: 64.8M-bufsize: 68M
-map v: 0-s: 7 1920x1080-b: v: 76M-maxrate: 76.42M-bufsize: 711M
-map v: 0-s: 8 1920x1080-b: v: 87.8M-maxrate: 88.3M-bufsize: 814M
-map a: 0-map a: 0-map a: 0-map a: 0-map a: 0-map a: 0-map a: 0-map a: 0-c: a aac-b: a128k-ac 1-ar 44100
-f hls-hls_time4-hls_playlist_typevod-hls_flagsindependent_segments<-master_pl_namehls_multi/hls. m3u8
-hls_segment_filenamehls_multi/stream_%v/sd.ts
-strftime_mkdir1
-var_stream_map"v: 0, a: 0 v: 1, a: 1 v: 2, a: 2 v: 3, a: 3 v: 4, a: 4 v: 5, a: 5 v: 6, a: 6 v: 7, a: 7 v: 8, a: 8"hls_multi/stream_%v. m3u8

但我收到了这条消息

流映射“a:0”不匹配任何流。要忽略这一点,请添加尾随的“?”到地图上去。

所以我试着用命令来做:

ffmpegtest_video.mp4-y
-预设veryslow-keyint_min100-g 100-sc_threshold0-r 25-c: v libx264-pix_fmtyuv420p
-map v: 0-s: 0 960x540-b: v: 02M-maxrate: 02.14M-bufsize: 03.5M
-map v: 0-s: 1 416x234-b: v: 1145k-maxrate: 1155k-bufsize: 1220k
-map v: 0-s: 2 640x360-b: v: 2365k-maxrate: 2390k-bufsize: 2640k
-map v: 0-s: 3$768x432-b: v: 3730k-maxrate: 3781k-bufsize: 31278k
-map v: 0-s: 4 768x432-b: v: 41.1M-maxrate: 41.17M-bufsize: 42M
-map v: 0-s: 5 1280x720-b: v: 53M-maxrate: 53.21M-bufsize: 55.5M
-map v: 0-s: 6 1280x720-b: v: 64.5M-maxrate: 64.8M-bufsize: 68M
-map v: 0-s: 7 1920x1080-b: v: 76M-maxrate: 76.42M-bufsize: 711M
-map v: 0-s: 8 1920x1080-b: v: 87.8M-maxrate: 88.3M-bufsize: 814M
-map a: 0?-map a: 0?-map a: 0?-map a: 0?-map a: 0?-map a: 0?-map a: 0?-map a: 0?-map a: 0?-map a: 0?-map a: 0?-map a: 0?-map a: 0?-map a: 0?-c: a aac-b: a128k-ac 1-ar 44100 -master_pl_namehls_multi/hls. m3u8
-hls_segment_filenamehls_multi/stream_%v/sd.ts
-strftime_mkdir1
-var_stream_map"v: 0, a: 0 v: 1, a: 1 v: 2, a: 2 v: 3, a: 3 v: 4, a: 4 v: 5, a: 5 v: 6, a: 6 v: 7, a: 7 v: 8, a: 8"hls_multi/stream_%v. m3u8

我得到了这个信息:

[hls@0x7F9E5908200]无法在以下位置映射流:0[hls@0x7F9E5908200]变体流信息更新失败,状态为FFFFFF EA无法写入输出文件#0的头(编解码器参数不正确?):初始化输出流0:8时出现无效参数错误--

命令:

test_video.mp

给了我这个输出:

ffprobe版本4.3.1版权所有(c)2007-2020 FFmpeg开发
使用Apple clang版本11.0.3(clang-1103.0.32.62)构建
配置:--prefix=/usr/local/cillar/FFmpeg/4.3.1--启用共享--启用pthreads--enable-version3--启用avresample--cc=clang--host cflags=--主机ldflags=--启用ffplay--enable gnutls--enable gpl--enable libaom--enable libbluray--enable-libdav1d--enable-libmp3lame--enable-libopus--enable-libv1e--enable-libruberband--enable-libsnapy--enable-libsrt--enable-libteseract--enable-libvorbis--enable-libvpx--enable-libx265--enable-libxml2--enable-libxvid enable-lzma--enable-libfontconfig--enable-libfreetype--enable-frei0r--enable libass--enable libopencore amrnb--enable libopencore amrwb--enable libopenjpeg--enable librtmp--enable libspeex--enable libsoxr--enable videotoolbox--disable libjack--disable indev=jack libavutil 56。51.100 / 56. 51.100 libavcodec 58。91.100 / 58. 91.100 libav58格式。45.100 / 58. 45.100 libav设备58。10.100 / 58. 10.100 libavfilter 7。85.100 / 7. 85.100 libavresample 4。0. 0 / 4. 0.0 libswscale 5。7.100 / 5. 7.100磅重采样3。7.100 / 3. 7.100 libpostroc 55。7.100 / 55. 7.100输入#0、mov、mp4、m4a、3gp、3g2、mj2,来自“测试视频”。mp4:元数据:主要品牌:mp42次要版本:0兼容品牌:mp42mp41isomavc1创建时间:2016-10-29T07:22:11.000000Z持续时间:00:01:00.12,开始:0.000000,比特率:2394kb/s流#0:0(und):视频:h264(高)(avc1/0x31637661),yuv420p(电视,bt709),1280x720[SAR 1:1 DAR 16:9],2392kb/s,25fps,25TBR,25TBN,50 tbc(默认)元数据:创建时间:2016-10-29T07:22:11.000000Z处理器名称:L-SMASH视频处理器编码器:AVC编码

有什么建议吗?谢谢

共有1个答案

钱和安
2023-03-14

如果这是完整的输出,那么就没有音频流。从-var_stream_map中删除对音频流的所有引用。

 类似资料:
  • 有没有一种简单/快速的方法来检查地图中的元素是否使用流不同?我有这张地图:

  • YAML中的流映射表示键值对的无序集合。 它们也称为映射节点。 请注意,键应保持唯一。 如果流映射结构中存在重复的键,则会生成错误。 键顺序在序列化树中生成。 示例 流映射结构的示例如下所示 - JSON格式的映射序列(无序列表)的输出如下所示 - 如果如上所示观察此输出,则会发现在YAML映射结构中键名称是唯一的。

  • 我有一个实体,看起来像这样: 输入数据是一个

  • 我在解决泛型问题时遇到了一些麻烦。我有一个“猫”对象列表和一个“狗”对象列表,我需要将它们传递到同一个方法中。该方法的返回类型是一个“字符串”和“动物列表”的映射,我试图找出一种方法来将带有动物列表的映射转换为带有猫或狗列表的映射。 这工作很好,如果我有一个单独的方法猫和狗,但我正在寻找一个更灵活的解决方案。 标题中出现错误的行: 注意:这是一个简化的例子,我必须能够使用地图中的列表作为“猫”或“

  • 我正在尝试使用spring MVC。我的问题是,在我的控制器中没有请求映射工作,只有我的主页链接:“/”工作。 我的web.xml文件是: 2019年5月9日下午4:55:42 org.springframework.web.servlet.dispatcherservlet noHandlerFound警告:GET/springmvc/showform没有映射

  • 想要编写 Excel 公式,该公式将根据行的匹配项对值求和。要匹配的单元格可以多次出现,并且基于映射图例,它们应返回值的总和。 在黄色单元格中,我试图根据G3: G8中名称的匹配来计算B9: B21范围内的值的总和,根据映射图例到Item1,然后是Item2和Item 3。此外,我想考虑在日期1、日期2和日期3之间进行的总和。下面的SumProduct公式仅适用于单个日期的sum数组,而不适用于日