Re: [FFmpeg-devel] [PATCH 6/9] ffprobe: use AVFrame.duration instead of AVFrame.pkt_duration

2022-07-14 Thread James Almer

On 7/14/2022 6:34 AM, Anton Khirnov wrote:

Quoting James Almer (2022-07-13 14:39:20)

You should probably add new entries to the schema file instead.

https://git.videolan.org/?p=ffmpeg.git;a=blob;f=doc/ffprobe.xsd;h=3af621a17ae884adfeacb7cd50c60e1553808188;hb=HEAD#l93

Once frame->pkt_duration is gone, ffprobe shouldn't keep printing a
frame->duration value as "pkt_duration" and "pkt_duration_time".
Also, if frame->duration is supposed to be able to have values other
than those we wrote to pkt_duration, maybe keep printing the latter with
the existing schema entries until it's all gone (You can use
AV_NOWARN_DEPRECATED() to shut compilers up).


Well, the whole idea that values printed by ffprobe should precisely
mirror the libav* API, up to the field names of our structs, seems quite
questionable to me, IMO it makes more sense for it to provide a layer of
abstraction over the libraries. But then again I neither maintain
ffprobe, nor use it very much, so I wanted to keep changes to a minimum.
If nobody has other plans for dealing with this then I can certainly
make the changes you're sugesting.


ffprobe used to print pkt_pts until it was removed, so printing a field 
that does not exist (once it's removed) where the new values assigned to 
it have potentially slightly different semantics than the old ones does 
not seem like a good idea.

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".


Re: [FFmpeg-devel] [PATCH 6/9] ffprobe: use AVFrame.duration instead of AVFrame.pkt_duration

2022-07-14 Thread Anton Khirnov
Quoting James Almer (2022-07-13 14:39:20)
> You should probably add new entries to the schema file instead.
> 
> https://git.videolan.org/?p=ffmpeg.git;a=blob;f=doc/ffprobe.xsd;h=3af621a17ae884adfeacb7cd50c60e1553808188;hb=HEAD#l93
> 
> Once frame->pkt_duration is gone, ffprobe shouldn't keep printing a 
> frame->duration value as "pkt_duration" and "pkt_duration_time".
> Also, if frame->duration is supposed to be able to have values other 
> than those we wrote to pkt_duration, maybe keep printing the latter with 
> the existing schema entries until it's all gone (You can use 
> AV_NOWARN_DEPRECATED() to shut compilers up).

Well, the whole idea that values printed by ffprobe should precisely
mirror the libav* API, up to the field names of our structs, seems quite
questionable to me, IMO it makes more sense for it to provide a layer of
abstraction over the libraries. But then again I neither maintain
ffprobe, nor use it very much, so I wanted to keep changes to a minimum.
If nobody has other plans for dealing with this then I can certainly
make the changes you're sugesting.

-- 
Anton Khirnov
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".


Re: [FFmpeg-devel] [PATCH 6/9] ffprobe: use AVFrame.duration instead of AVFrame.pkt_duration

2022-07-13 Thread James Almer

You should probably add new entries to the schema file instead.

https://git.videolan.org/?p=ffmpeg.git;a=blob;f=doc/ffprobe.xsd;h=3af621a17ae884adfeacb7cd50c60e1553808188;hb=HEAD#l93

Once frame->pkt_duration is gone, ffprobe shouldn't keep printing a 
frame->duration value as "pkt_duration" and "pkt_duration_time".
Also, if frame->duration is supposed to be able to have values other 
than those we wrote to pkt_duration, maybe keep printing the latter with 
the existing schema entries until it's all gone (You can use 
AV_NOWARN_DEPRECATED() to shut compilers up).


On 7/13/2022 6:17 AM, Anton Khirnov wrote:

---
  fftools/ffprobe.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fftools/ffprobe.c b/fftools/ffprobe.c
index f156663019..a041241e1e 100644
--- a/fftools/ffprobe.c
+++ b/fftools/ffprobe.c
@@ -2570,8 +2570,8 @@ static void show_frame(WriterContext *w, AVFrame *frame, 
AVStream *stream,
  print_time("pkt_dts_time",  frame->pkt_dts, &stream->time_base);
  print_ts  ("best_effort_timestamp", frame->best_effort_timestamp);
  print_time("best_effort_timestamp_time", frame->best_effort_timestamp, 
&stream->time_base);
-print_duration_ts  ("pkt_duration",  frame->pkt_duration);
-print_duration_time("pkt_duration_time", frame->pkt_duration, 
&stream->time_base);
+print_duration_ts  ("pkt_duration",  frame->duration);
+print_duration_time("pkt_duration_time", frame->duration, 
&stream->time_base);
  if (frame->pkt_pos != -1) print_fmt("pkt_pos", "%"PRId64, 
frame->pkt_pos);
  else  print_str_opt("pkt_pos", "N/A");
  if (frame->pkt_size != -1) print_val("pkt_size", frame->pkt_size, 
unit_byte_str);

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".


[FFmpeg-devel] [PATCH 6/9] ffprobe: use AVFrame.duration instead of AVFrame.pkt_duration

2022-07-13 Thread Anton Khirnov
---
 fftools/ffprobe.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fftools/ffprobe.c b/fftools/ffprobe.c
index f156663019..a041241e1e 100644
--- a/fftools/ffprobe.c
+++ b/fftools/ffprobe.c
@@ -2570,8 +2570,8 @@ static void show_frame(WriterContext *w, AVFrame *frame, 
AVStream *stream,
 print_time("pkt_dts_time",  frame->pkt_dts, &stream->time_base);
 print_ts  ("best_effort_timestamp", frame->best_effort_timestamp);
 print_time("best_effort_timestamp_time", frame->best_effort_timestamp, 
&stream->time_base);
-print_duration_ts  ("pkt_duration",  frame->pkt_duration);
-print_duration_time("pkt_duration_time", frame->pkt_duration, 
&stream->time_base);
+print_duration_ts  ("pkt_duration",  frame->duration);
+print_duration_time("pkt_duration_time", frame->duration, 
&stream->time_base);
 if (frame->pkt_pos != -1) print_fmt("pkt_pos", "%"PRId64, 
frame->pkt_pos);
 else  print_str_opt("pkt_pos", "N/A");
 if (frame->pkt_size != -1) print_val("pkt_size", frame->pkt_size, 
unit_byte_str);
-- 
2.34.1

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".