Le tiistaina 19. joulukuuta 2023, 18.58.40 EET Michael Niedermayer a écrit : > so the idea is that we cannot access any GUI in any code from anything in > libavformat and probably all other libs, ever
No. The idea is that a command line program cannot use the GUI, and a library can only use the GUI if the main program is a GUI program. > no debug with graphical output > no vissualizuation of anything > no devices > no libs that expose anything that would need a GUI for configuration You can do all those things as long as you assume that the main program is a GUI program running the Mac-specific UI main loop. AFAICT, you can write a macOS OpenGL or Metal video output device and a CoreAudio audio output device, and any GUI program that uses FFmpeg can then use those devices. Trying to fit this into a generic portable command line tool is not going to work though. Then SDL adds the extra problem that it probably only works with its own API driving the main loop, and not just any API layered on top of Mac GUI frameworks. If so, the only proper way to support it (on Mac) is to make a dedicated player. Of course, it's also possible to skip support for SDL on Mac. Lastly, it has been made clear by the proponents of the muxer that this is but a convenient trick so that a real muxer can be swapped for a renderer wherever a muxer is expected. In other words, it is a literal kludge (from the wiktionary: "Any construction or practice, typically crude yet effective, designed to solve a problem temporarily or expediently"). That's pretty much the antithesis of good and sound API design. -- Rémi Denis-Courmont http://www.remlab.net/ _______________________________________________ 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".