On Mon, Mar 14, 2022 at 12:04:46PM -0400, Dave Rice wrote: > > > > On Mar 12, 2022, at 1:09 PM, Michael Niedermayer wrote: > > > > On Sat, Mar 12, 2022 at 10:11:52AM -0500, Dave Rice wrote: > >> > >> > >>> On Mar 10, 2022, at 4:41 AM, Tobias Rapp wrote: > >>> > >>> On 09/03/2022 19:18, Michael Niedermayer wrote: > >>>> Signed-off-by: Michael Niedermayer > >>>> --- > >>>> doc/bitstream_filters.texi | 30 ++++++++ > >>>> libavcodec/Makefile | 1 + > >>>> libavcodec/bitstream_filters.c | 1 + > >>>> libavcodec/dv_error_marker_bsf.c | 127 +++++++++++++++++++++++++++++++ > >>>> 4 files changed, 159 insertions(+) > >>>> create mode 100644 libavcodec/dv_error_marker_bsf.c > >>>> diff --git a/doc/bitstream_filters.texi b/doc/bitstream_filters.texi > >>>> index a0092878c8..8c5d84dceb 100644 > >>>> --- a/doc/bitstream_filters.texi > >>>> +++ b/doc/bitstream_filters.texi > >>>> @@ -132,6 +132,36 @@ the header stored in extradata to the key packets: > >>>> ffmpeg -i INPUT -map 0 -flags:v +global_header -c:v libx264 -bsf:v dump_extra out.ts > >>>> @end example > >>>> +@section dv_error_marker > >>>> + > >>>> +Blocks in DV which are marked as damaged are replaced by blocks of the specified color. > >>>> + > >>>> +@table @option > >>>> +@item color > >>>> +The color to replace damaged blocks by > >>>> +@item sta > >>>> +A 16 bit mask which specifies which of the 16 possible error status values are > >>>> +to be replaced by colored blocks. 0xFFFE is the default which replaces all non 0 > >>>> +error status values. > >>>> +@table @samp > >>>> +@item ok > >>>> +No error, no concealment > >>>> +@item err > >>>> +Error, No concealment > >>>> +@item res > >>>> +Reserved > >>>> +@item notok > >>>> +Error or concealment > >>>> +@item notres > >>>> +Not reserved > >>>> +@item Aa, Ba, Ca, Ab, Bb, Cb, A, B, C, a, b, erri, erru > >>>> +The specific error status code > >>>> +@end table > >>>> +see page 44-46 or section 5.5 of > >>>> +@url{http://web.archive.org/web/20060927044735/http://www.smpte.org/smpte_store/standards/pdf/s314m.pdf} > >>>> + > >>>> +@end table > >>>> + > >>>> @section eac3_core > >>>> [...] > >>> The filter options look nice to me now. Have not actually tested the bitstream filter on DV files, though. > >> > >> I tested this and this works well for me. Here's a few samples that demonstrate the filter: > >> > >> ./ffmpeg -i https://samples.ffmpeg.org/archive/audio/pcm_s16le/dv+dvvideo+pcm_s16le++dropout.dv -bsf dv_error_marker=sta=b -f rawvideo -c:v copy - | ffplay - > >> ./ffmpeg -i https://archive.org/download/DvAnalyzerSampleDvVideoErrorConcealment/DV_Analyzer_Sample_Video_Error_Concealment_original.dv -bsf dv_error_marker=sta=b -f rawvideo -c:v copy - | ffplay - > > > > I tested a bit more and it failed with dvcprohd, i have fixed it and will in a > > moment post a version that seems to work with both > > please retest > > I retested the new version on variety of DV25 and DV50 content. Looks good to me. will apply thx [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB "Nothing to hide" only works if the folks in power share the values of you and everyone you know entirely and always will -- Tom Scott