📄 mplex.cpp
字号:
/* * dvb-mpegtools for the Siemens Fujitsu DVB PCI card * * Copyright (C) 2000, 2001 Marcus Metzler * for convergence integrated media GmbH * Copyright (C) 2002 Marcus Metzler * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * Or, point your browser to http://www.gnu.org/copyleft/gpl.html * * The author can be reached at mocm@metzlerbros.de, */#define MPEGMAIN#include <getopt.h>#include "main.h"#include "consts.h"#include <cpptools.hh>void SetXSVCDMplex(){ /* multiplex stuff */ cerr << "Setting up for XSVCD mux" << endl; sectors_delay = 0; video_delay_ms = 180; audio_delay_ms = 180; audio1_delay_ms = 180; sector_size = 2324; packets_per_pack = 1; init_audio_buffer_size = 4; init_audio1_buffer_size = 4; init_video_buffer_size = 230; always_sys_header = FALSE; mplex_type = MPEG_SVCD; mplex_pulldown_flag = PULLDOWN_AUTO; vcd_audio_pad = FALSE; user_mux_rate = 0; align_sequence_headers = 1; put_private2 = 0; frame_timestamps = TIMESTAMPS_ALL; VBR_multiplex = TRUE; use_computed_bitrate = COMPBITRATE_MAX; write_pec = 1; mux_SVCD_scan_offsets = 1; max_file_size = 0; mux_start_time = 0; mux_stop_time = 0; reset_clocks = 1; write_end_codes = 1; set_broken_link = 1;}void SetMPEG2Mplex(){ /* multiplex stuff */ cerr << "Setting up for MPEG2 mux" << endl; sectors_delay = 0; video_delay_ms = 180; audio_delay_ms = 180; audio1_delay_ms = 180; sector_size = 2048; packets_per_pack = 1; init_audio_buffer_size = 4; init_audio1_buffer_size = 4; init_video_buffer_size = 224; always_sys_header = FALSE; mplex_type = MPEG_MPEG2; mplex_pulldown_flag = PULLDOWN_AUTO; vcd_audio_pad = FALSE; user_mux_rate = 0; align_sequence_headers = 0; put_private2 = 0; frame_timestamps = TIMESTAMPS_ALL; VBR_multiplex = TRUE; use_computed_bitrate = COMPBITRATE_MAX; write_pec = 1; mux_SVCD_scan_offsets = 0; max_file_size = 0; mux_start_time = 0; mux_stop_time = 0; reset_clocks = 1; write_end_codes = 1; set_broken_link = 1;}void SetDVDMplex(){ /* multiplex stuff */ cerr << "Setting up for DVD mux" << endl; sectors_delay = 0; video_delay_ms = 180; audio_delay_ms = 180; audio1_delay_ms = 180; sector_size = 2048; packets_per_pack = 1; init_audio_buffer_size = 4; init_audio1_buffer_size = 4; init_video_buffer_size = 232; always_sys_header = FALSE; use_computed_bitrate = COMPBITRATE_MAX; mplex_type = MPEG_DVD; mplex_pulldown_flag = PULLDOWN_AUTO; vcd_audio_pad = FALSE; user_mux_rate = 25200; align_sequence_headers = TRUE; put_private2 = TRUE; frame_timestamps = TIMESTAMPS_IONLY; VBR_multiplex = TRUE; write_pec = 1; mux_SVCD_scan_offsets = 0; max_file_size = 0; mux_start_time = 0; mux_stop_time = 0; reset_clocks = 0; write_end_codes = 0; set_broken_link = 0;}void SetSVCDMplex(){ /* multiplex stuff */ cerr << "Setting up for SVCD mux" << endl; sectors_delay = 0; video_delay_ms = 180; audio_delay_ms = 180; audio1_delay_ms = 180; sector_size = SVCD_SECTOR_SIZE; packets_per_pack = 1; init_audio_buffer_size = 4; init_audio1_buffer_size = 4; init_video_buffer_size = 230; always_sys_header = FALSE; use_computed_bitrate = COMPBITRATE_MAX; mplex_type = MPEG_SVCD; mplex_pulldown_flag = PULLDOWN_AUTO; vcd_audio_pad = FALSE; user_mux_rate = 6972; align_sequence_headers = 1; put_private2 = 0; frame_timestamps = TIMESTAMPS_ALL; VBR_multiplex = TRUE; write_pec = 1; mux_SVCD_scan_offsets = 1; max_file_size = 0; mux_start_time = 0; mux_stop_time = 0; reset_clocks = 1; write_end_codes = 1; set_broken_link = 1;}void SetMPEG1Mplex(){ /* multiplex stuff */ cerr << "Setting up for MPEG1 mux" << endl; sectors_delay = 0; video_delay_ms = 180; audio_delay_ms = 180; audio1_delay_ms = 180; sector_size = 2048; packets_per_pack = 1; init_audio_buffer_size = 4; init_audio1_buffer_size = 4; init_video_buffer_size = 46; always_sys_header = FALSE; mplex_type = MPEG_MPEG1; mplex_pulldown_flag = PULLDOWN_NONE; vcd_audio_pad = FALSE; user_mux_rate = 0; align_sequence_headers = 0; put_private2 = 0; frame_timestamps = TIMESTAMPS_ALL; VBR_multiplex = FALSE; use_computed_bitrate = COMPBITRATE_MAX; write_pec = 1; mux_SVCD_scan_offsets = 0; max_file_size = 0; mux_start_time = 0; mux_stop_time = 0; reset_clocks = 1; write_end_codes = 1; set_broken_link = 1;}void SetVCDMplex(){ /* multiplex stuff */ cerr << "Setting up for VCD mux" << endl; sectors_delay = 400; video_delay_ms = 344; audio_delay_ms = 344; audio1_delay_ms = 344; sector_size = VIDEOCD_SECTOR_SIZE; packets_per_pack = 1; init_audio_buffer_size = 4; init_audio1_buffer_size = 4; init_video_buffer_size = 46; always_sys_header = FALSE; use_computed_bitrate = COMPBITRATE_NONE; mplex_type = MPEG_VCD; mplex_pulldown_flag = PULLDOWN_NONE; vcd_audio_pad = FALSE; user_mux_rate = 3486; align_sequence_headers = 0; put_private2 = 0; frame_timestamps = TIMESTAMPS_ALL; VBR_multiplex = 0; write_pec = 1; mux_SVCD_scan_offsets = 0; max_file_size = 0; mux_start_time = 0; mux_stop_time = 0; reset_clocks = 1; write_end_codes = 1; set_broken_link = 1;}void SetXVCDMplex(){ /* multiplex stuff */ cerr << "Setting up for XVCD mux" << endl; sectors_delay = 400; video_delay_ms = 344; audio_delay_ms = 344; audio1_delay_ms = 344;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -