]> git.sesse.net Git - nageru/commitdiff
Remove the redundant with_audio parameter from the Mux constructor.
authorSteinar H. Gunderson <sgunderson@bigfoot.com>
Mon, 24 Dec 2018 22:12:39 +0000 (23:12 +0100)
committerSteinar H. Gunderson <sgunderson@bigfoot.com>
Mon, 24 Dec 2018 22:12:39 +0000 (23:12 +0100)
futatabi/video_stream.cpp
nageru/kaeru.cpp
nageru/quicksync_encoder.cpp
nageru/video_encoder.cpp
shared/mux.cpp
shared/mux.h

index 27e2c4a81e499ddc031b21434c05fd0490f1f37f..dcf44f8e452fb9277e25bd08eafd681d0ed286b4 100644 (file)
@@ -264,8 +264,7 @@ void VideoStream::start()
 
        size_t width = global_flags.width, height = global_flags.height;  // Doesn't matter for MJPEG.
        mux.reset(new Mux(avctx, width, height, Mux::CODEC_MJPEG, /*video_extradata=*/"", /*audio_codec_parameters=*/nullptr,
-               AVCOL_SPC_BT709, Mux::WITHOUT_AUDIO,
-               COARSE_TIMEBASE, /*write_callback=*/nullptr, Mux::WRITE_FOREGROUND, {}));
+               AVCOL_SPC_BT709, COARSE_TIMEBASE, /*write_callback=*/nullptr, Mux::WRITE_FOREGROUND, {}));
 
        encode_thread = thread(&VideoStream::encode_thread_func, this);
 }
