1 /*
2    mkvmerge -- utility for splicing together matroska files
3    from component media subtypes
4 
5    Distributed under the GPL v2
6    see the file COPYING for details
7    or visit https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
8 
9    class definition for the MPEG 4 part 10 ES video output module
10 
11    Written by Moritz Bunkus <moritz@bunkus.org>.
12 */
13 
14 #pragma once
15 
16 #include "common/common_pch.h"
17 
18 #include "common/avc/es_parser.h"
19 #include "output/p_avc_hevc_es.h"
20 
21 class avc_es_video_packetizer_c: public avc_hevc_es_video_packetizer_c {
22 protected:
23   mtx::avc::es_parser_c &m_parser;
24 
25 public:
26   avc_es_video_packetizer_c(generic_reader_c *p_reader, track_info_c &p_ti);
27 
get_format_name()28   virtual translatable_string_c get_format_name() const override {
29     return YT("AVC/H.264 (unframed)");
30   };
31 
32   virtual connection_result_e can_connect_to(generic_packetizer_c *src, std::string &error_message) override;
33 
34 protected:
35   virtual void check_if_default_duration_available() const override;
36 };
37