Linux Can';t使用ffmpeg从平滑流媒体清单文件获取信息

Linux Can';t使用ffmpeg从平滑流媒体清单文件获取信息,linux,ffmpeg,manifest,smooth-streaming,Linux,Ffmpeg,Manifest,Smooth Streaming,我正在尝试使用ffmpeg工具(ffprobe和ffplay)获取Microsoft Smooth Streaming协议流的详细信息,但当我运行下一个命令时: ffprobe -i http://b31282.cdn.telefonica.com/31282/Manifest 我得到这个: http://b31282.cdn.telefonica.com/31282/Manifest: Invalid data found when processing input 我假设这个清单文件是正

我正在尝试使用ffmpeg工具(ffprobe和ffplay)获取Microsoft Smooth Streaming协议流的详细信息,但当我运行下一个命令时:

ffprobe -i http://b31282.cdn.telefonica.com/31282/Manifest
我得到这个:

http://b31282.cdn.telefonica.com/31282/Manifest: Invalid data found when processing input
我假设这个清单文件是正确的,并且符合平滑流的标准。这是清单文件的简要摘录:

<SmoothStreamingMedia MajorVersion="2" MinorVersion="0" Duration="0" TimeScale="10000000" IsLive="TRUE" LookAheadFragmentCount="2" DVRWindowLength="6000000000" CanSeek="TRUE" CanPause="TRUE">
  <Protection>
    <ProtectionHeader SystemID="9a04f079-9840-4286-ab92-e65be0885f95">oioAAAIAAQCUAjwAV...</ProtectionHeader>
  </Protection>
  <StreamIndex Type="audio" Name="audio_esp" Language="esp" Subtype="" Chunks="0" TimeScale="10000000" Url="QualityLevels({bitrate})/Fragments(audio_esp={start time})"></StreamIndex>
  <StreamIndex Type="video" Name="video" Language="" Subtype="" Chunks="0" TimeScale="10000000" Url="QualityLevels({bitrate})/Fragments(video={start time})"></StreamIndex>
</SmoothStreamingMedia>
ffmpeg -i http://mediadl.microsoft.com/mediadl/iisnet/smoothmedia/Experience/BigBuckBunny_720p.ism/Manifest
Invalid data found when processing input
PD:我更喜欢只使用ffmpeg工具

PD2:与Microsoft平滑流媒体清单文件相同:

<SmoothStreamingMedia MajorVersion="2" MinorVersion="0" Duration="0" TimeScale="10000000" IsLive="TRUE" LookAheadFragmentCount="2" DVRWindowLength="6000000000" CanSeek="TRUE" CanPause="TRUE">
  <Protection>
    <ProtectionHeader SystemID="9a04f079-9840-4286-ab92-e65be0885f95">oioAAAIAAQCUAjwAV...</ProtectionHeader>
  </Protection>
  <StreamIndex Type="audio" Name="audio_esp" Language="esp" Subtype="" Chunks="0" TimeScale="10000000" Url="QualityLevels({bitrate})/Fragments(audio_esp={start time})"></StreamIndex>
  <StreamIndex Type="video" Name="video" Language="" Subtype="" Chunks="0" TimeScale="10000000" Url="QualityLevels({bitrate})/Fragments(video={start time})"></StreamIndex>
</SmoothStreamingMedia>
ffmpeg -i http://mediadl.microsoft.com/mediadl/iisnet/smoothmedia/Experience/BigBuckBunny_720p.ism/Manifest
Invalid data found when processing input

感谢您的支持,smoothstreaming demux不受支持

这里是,smoothstreaming不显示在demux部分。下面是当您询问支持哪些类型时的输出

chang@p300a:~/git-root/FFmpeg$ ffmpeg -formats|grep smooth
ffmpeg version n4.2.3-3-gbf7ed52c25 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04)
  configuration: --enable-libv4l2 --enable-zlib --enable-vaapi --enable-pthreads --enable-vdpau --enable-xlib --enable-libv4l2 --enable-libx264 --enable-gpl --enable-gnutls --enable-openssl --enable-nonfree --disable-gnutls --enable-libxml2 --enable-libdrm
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
  libpostproc    55.  5.100 / 55.  5.100
  E smoothstreaming Smooth Streaming Muxer

我想说,显而易见的答案是FFmpeg不支持您正在尝试的操作。