无法从Smooth Streaming Manifest文件中使用ffmpeg获取信息

时间:2015-03-04 09:42:28

标签: 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

我认为这个Manifest文件是正确的,并且符合Smooth Streaming的标准。这是Manifest文件的简要摘录:

<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>

Fedora 21和ffmpeg的版本和配置是:

ffmpeg version git-2015-02-27-d490b26
configuration: --enable-gpl --enable-nonfree --enable-libfdk_aac --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264
libavutil         54. 19.100         
libavcodec        56. 26.100          
libavformat       56. 23.105           
libavdevice       56.  4.100                   
libavfilter        5. 11.102          
libswscale         3.  1.101        
libswresample      1.  1.100           
libpostproc       53.  3.100 

PD :我更喜欢只使用ffmpeg工具

PD2 :与Microsoft Smooth Streaming Manifest文件相同:

ffmpeg -i http://mediadl.microsoft.com/mediadl/iisnet/smoothmedia/Experience/BigBuckBunny_720p.ism/Manifest
Invalid data found when processing input

全部谢谢

1 个答案:

答案 0 :(得分:0)

不支持平滑流多路分配。

这里是official doc,在多路复用器部分中不会显示平滑流。这是当您询问支持哪些类型时的输出

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