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

📄 raw.c.svn-base

📁 mediastreamer2是开源的网络传输媒体流的库
💻 SVN-BASE
📖 第 1 页 / 共 2 页
字号:
};AVInputFormat flac_demuxer = {    "flac",    "raw flac",    0,    flac_probe,    flac_read_header,    raw_read_partial_packet,    raw_read_close,    .flags= AVFMT_GENERIC_INDEX,    .extensions = "flac",};#ifdef CONFIG_MUXERSAVOutputFormat flac_muxer = {    "flac",    "raw flac",    "audio/x-flac",    "flac",    0,    CODEC_ID_FLAC,    0,    flac_write_header,    raw_write_packet,    .flags= AVFMT_NOTIMESTAMPS,};#endif //CONFIG_MUXERS#ifdef CONFIG_AC3_DEMUXERAVInputFormat ac3_demuxer = {    "ac3",    "raw ac3",    0,    ac3_probe,    ac3_read_header,    raw_read_partial_packet,    raw_read_close,    .flags= AVFMT_GENERIC_INDEX,    .extensions = "ac3",};#endif#ifdef CONFIG_MUXERSAVOutputFormat ac3_muxer = {    "ac3",    "raw ac3",    "audio/x-ac3",    "ac3",    0,    CODEC_ID_AC3,    0,    NULL,    raw_write_packet,    .flags= AVFMT_NOTIMESTAMPS,};#endif //CONFIG_MUXERSAVInputFormat dts_demuxer = {    "dts",    "raw dts",    0,    NULL,    dts_read_header,    raw_read_partial_packet,    raw_read_close,    .flags= AVFMT_GENERIC_INDEX,    .extensions = "dts",};AVInputFormat aac_demuxer = {    "aac",    "ADTS AAC",    0,    NULL,    aac_read_header,    raw_read_partial_packet,    raw_read_close,    .flags= AVFMT_GENERIC_INDEX,    .extensions = "aac",};#ifdef CONFIG_ROQ_MUXERAVOutputFormat roq_muxer ={    "RoQ",    "Id RoQ format",    NULL,    "roq",    0,    CODEC_ID_ROQ_DPCM,    CODEC_ID_ROQ,    roq_write_header,    raw_write_packet,};#endif //CONFIG_ROQ_MUXERAVInputFormat h261_demuxer = {    "h261",    "raw h261",    0,    h261_probe,    video_read_header,    raw_read_partial_packet,    raw_read_close,    .flags= AVFMT_GENERIC_INDEX,    .extensions = "h261",    .value = CODEC_ID_H261,};#ifdef CONFIG_MUXERSAVOutputFormat h261_muxer = {    "h261",    "raw h261",    "video/x-h261",    "h261",    0,    0,    CODEC_ID_H261,    NULL,    raw_write_packet,    .flags= AVFMT_NOTIMESTAMPS,};#endif //CONFIG_MUXERSAVInputFormat h263_demuxer = {    "h263",    "raw h263",    0,    h263_probe,    video_read_header,    raw_read_partial_packet,    raw_read_close,    .flags= AVFMT_GENERIC_INDEX,//    .extensions = "h263", //FIXME remove after writing mpeg4_probe    .value = CODEC_ID_H263,};#ifdef CONFIG_MUXERSAVOutputFormat h263_muxer = {    "h263",    "raw h263",    "video/x-h263",    "h263",    0,    0,    CODEC_ID_H263,    NULL,    raw_write_packet,    .flags= AVFMT_NOTIMESTAMPS,};#endif //CONFIG_MUXERSAVInputFormat m4v_demuxer = {    "m4v",    "raw MPEG4 video format",    0,    mpeg4video_probe, /** probing for mpeg4 data */    video_read_header,    raw_read_partial_packet,    raw_read_close,    .flags= AVFMT_GENERIC_INDEX,    .extensions = "m4v", //FIXME remove after writing mpeg4_probe    .value = CODEC_ID_MPEG4,};#ifdef CONFIG_MUXERSAVOutputFormat m4v_muxer = {    "m4v",    "raw MPEG4 video format",    NULL,    "m4v",    0,    CODEC_ID_NONE,    CODEC_ID_MPEG4,    NULL,    raw_write_packet,    .flags= AVFMT_NOTIMESTAMPS,};#endif //CONFIG_MUXERSAVInputFormat h264_demuxer = {    "h264",    "raw H264 video format",    0,    NULL /*mpegvideo_probe*/,    video_read_header,    raw_read_partial_packet,    raw_read_close,    .flags= AVFMT_GENERIC_INDEX,    .extensions = "h26l,h264,264", //FIXME remove after writing mpeg4_probe    .value = CODEC_ID_H264,};#ifdef CONFIG_MUXERSAVOutputFormat h264_muxer = {    "h264",    "raw H264 video format",    NULL,    "h264",    0,    CODEC_ID_NONE,    CODEC_ID_H264,    NULL,    raw_write_packet,    .flags= AVFMT_NOTIMESTAMPS,};#endif //CONFIG_MUXERSAVInputFormat mpegvideo_demuxer = {    "mpegvideo",    "MPEG video",    0,    mpegvideo_probe,    video_read_header,    raw_read_partial_packet,    raw_read_close,    .flags= AVFMT_GENERIC_INDEX,    .value = CODEC_ID_MPEG1VIDEO,};#ifdef CONFIG_MUXERSAVOutputFormat mpeg1video_muxer = {    "mpeg1video",    "MPEG video",    "video/x-mpeg",    "mpg,mpeg,m1v",    0,    0,    CODEC_ID_MPEG1VIDEO,    NULL,    raw_write_packet,    .flags= AVFMT_NOTIMESTAMPS,};#endif //CONFIG_MUXERS#ifdef CONFIG_MUXERSAVOutputFormat mpeg2video_muxer = {    "mpeg2video",    "MPEG2 video",    NULL,    "m2v",    0,    0,    CODEC_ID_MPEG2VIDEO,    NULL,    raw_write_packet,    .flags= AVFMT_NOTIMESTAMPS,};#endif //CONFIG_MUXERSAVInputFormat mjpeg_demuxer = {    "mjpeg",    "MJPEG video",    0,    NULL,    video_read_header,    raw_read_partial_packet,    raw_read_close,    .flags= AVFMT_GENERIC_INDEX,    .extensions = "mjpg,mjpeg",    .value = CODEC_ID_MJPEG,};AVInputFormat ingenient_demuxer = {    "ingenient",    "Ingenient MJPEG",    0,    NULL,    video_read_header,    ingenient_read_packet,    raw_read_close,    .flags= AVFMT_GENERIC_INDEX,    .extensions = "cgi", // FIXME    .value = CODEC_ID_MJPEG,};#ifdef CONFIG_MUXERSAVOutputFormat mjpeg_muxer = {    "mjpeg",    "MJPEG video",    "video/x-mjpeg",    "mjpg,mjpeg",    0,    0,    CODEC_ID_MJPEG,    NULL,    raw_write_packet,    .flags= AVFMT_NOTIMESTAMPS,};#endif //CONFIG_MUXERSAVInputFormat vc1_demuxer = {    "vc1",    "raw vc1",    0,    NULL /* vc1_probe */,    video_read_header,    raw_read_partial_packet,    raw_read_close,    .extensions = "vc1",    .value = CODEC_ID_VC1,};/* pcm formats */#define PCMINPUTDEF(name, long_name, ext, codec) \AVInputFormat pcm_ ## name ## _demuxer = {\    #name,\    long_name,\    0,\    NULL,\    raw_read_header,\    raw_read_packet,\    raw_read_close,\    pcm_read_seek,\    .flags= AVFMT_GENERIC_INDEX,\    .extensions = ext,\    .value = codec,\};#define PCMOUTPUTDEF(name, long_name, ext, codec) \AVOutputFormat pcm_ ## name ## _muxer = {\    #name,\    long_name,\    NULL,\    ext,\    0,\    codec,\    0,\    NULL,\    raw_write_packet,\    .flags= AVFMT_NOTIMESTAMPS,\};#if !defined(CONFIG_MUXERS) && defined(CONFIG_DEMUXERS)#define PCMDEF(name, long_name, ext, codec) \        PCMINPUTDEF(name, long_name, ext, codec)#elif defined(CONFIG_MUXERS) && !defined(CONFIG_DEMUXERS)#define PCMDEF(name, long_name, ext, codec) \        PCMOUTPUTDEF(name, long_name, ext, codec)#elif defined(CONFIG_MUXERS) && defined(CONFIG_DEMUXERS)#define PCMDEF(name, long_name, ext, codec) \        PCMINPUTDEF(name, long_name, ext, codec)\        PCMOUTPUTDEF(name, long_name, ext, codec)#else#define PCMDEF(name, long_name, ext, codec)#endif#ifdef WORDS_BIGENDIAN#define BE_DEF(s) s#define LE_DEF(s) NULL#else#define BE_DEF(s) NULL#define LE_DEF(s) s#endifPCMDEF(s16le, "pcm signed 16 bit little endian format",       LE_DEF("sw"), CODEC_ID_PCM_S16LE)PCMDEF(s16be, "pcm signed 16 bit big endian format",       BE_DEF("sw"), CODEC_ID_PCM_S16BE)PCMDEF(u16le, "pcm unsigned 16 bit little endian format",       LE_DEF("uw"), CODEC_ID_PCM_U16LE)PCMDEF(u16be, "pcm unsigned 16 bit big endian format",       BE_DEF("uw"), CODEC_ID_PCM_U16BE)PCMDEF(s8, "pcm signed 8 bit format",       "sb", CODEC_ID_PCM_S8)PCMDEF(u8, "pcm unsigned 8 bit format",       "ub", CODEC_ID_PCM_U8)PCMDEF(mulaw, "pcm mu law format",       "ul", CODEC_ID_PCM_MULAW)PCMDEF(alaw, "pcm A law format",       "al", CODEC_ID_PCM_ALAW)static int rawvideo_read_packet(AVFormatContext *s, AVPacket *pkt){    int packet_size, ret, width, height;    AVStream *st = s->streams[0];    width = st->codec->width;    height = st->codec->height;    packet_size = avpicture_get_size(st->codec->pix_fmt, width, height);    if (packet_size < 0)        return -1;    ret= av_get_packet(s->pb, pkt, packet_size);    pkt->pts=    pkt->dts= pkt->pos / packet_size;    pkt->stream_index = 0;    if (ret != packet_size) {        return AVERROR(EIO);    } else {        return 0;    }}AVInputFormat rawvideo_demuxer = {    "rawvideo",    "raw video format",    0,    NULL,    raw_read_header,    rawvideo_read_packet,    raw_read_close,    .flags= AVFMT_GENERIC_INDEX,    .extensions = "yuv,cif,qcif,rgb",    .value = CODEC_ID_RAWVIDEO,};#ifdef CONFIG_MUXERSAVOutputFormat rawvideo_muxer = {    "rawvideo",    "raw video format",    NULL,    "yuv,rgb",    0,    CODEC_ID_NONE,    CODEC_ID_RAWVIDEO,    NULL,    raw_write_packet,    .flags= AVFMT_NOTIMESTAMPS,};#endif //CONFIG_MUXERS#ifdef CONFIG_MUXERSstatic int null_write_packet(struct AVFormatContext *s, AVPacket *pkt){    return 0;}AVOutputFormat null_muxer = {    "null",    "null video format",    NULL,    NULL,    0,#ifdef WORDS_BIGENDIAN    CODEC_ID_PCM_S16BE,#else    CODEC_ID_PCM_S16LE,#endif    CODEC_ID_RAWVIDEO,    NULL,    null_write_packet,    .flags = AVFMT_NOFILE | AVFMT_RAWPICTURE | AVFMT_NOTIMESTAMPS,};#endif //CONFIG_MUXERS

⌨️ 快捷键说明

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