1. Check out TSDuck. Assuming you are starting with a TS, you will probably have to extract the appropriate table in XML, write a patch in XML and rewrite the TS file, with the XML patch. So long as the field is in the TS Duck XML schema, you can, in theory, write any value you like to any of the supported fields in the TS Tables. The dude who writes TSDuck is an absolute gentleman and is super kind and helpful, so long as you have at least read his documentation and attempted a worked example. There's a bit of a learning curve (you'll get over it), but I have used TSDuck to edit some of the more obscure or "pro-broadcast" descriptors.

  2. Hey! long time no see! no much dvb support in fq master atm but there is an old stale PR draft how it could be improved

  3. fq remains one of my favorite tools in my arsenal alongside FFmpeg, TSDuck and qctools. The media landscape really needed an open-source header inspector. Whenever I need "truth", fq always comes to my rescue. Thankyou for all your work - it is great to see the tool growing in features, and has picked up a few github contributors along the way.

  4. Although you are trying to do this with keyframes and a copy, you may be better off using a lossless codec such as FFV1 level 3 and the segmenter muxer.

  5. I assume author's choice. The FFmpeg wiki is community contributed and is not guaranteed to be the canonical authority from the developer. It is just a wiki and is a good pointer, but is not guaranteed to be the authoritative. While the real docs and command line help are written by a developer, the wiki can be edited by any of us.

  6. I don't think so. The bitstream filter will remove all NAL units of type 6 (SEI side data), so it a bit of a blunt hammer. I don't see a more granular option with the remove_units filter.

  7. Thanks, very informative. I suspect based on what you mention above I should be able to script this. Gives me something to investigate anyhow. Thanks again.

  8. Great - if it works, do share your solution. Here is the kind of thing I was thinking of. This command uses a single video frame as a test, strips off all the SEI side data and writes a hello world string of unregistered side data.

  9. I would still like the main video audio with people talking, so don’t want all the audio stripped, but thank you for the response!

  10. You could try playing with speechnorm, which can be used to boost the frequencies that follow the same characteristics as human speech. Have a play with it and push the boundaries of the params. I don't use it so can't offer any guidance, but there is some rudimentary capability to identify, boost (or normalize) speech. Have a play with it anyway.

  11. This uses avsynctest virtual input, that creates a beep track [out0] and a video track [out1].

  12. Ideally, you would have all machines recording a timecode track based on a common clock. Assuming your setup is not happening in a studio with a synced TC gen, you are not going to be able to get frame accurate - but you should be able to make your life easier with timecodes. That's what they are there for and how a studio or production stays in sync. Have a read about timecodes and see if you can approximately simulate the same workflow. This is all to solve the problem of having to "fix it in post".

  13. Just used it today to convert some series I got in .avi format to .mp4, encoded the video x265, and I switched the audio streams because the first one was in Spanish. I should have added the subtitles too but forgot lol.

  14. You should check out the speechnorm filter - it boosts the ranges where speech occurs. This poster had good results

  15. >now I have to say I m very confused with the mpg world (is mpg a container, which codec is mpeg2video)

  16. If that is the case, I suspect that your dshow source may be RGB all along and it is this forcing a RGB>YUV auto-inserted filter ... and that is why it why lutrgb works nicely but limiter/lutyuv does not. I don't have dshow so I can't confirm whether it is RGB or YUV.

  17. 60,000/1,001 is always the most correct for the NTSC-type framerate. The original was defined as 30/1.001.

  18. I've always wondered why there is not a named constant for ntsc-field to define 60000/1001 like there is for the other common framerates. Anyone know? Other than use of named constants is uncommon? I find the constants helpful for clean syntax.

  19. Very few sources or broadcasters ever used 59.94 fps. The 720p standard was never very popular, and it was the only one. When people talked about 59.94 they're almost always talking about interlaced, and it's 59.94 fields per second, 29.97 frames per second.

  20. Exactly - for generating interlaced. For me, the use-case of 60000/1001 comes in when I want to make 480i (or 1080i) interlaced test content at full temporal resolution for DVD, ATSC1.0 and BT.601-525 test material. I would first create the source at a temporal resolution of 60000/1001 and then tinterlace to simulate a good-old-fashioned broadcast. I try to use the named constants in my ever-expanding collection of synthetically generated testsources for BT.601, DVD, telecine and interlace testsrc and test patterns.

  21. I hate that some very vocal members of the FFmpeg developer community dislike each other so much. It saddens me to see them fall out, fork from FFmpeg to libav, eventually settle their differences and then continue to have massive fallouts, fork off to librempeg etc... It has been so sad to see some brilliant people struggle to communicate nicely on either the user or devel mailing lists. I am amazed that the project somehow progresses, improves and gets stronger every day from those kind souls who find ways to put away their differences and produce such a useful API and command line toolset. To you developers who stick with it - a thank-you. I don't know how you do it.

  22. That stick still contains some sort of hardware decoder, probably something cheap.

  23. Anton speaks the truth about sticks and smartTVs that may be limited to 1080 level 4.1. Very low-end Roku sticks and very low-end fire sticks can tap out at level 4.2, depending on the year/model.

  24. Just adding -report to your command line is a great start. It saves a debug log to the current directory - and the head of the file includes how params are interpreted by FFmpeg's interpreter.

  25. You'll probably have an "aspect" button on your TV's remote that toggles between [ auto | full | 16x9 | 4x3 | stretch | zoom ].

  26. Yes. Use the plotframes tool, included in the tools folder of your FFmpeg distro as the basis. It breaks down frame size by frame type.

  27. Yeah, ideally mpdecimate would be extended to include a dupe-detect mode that writes to frame metadata. Unfortunately, unlike many other filters, mpdecimate does not currently write out statistics out to frame-level metadata, where it could then be easily exported by a user with the metadata filter, ffprobe's frame tags or drawgraph. Ideally, it would write stats to something like'lavfi.mpdecimate.drop_count' or 'lavfi.mpdecimate.duplicate' much like the freezedetect / ocr / palletegen / ebur128 filters write to frame metadata. If you add a feature request and sample file to

  28. I verified all the codecs I used above are truly lossless by doing a pixelwise comparison over all extracted frames. I tried your level 3 and gv 1 parameters for ffv1 but they did not appear to make any difference (same compression time, same filesizes). It didn't work if I used the -noauto_conversion_filters flag, though, so I wasn't using that. I'm not sure if that flag is important to get the other parameters to work or not.

  29. If all the various workflows are lossless enough for you, then that's great. I hope I did not send you down a rabbit hole.

  30. Incredible: 'repeat' is precise what I want, to a T. I'll actually just put the tapes on the shelf until this is merged, because this will improve my workflow immensely.

  31. Certainly not a decklink user - I don't even have one. I just lurk like a voyeur on FFmpeg devel mailing list and saw the patch this morning and connected the dots with your post - since it was exactly what you needed.

Leave a Reply

Your email address will not be published. Required fields are marked *

News Reporter