⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.cc

📁 传输流分析
💻 CC
📖 第 1 页 / 共 3 页
字号:
/* *  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,  */#include <cpptools.hh>const int SIZE = 1024;int fda_out, fdv_out;void awrite(uint8_t const *buf,long int l){        write(fda_out,buf,l);}void vwrite(uint8_t const *buf,long int l){        write(fdv_out,buf,l);}void write_it(uint8_t *buf, int count, p2p *p){        write(STDOUT_FILENO, buf, count);}void write_it2(uint8_t *buf, int count, void *p){        write(STDOUT_FILENO, buf, count);}#define PROGS 29char *prognames[PROGS+1] = { "streamtype",    // 0                             "ts2pes", 	    // 1                             "ps2vid",                             "pes2aud_es",                             "pes2aud",                             "pes2vid_es",                             "pes2vid",                             "tspids",                             "pes2ts",                             "analyze",                             "pes_demux", 	 // 10                             "es_demux",                             "ts_demux",                             "ts_es_demux",                             "pesplot",                             "pes2ts2",                             "pes_repack",                             "split_mpg",                             "cut_mpg",                             "ts2ps",                             "ts2es",                   // 20                             "insert_pat_pmt",                             "get_http",                             "extract_pes",                             "extract_pes_payload",                             "change_aspect_1_1",                             "change_aspect_4_3",                             "change_aspect_16_9",                             "change_aspect_221_1",	// 28                             " "                           };enum { streamtype_,    // 0       ts2pes_, 	    // 1       ps2vid_,       pes2aud_es_,       pes2aud_,       pes2vid_es_,       pes2vid_,       tspids_,       pes2ts_,       analyze_,       pes_demux_, 	 // 10       es_demux_,       ts_demux_,       ts_es_demux_,       pesplot_,       pes2ts2_,       pes_repack_,       split_mpg_,       cut_mpg_,       ts2ps_,       ts2es_,            // 20       insert_pat_pmt_,       get_http_,       extract_pes_,       extract_pes_payload_,       change_aspect_1_1_,       change_aspect_4_3_,       change_aspect_16_9_,       change_aspect_221_1_,	// 28       none_,     };void usage(int progn){        switch(progn) {        case streamtype_:                cerr << "usage: streamtype <filename>" << endl;                cerr << "or     streamtype < <filename> (or pipe)" << endl;                break;        case ts2pes_:                cerr << "usage: ts2ps <filename> <PID1> <PID2>" << endl;                cerr << "    or ts2ps <PID1> <PID2> < <filename> (or pipe)"                << endl                << " if pids = 0 the program searches for them"                << endl;                break;        case ts2ps_:                cerr << "usage: ts2ps <filename> <PID1> <PID2>" << endl;                cerr << "    or ts2ps <PID1> <PID2> < <filename> (or pipe)"                << endl                << " if pids = 0 the program searches for them"                << endl;                break;        case ts2es_:                cerr << "usage: ts2es <filename> <PID>" << endl;                cerr << "    or ts2ps <PID> < <filename> (or pipe)"                << endl;                break;        case pes2aud_:        case pes2vid_:        case pes2aud_es_:        case pes2vid_es_:                cerr << "usage: " << prognames[progn] << " <filename>  [id]" << endl;                cerr << "   or  " << prognames[progn] << " <filename>  [id]";                cerr << "(or pipe)" << endl;                break;        case tspids_:                cerr << "usage: tspids <filename>" << endl;                break;        case pes2ts_:                cerr << "usage: pes2ts <filename>" << endl;                cerr << "    or pes2ts < <filename> (or pipe)" << endl;                break;        case pes2ts2_:                cerr << "usage: pes2ts2 <filename> <audio  PID> <video PID>"                << endl;                cerr << "   or  pes2ts2 < <filename> <audio  PID> <video PID>";                cerr << " (or pipe)" << endl;                break;        case analyze_:                cerr << "usage: analyze <filename>" << endl;                cerr << "    or analyze < <filename> (or pipe)" << endl;                break;        case pes_demux_:        case es_demux_:                cerr << "usage: " << prognames[progn]                << " <filename> <audioout> <videoout>" << endl;                cerr << "   or  " << prognames[progn]                << " <audioout> <videoout> < <filename>  (or pipe)"                << endl;                break;        case ts_demux_:                cerr << "usage: ts_demux <filename>" << endl;                cerr << "   or  ts_demux < <filename>" << endl;                break;        case ts_es_demux_:                cerr << "usage: ts_es_demux <filename> <audio_out> <video_out>"                << endl;                cerr << "   or  "                << "ts_es_demux < <filename> <audio_out> <video_out>"                << endl;                break;        case pesplot_:                cerr << "usage: pesplot <filename>" << endl;                cerr << "    or pesplot < <filename>" << endl;                break;        case pes_repack_:                cerr << "usage: pes_repack <filename> <packet size>" << endl;                cerr << "   or  pes_repack < <filename> <packet size>";                cerr << "(or pipe)" << endl;                break;        case split_mpg_:                cerr << "usage: split_mpg <filename> <size>" << endl;                break;        case cut_mpg_:                cerr << "usage: cut_mpg <filename> <size>" << endl;                break;        case insert_pat_pmt_:                cerr << "usage: insert_pat_pmt <filename>" << endl;                cerr << "or     insert_pat_pmt < <filename> (or pipe)" << endl;                break;        case get_http_:                cerr << "usage: get_http <URL>" << endl;                break;        case extract_pes_payload_:                cerr << "usage: extract_pes_payload <filename> <ID in HEX>"                << endl;                cerr << "or extract_pes_payload <ID in HEX> < <filename>"                << endl;                break;        case extract_pes_:                cerr << "usage: extract_pes <filename> <ID in HEX>"                << endl;                cerr << "or extract_pes <ID in HEX> < <filename>"                << endl;                break;        case change_aspect_1_1_:        case change_aspect_4_3_:        case change_aspect_16_9_:        case change_aspect_221_1_:                cerr << "usage: " << prognames[progn]                << " <filename>" << endl;                break;        }}int main(int argc, char **argv){        ifstream fin;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -