[FFmpeg-trac] #7646(undetermined:new): Loading Remote ffmpeg FMP4 HLS Streams Return Faulty Codec with Missing Pixel Format

FFmpeg trac at avcodec.org
Mon Dec 31 00:22:42 EET 2018


#7646: Loading Remote ffmpeg FMP4 HLS Streams Return Faulty Codec with Missing
Pixel Format
-------------------------------------+-------------------------------------
             Reporter:  offek        |                     Type:  defect
               Status:  new          |                 Priority:  important
            Component:               |                  Version:
  undetermined                       |  unspecified
             Keywords:  fmp4 hls     |               Blocked By:
  pixel codec remote                 |  Reproduced by developer:  0
             Blocking:               |
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 Summary of the bug:
 An HLS stream of the fmp4 segment format created with ffmpeg is not
 playable (using ffplay), and is not able to be copied/streamed using
 another ffmpeg instance from remote machines because it returns faulty
 codec parameters with '''missing pixel format "none(left)" instead of
 yuv420p'''.
 How to reproduce:

 In one machine, in the correct html directory, create the fmp4 hls stream
 {{{
 sudo ffmpeg -y -analyzeduration 6M -probesize 6M -i "udp://..." -map 0
 -profile:v main -bf 0 -preset faster -ar 48000 -crf 20 -b:a 96k -c:v h264
 -c:a aac -movflags faststart -f hls -hls_segment_type fmp4 -hls_time 5
 -hls_list_size 12 -hls_flags delete_segments -hls_segment_filename
 high_%d.m4s high.m3u8
 }}}

 In any other machine
 {{{
 sudo ffmpeg -loglevel debug -y -analyzeduration 10M -probesize 10M -f hls
 -i http://69.79.26.106/transcode/fmp4test1/high.m3u8 -map 0 -codec copy
 -preset fast -f hls -hls_segment_type fmp4 -hls_time 5 -hls_list_size 725
 -hls_flags delete_segments -hls_segment_filename high_%d.m4s high.m3u8
 }}}
 OR
 {{{
 ffplay http://69.79.26.106/transcode/fmp4test1/high.m3u8
 }}}
 This second set of commands fail, as they can't detect the pixel format
 and throw the partial file error.
 I made sure the correct file format is returned in http. Been trying to
 fix it for weeks. Adding pix_fmt doesn't help here.

 You can test using a short fmp4 hls stream I created:
 http://69.79.26.106/transcode/fmp4test1/high.m3u8
 As you can see, vlc and quicktime can play the video because they force
 the pixel format, however ffmpeg and ffplay fail to do so.


 Patches should be submitted to the ffmpeg-devel mailing list and not this
 bug tracker.

--
Ticket URL: <https://trac.ffmpeg.org/ticket/7646>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list