[FFmpeg-user] ffmpeg reported fps different than actual file's

tasos tasoss at trigonongroup.com
Thu Aug 3 03:27:30 EEST 2017


On 8/3/2017 2:24 AM, James Girotti wrote:
> On Wed, Aug 2, 2017 at 3:09 PM, tasos <tasoss at trigonongroup.com> wrote:
>
>> Hello again.
>> A lot of information and i'm trying to process them.
>> I know a few basic things about video processing in general.
>> Anyway,the specific dvb source channel is quite strange or at least this
>> is how it looks
>> to me.
>>
>>> Is this the ffprobe output from the file or your DVB capture device? I
>>> politely request you provide full command lines and output in the future.
>>>
>> That was from the file.
>>
>>
>> Can you dump directly from the device to file without using ffmpeg? I.E.:
>> Yes i can.
>>
> That should make troubleshooting much easier! Glad you're able to do that.
>
>
>> ffprobe -v error -select_streams v:0 -show_entries  \
>>> stream=r_frame_rate,avg_frame_rate -of default=nw=1 ./foo.ts
>>>
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] SPS unavailable in decode_picture_timing
>>> [h264 @ 0x4088420] non-existing PPS 0 referenced
>>> [h264 @ 0x4088420] decode_slice_header error
>>> [h264 @ 0x4088420] no frame!
>>> [h264 @ 0x4088420] mmco: unref short failure
>>> r_frame_rate=25/1repeated 1 times
>>> avg_frame_rate=25/1
>>> r_frame_rate=25/1
>>> avg_frame_rate=25/1
>>>
>> Vlc reports 25fps! And btw the video is interlaced.
>>
> Based on that it appears that your device is outputting an h264 video
> stream @ exactly 25 fps, did you run the other command I recommended to get
> the time base values?
Yes and now i think i can get more info from those commands.I mean what 
happens when fps change according to time.

>
>
>> The fact that i used avi doesn't matter.I mean i could use something else.
>> Do you recommend mkv ?
>>
> I personally use MKV as much as possible, it supports the widest range of
> audio/video/subtitle formats. I can always remux to another container if
> absolutely needed. The only negative I have come across is the metadata
> implementation/specification. From what I've read different programs tend
> to use slightly different metadata tags for the same piece of data. Not
> really a problem for me though, haven't run into it.
>
>
>> Moreover,is the above raw output from the device the best way to be sure
>> about the fps etc ?
>>
> I think it's likely the best and most accurate. You might want to research
> the exact device and v4l driver (I'm assuming you're on Linux) on
> capabilities/expected output.
Yes it's Linux.
>
>
>> Thanks for the long reply and the time you spent on this. Of course
>> i have understood a few things better but i should read it again a few
>> more times
>> in order to completely get it :)
>>
> It was fun and I learned how to get output from ffprobe that I can
> understand better! Hopefully, it will help others too.
I hope too! :)
>
>
>> This whole thing about fps started when i had audio delay problems.
>> The problem appeared only when i was using -c:v h264_cuvid .
>> And then,i somehow thought about fps and audio.
>> But i should post another question about the audio delay problem...
>
> Yes, start another question/thread. I already have some ideas there too,
> based on my own personal struggles.
I'm sure you will have a solution.Nevertheless I must prepare a complete 
scenario.
Thanks again!
>
> -JG
> _______________________________________________
> ffmpeg-user mailing list
> ffmpeg-user at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-user
>
> To unsubscribe, visit link above, or email
> ffmpeg-user-request at ffmpeg.org with subject "unsubscribe".




More information about the ffmpeg-user mailing list