Stas Oskin wrote:
> Hi.
>
>> note that MP4 is not really a streamable format (when a .mp4 file
>> is streamed, the streamer demuxes it and only sends the audio and
>> video elementary streams).
>
> And if I don't create the MP4 at all - but encode on fly? This means I
> don't have any format per se, but just A/V streams.
>
> Are these streams timed by timestamps, or by the set frame rate on
> stream opening?
I think this depends on the encoder.
If it is encoding "fixed frame rate" video, then it generates timestamps
based on the frame rate. Otherwise, you can pass timestamp values to
the encoder.
>> Not sure about what you are asking... It might happen that in some
>> broken files the MP4 headers contain wrong information about the frame
>> rate, but I do not know how frequent/probable this is.
>>
>> Another possibility is a file containing video with a variable frame
>> rate (but I do not know if this is supported by mov/mp4).
>
> I meant that ffmpeg suggests timestamps based on set frame rate, but
> they can be changed freely?
I do not think timestamps can be changed freely: they depend on the
video or audio source.
>> If the file is not broken, the timestamps must be consistent with the
>> declared frame rate.
>
> And if the source frame rate changes, we have a problem here as we
> can't change the sent timestamps to work according to source frames,
> because of the fixed frame rate set. Am I correct?
Yes, you can have this kind of problems (but I think this will depend
on the encoding algorithm, on the codec, on the video player, and
similar). The only thing you can do to have a reliable answer is
to try... ;-)
Luca
_______________________________________________
libav-user mailing list
[email protected]
https://lists.mplayerhq.hu/mailman/listinfo/libav-user