From: Gyan Doshi <ffmpeg@gyani.pro>
To: ffmpeg-devel@ffmpeg.org
Subject: Re: [FFmpeg-devel] [PATCH] avformat/dump: Change precision of stream start offsets
Date: Tue, 22 Apr 2025 10:04:43 +0530
Message-ID: <557ee5c2-64ec-471a-8f30-dc9fc7cec8fa@gyani.pro> (raw)
In-Reply-To: <DM8P223MB036578CCED26965A7D0EC5ECBAB82@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM>
On 2025-04-22 02:22 am, softworkz . wrote:
>
>> -----Original Message-----
>> From: ffmpeg-devel <ffmpeg-devel-bounces@ffmpeg.org> On Behalf Of
>> Marton Balint
>> Sent: Montag, 21. April 2025 22:18
>> To: FFmpeg development discussions and patches <ffmpeg-
>> devel@ffmpeg.org>
>> Subject: Re: [FFmpeg-devel] [PATCH] avformat/dump: Change precision of
>> stream start offsets
>>
>>
>>
>> On Mon, 21 Apr 2025, softworkz . wrote:
>>
>>>
>>>> -----Original Message-----
>>>> From: ffmpeg-devel <ffmpeg-devel-bounces@ffmpeg.org> On Behalf Of
>>>> Marton Balint
>>>> Sent: Montag, 21. April 2025 21:32
>>>> To: FFmpeg development discussions and patches <ffmpeg-
>>>> devel@ffmpeg.org>
>>>> Subject: Re: [FFmpeg-devel] [PATCH] avformat/dump: Change precision
>> of
>>>> stream start offsets
>>>>
>>>>
>>>>
>>>> On Mon, 21 Apr 2025, softworkz . wrote:
>>>>
>>>>>
>>>>>> -----Original Message-----
>>>>>> From: ffmpeg-devel <ffmpeg-devel-bounces@ffmpeg.org> On Behalf Of
>>>> Gyan
>>>>>> Doshi
>>>>>> Sent: Montag, 21. April 2025 06:51
>>>>>> To: ffmpeg-devel@ffmpeg.org
>>>>>> Subject: Re: [FFmpeg-devel] [PATCH] avformat/dump: Change
>> precision
>>>> of
>>>>>> stream start offsets
>>>>>>
>>>>>>
>>>>>>
>>>>>> On 2025-04-21 01:41 am, softworkz wrote:
>>>>>>> From: softworkz <softworkz@hotmail.com>
>>>>>>>
>>>>>>> Changing this to 6 digits to align with other
>>>>>>> printed times
>>>>>>>
>>>>>>> Signed-off-by: softworkz <softworkz@hotmail.com>
>>>>>>> ---
>>>>>>> avformat/dump: Change precision of stream start offsets
>>>>>>>
>>>>>>> Changing this to 6 digits to align with other printed times
>>>>>>>
>>>>>>> Signed-off-by: softworkz softworkz@hotmail.com
>>>>>>>
>>>>>>> Published-As:
>> https://github.com/ffstaging/FFmpeg/releases/tag/pr-
>>>>>> ffstaging-72%2Fsoftworkz%2Fsubmit_start_offsets-v1
>>>>>>> Fetch-It-Via: git fetch https://github.com/ffstaging/FFmpeg pr-
>>>>>> ffstaging-72/softworkz/submit_start_offsets-v1
>>>>>>> Pull-Request: https://github.com/ffstaging/FFmpeg/pull/72
>>>>>>>
>>>>>>> libavformat/dump.c | 2 +-
>>>>>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>>>>>
>>>>>>> diff --git a/libavformat/dump.c b/libavformat/dump.c
>>>>>>> index 8c7db7b275..1bd0424f3d 100644
>>>>>>> --- a/libavformat/dump.c
>>>>>>> +++ b/libavformat/dump.c
>>>>>>> @@ -680,7 +680,7 @@ FF_ENABLE_DEPRECATION_WARNINGS
>>>>>>>
>>>>>>> if (st->start_time != AV_NOPTS_VALUE && st->start_time !=
>> 0
>>>> &&
>>>>>> st->time_base.den && st->time_base.num) {
>>>>>>> const double stream_start = av_q2d(st->time_base) *
>> st-
>>>>>>> start_time;
>>>>>>> - av_log(NULL, AV_LOG_INFO, ", Start-Time %.3fs",
>>>>>> stream_start);
>>>>>>> + av_log(NULL, AV_LOG_INFO, ", Start-Time %.6fs",
>>>>>> stream_start);
>>>>>>
>>>>>> The camel case is incongruous with the formatting of the text
>> next
>>>> To
>>>>>> It.
>>>>> Hi Gyan,
>>>>>
>>>>> as far as I'm seeing it, captions/labels are title case and values
>>>> are
>>>>> lower case. I would consider "Start-Time" to be a caption/label.
>>>> Let's
>>>>> look at an example:
>>>>>
>>>>> Stream #0:0[0x8fd]: Video: h264 (High) ([27][0][0][0] / 0x001B),
>>>> yuv420p(tv, bt709, top first), 1920x1080 [SAR 1:1 DAR 16:9], Level
>> 40,
>>>> 25 fps, 50 tbr, 90k tbn, Start-Time 32476.588s
>>>>> Stream #0:1[0x907](dut): Audio: mp2 ([3][0][0][0] / 0x0003),
>> 48000
>>>> Hz, stereo, fltp, 256 kb/s, Start-Time 32476.706s
>>>>> Stream #0:2[0x908](dut): Audio: ac3 (AC-3 / 0x332D4341), 48000
>> Hz,
>>>> 5.1(side), fltp, 448 kb/s, Start-Time 32476.643s
>>>>> Stream #0:3[0x909](GOS): Audio: mp2 ([3][0][0][0] / 0x0003),
>> 48000
>>>> Hz, stereo, fltp, 256 kb/s, Start-Time 32476.674s (visual impaired)
>>>> (descriptions)
>>>>> Stream #0:4[0x962](dut): Subtitle: dvb_subtitle ([6][0][0][0] /
>>>> 0x0006), Start-Time 32476.588s
>>>>> Stream #0:5[0x963](dut): Subtitle: dvb_subtitle ([6][0][0][0] /
>>>> 0x0006), Start-Time 32476.719s (hearing impaired)
>>>>
>>>> I think Gyan means fps, tbr or tbn. These are all lowercase and
>>>> abbreviations.
>>> Yes, I understood that. But these are units, not labels.
>>>
>>>
>>>> The one-line stream info should be as compact as
>>>> possible.
>>> Agreed.
>>>
>>>> So we should make it shorter, and we should lose the "s" unit as
>>>> well.
>>> I'm afraid, but omitting the unit makes no sense to me.
>>>
>>> Why?
>> Because it is redundant. You always print the start time in seconds,
>> users
>> will have no problem guessing the time measurement unit of timestamps.
>> E.g. see the status line of ffplay or mpv. Timestamps or time
>> differences miss the measurement unit, and nobody complianed...
> It's redundant only for those who know what it is. Everybody else will
> need to guess whether it's s or ms or us and whether it's in the
> time base of the stream or not.
>
> With the same argument, you can omit kb/s, fps, tbr, tbn etc.
> (user can infer the units from the order and count of values)
>
> This is something that I totally hate when applications are doing it,
> and I need to dig down deep into the source code for getting a
> definitive answer. Letting users "guess" is not ok IMO.
>
>
>>>> Something like:
>>>>
>>>> "in 1234.567"
>>> What means "in"?
>> in is short for inpoint.
>>
>>> Maybe "offset" if it's gotta be short..?
>> Or simply "start", if you don't like "in".
> It's not about liking, it's just that "in" doesn't ring any bell for me in that context.
>
> The problem with start is that it could also mean the timestamp value where the stream (incl. container) starts, so "start-offset" or "stream-start" would be more clear imo, even though I wouldn't completely reject having just "Start".
>
>
> Regarding the casing:
>
> Example:
> Stream #0:0(eng): Video: h264 (High), yuv420p(progressive), 1920x1080 [SAR 1:1 DAR 16:9], Level 42, 60 fps, 60 tbr, 1k tbn, Start-Time 2.790s (default)
>
> Why is "Level" capitalized? This fits into my understanding that I explained before (Labels are capitalized) - how does it fit into the claim that it should all be lower case?
The formatting and presentation should be consistent. Neither (format)
start or duration indicate units so better to keep it that way. If we do
change it, it should be for all.
start-offset wouldn't work since this is printing the absolute first pts
of a stream.
stream-start is not necessary since this is being printed within the
line for an individual stream, so 'start' is fine.
The Case is a nitpick. Not a blocker. It just looked out of place.
Regards,
Gyan
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
next prev parent reply other threads:[~2025-04-22 4:35 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-20 20:11 softworkz
2025-04-21 4:50 ` Gyan Doshi
2025-04-21 13:28 ` softworkz .
2025-04-21 19:31 ` Marton Balint
2025-04-21 19:50 ` softworkz .
2025-04-21 20:17 ` Marton Balint
2025-04-21 20:52 ` softworkz .
2025-04-22 4:34 ` Gyan Doshi [this message]
2025-04-22 19:25 ` Marton Balint
2025-04-22 19:37 ` [FFmpeg-devel] [PATCH v2] avformat/dump: Stream start offsets: change precision and label softworkz
2025-04-23 21:36 ` Marton Balint
2025-04-25 20:44 ` softworkz .
2025-04-29 21:16 ` [FFmpeg-devel] [PATCH v3] " softworkz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=557ee5c2-64ec-471a-8f30-dc9fc7cec8fa@gyani.pro \
--to=ffmpeg@gyani.pro \
--cc=ffmpeg-devel@ffmpeg.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
This inbox may be cloned and mirrored by anyone:
git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
ffmpegdev@gitmailbox.com
public-inbox-index ffmpegdev
Example config snippet for mirrors.
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git