index 5cd6d297d6759dfc3d8b19d96bc33d534a9c5d7e..9d9738391082a484cf3338361c2746aff1aa5ec7 100644 (file)
@@ -73,7 +73,7 @@ unique_ptr<Mux> create_mux(HTTPD *httpd, AVOutputFormat *oformat, X264Encoder *x
 
        unique_ptr<Mux> mux;
        mux.reset(new Mux(avctx, global_flags.width, global_flags.height, Mux::CODEC_H264, video_extradata, audio_encoder->get_codec_parameters().get(),
-               get_color_space(global_flags.ycbcr_rec709_coefficients), Mux::WITH_AUDIO, COARSE_TIMEBASE,
+               get_color_space(global_flags.ycbcr_rec709_coefficients), COARSE_TIMEBASE,
                /*write_callback=*/nullptr, Mux::WRITE_FOREGROUND, { &stream_mux_metrics }));
        stream_mux_metrics.init({{ "destination", "http" }});
        return mux;
index 0d9a796960c69cafb5ffb887154e03739a141567..4d53b0b499bdd1c9032f824172bb434bd42b70bd 100644 (file)
@@ -1817,7 +1817,7 @@ void QuickSyncEncoderImpl::open_output_file(const std::string &filename)
        {
                lock_guard<mutex> lock(file_audio_encoder_mutex);
                AVCodecParametersWithDeleter audio_codecpar = file_audio_encoder->get_codec_parameters();
-               file_mux.reset(new Mux(avctx, frame_width, frame_height, Mux::CODEC_H264, video_extradata, audio_codecpar.get(), get_color_space(global_flags.ycbcr_rec709_coefficients), Mux::WITH_AUDIO, TIMEBASE,
+               file_mux.reset(new Mux(avctx, frame_width, frame_height, Mux::CODEC_H264, video_extradata, audio_codecpar.get(), get_color_space(global_flags.ycbcr_rec709_coefficients), TIMEBASE,
                        std::bind(&DiskSpaceEstimator::report_append, disk_space_estimator, filename, _1),
                        Mux::WRITE_BACKGROUND,
                        { &current_file_mux_metrics, &total_mux_metrics }));
index bd93ae265369ec7076ee445c5bb38edb7f290298..8dee6da8307d47814f650302ad6d6ded2e78398e 100644 (file)
@@ -194,8 +194,7 @@ void VideoEncoder::open_output_stream()
        }
 
        stream_mux.reset(new Mux(avctx, width, height, video_codec, video_extradata, stream_audio_encoder->get_codec_parameters().get(),
-               get_color_space(global_flags.ycbcr_rec709_coefficients),
-               Mux::WITH_AUDIO, COARSE_TIMEBASE,
+               get_color_space(global_flags.ycbcr_rec709_coefficients), COARSE_TIMEBASE,
                /*write_callback=*/nullptr, Mux::WRITE_FOREGROUND, { &stream_mux_metrics }));
        stream_mux_metrics.init({{ "destination", "http" }});
 }
index 4970bcea81bcd684eb019d5484586d888c757a80..da8e2eed22a68d8769c89b1e09c6208a0868028c 100644 (file)
@@ -47,7 +47,7 @@ struct PacketBefore {
        const AVFormatContext * const ctx;
 };
 
-Mux::Mux(AVFormatContext *avctx, int width, int height, Codec video_codec, const string &video_extradata, const AVCodecParameters *audio_codecpar, AVColorSpace color_space, WithAudio with_audio, int time_base, function<void(int64_t)> write_callback, WriteStrategy write_strategy, const vector<MuxMetrics *> &metrics)
+Mux::Mux(AVFormatContext *avctx, int width, int height, Codec video_codec, const string &video_extradata, const AVCodecParameters *audio_codecpar, AVColorSpace color_space, int time_base, function<void(int64_t)> write_callback, WriteStrategy write_strategy, const vector<MuxMetrics *> &metrics)
        : write_strategy(write_strategy), avctx(avctx), write_callback(write_callback), metrics(metrics)
 {
        avstream_video = avformat_new_stream(avctx, nullptr);
@@ -89,7 +89,7 @@ Mux::Mux(AVFormatContext *avctx, int width, int height, Codec video_codec, const
                memcpy(avstream_video->codecpar->extradata, video_extradata.data(), video_extradata.size());
        }
 
-       if (with_audio == WITH_AUDIO) {
+       if (audio_codecpar != nullptr) {
                avstream_audio = avformat_new_stream(avctx, nullptr);
                if (avstream_audio == nullptr) {
                        fprintf(stderr, "avformat_new_stream() failed\n");
@@ -101,7 +101,6 @@ Mux::Mux(AVFormatContext *avctx, int width, int height, Codec video_codec, const
                        exit(1);
                }
        } else {
-               assert(with_audio == WITHOUT_AUDIO);
                avstream_audio = nullptr;
        }
 
index 62cd37cf80791f061182ebf50498756948f24a78..c6b4c7e49420b316c44fbf827abf4b8954d04dbb 100644 (file)
@@ -53,10 +53,6 @@ public:
                CODEC_NV12,  // Uncompressed 4:2:0.
                CODEC_MJPEG
        };
-       enum WithAudio {
-               WITH_AUDIO,
-               WITHOUT_AUDIO
-       };
        enum WriteStrategy {
                // add_packet() will write the packet immediately, unless plugged.
                WRITE_FOREGROUND,
@@ -74,7 +70,9 @@ public:
        // the just-written frame. (write_callback can be nullptr.)
        // Does not take ownership of <metrics>; elements in there, if any,
        // will be added to.
-       Mux(AVFormatContext *avctx, int width, int height, Codec video_codec, const std::string &video_extradata, const AVCodecParameters *audio_codecpar, AVColorSpace color_space, WithAudio with_audio, int time_base, std::function<void(int64_t)> write_callback, WriteStrategy write_strategy, const std::vector<MuxMetrics *> &metrics);
+       //
+       // If audio_codecpar is nullptr, there will be no audio stream.
+       Mux(AVFormatContext *avctx, int width, int height, Codec video_codec, const std::string &video_extradata, const AVCodecParameters *audio_codecpar, AVColorSpace color_space, int time_base, std::function<void(int64_t)> write_callback, WriteStrategy write_strategy, const std::vector<MuxMetrics *> &metrics);
        ~Mux();
        void add_packet(const AVPacket &pkt, int64_t pts, int64_t dts, AVRational timebase = { 1, TIMEBASE }, int stream_index_override = -1);