[FFmpeg-user] HLS one liner from /dev/videoX

Kai Hendry hendry at webconverger.com
Thu Apr 30 12:06:03 CEST 2015

On 30 April 2015 at 17:21, Tom Evans <tevans.uk at googlemail.com> wrote:
> What is missing (and the only thing that is really required) is the
> full command line that you used to invoke ffmpeg, and the console
> output that invocation of ffmpeg produced, presented as inline in the
> email. No attachments, no externally linked files that might go away

Wow, so you've not seen a -report like this?

>>> You may have overseen one important message in your logs:
>>>> No pixel format specified, yuv422p for H.264 encoding chosen.
>>>> Use -pix_fmt yuv420p for compatibility with outdated media players.
>> I doubt IOS safari is an outdated player.
> You know you don't have to doubt, there is this thing called google
> that can answer questions like "Does IOS support h264 in 4:2:2
> chrome".

I have no idea what 4:2:2 is supposed to mean.

But after some testing I must concede that:

ffmpeg -f v4l2 -i /dev/video0 -pix_fmt yuv420p playlist.m3u8

Makes it work. Why isn't -pix_fmt yuv420p simply the default ?! This
is what's needed to make HLS work in the devices that actually play

> I'll let you know - it does not. Almost no hardware accelerated
> playback supports 4:2:2 chroma, certainly no iphone supports anything
> other than 4:2:0. See this (extensive) stackoverflow answer:
>> http://stackoverflow.com/questions/26626689/ffmpeg-generated-videos-crashes-on-ios
> 4:2:2 chroma is used mainly in high end video capture devices and formats.

Interesting. Thanks.

Though I still wish ffmpeg has sane defaults. Hours and hours later,
here I am reading about Chroma subsampling.

More information about the ffmpeg-user mailing list