mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-29 06:45:47 +00:00
9b8cc36ce0
See the comment block at the top of fftools/ffmpeg_sched.h for more details on what this scheduler is for. This commit adds the scheduling code itself, along with minimal integration with the rest of the program: * allocating and freeing the scheduler * passing it throughout the call stack in order to register the individual components (demuxers/decoders/filtergraphs/encoders/muxers) with the scheduler The scheduler is not actually used as of this commit, so it should not result in any change in behavior. That will change in future commits.
66 lines
1.8 KiB
Makefile
66 lines
1.8 KiB
Makefile
AVPROGS-$(CONFIG_FFMPEG) += ffmpeg
|
|
AVPROGS-$(CONFIG_FFPLAY) += ffplay
|
|
AVPROGS-$(CONFIG_FFPROBE) += ffprobe
|
|
|
|
AVPROGS := $(AVPROGS-yes:%=%$(PROGSSUF)$(EXESUF))
|
|
PROGS += $(AVPROGS)
|
|
|
|
AVBASENAMES = ffmpeg ffplay ffprobe
|
|
ALLAVPROGS = $(AVBASENAMES:%=%$(PROGSSUF)$(EXESUF))
|
|
ALLAVPROGS_G = $(AVBASENAMES:%=%$(PROGSSUF)_g$(EXESUF))
|
|
|
|
OBJS-ffmpeg += \
|
|
fftools/ffmpeg_dec.o \
|
|
fftools/ffmpeg_demux.o \
|
|
fftools/ffmpeg_enc.o \
|
|
fftools/ffmpeg_filter.o \
|
|
fftools/ffmpeg_hw.o \
|
|
fftools/ffmpeg_mux.o \
|
|
fftools/ffmpeg_mux_init.o \
|
|
fftools/ffmpeg_opt.o \
|
|
fftools/ffmpeg_sched.o \
|
|
fftools/objpool.o \
|
|
fftools/sync_queue.o \
|
|
fftools/thread_queue.o \
|
|
|
|
OBJS-ffplay += fftools/ffplay_renderer.o
|
|
|
|
define DOFFTOOL
|
|
OBJS-$(1) += fftools/cmdutils.o fftools/opt_common.o fftools/$(1).o $(OBJS-$(1)-yes)
|
|
ifdef HAVE_GNU_WINDRES
|
|
OBJS-$(1) += fftools/fftoolsres.o
|
|
endif
|
|
$(1)$(PROGSSUF)_g$(EXESUF): $$(OBJS-$(1))
|
|
$$(OBJS-$(1)): | fftools
|
|
$$(OBJS-$(1)): CFLAGS += $(CFLAGS-$(1))
|
|
$(1)$(PROGSSUF)_g$(EXESUF): LDFLAGS += $(LDFLAGS-$(1))
|
|
$(1)$(PROGSSUF)_g$(EXESUF): FF_EXTRALIBS += $(EXTRALIBS-$(1))
|
|
-include $$(OBJS-$(1):.o=.d)
|
|
endef
|
|
|
|
$(foreach P,$(AVPROGS-yes),$(eval $(call DOFFTOOL,$(P))))
|
|
|
|
all: $(AVPROGS)
|
|
|
|
fftools/ffprobe.o fftools/cmdutils.o: libavutil/ffversion.h | fftools
|
|
OUTDIRS += fftools
|
|
|
|
ifdef AVPROGS
|
|
install: install-progs install-data
|
|
endif
|
|
|
|
install-progs-yes:
|
|
install-progs-$(CONFIG_SHARED): install-libs
|
|
|
|
install-progs: install-progs-yes $(AVPROGS)
|
|
$(Q)mkdir -p "$(BINDIR)"
|
|
$(INSTALL) -c -m 755 $(AVPROGS) "$(BINDIR)"
|
|
|
|
uninstall: uninstall-progs
|
|
|
|
uninstall-progs:
|
|
$(RM) $(addprefix "$(BINDIR)/", $(ALLAVPROGS))
|
|
|
|
clean::
|
|
$(RM) $(ALLAVPROGS) $(ALLAVPROGS_G) $(CLEANSUFFIXES:%=fftools/%)
|