ffmpeg-- mpegtsenc.c

本文深入探讨MPEG-TS封装过程,解析时间戳、PCR等关键概念,并介绍如何处理B帧,以及PAT、PMT表的重传机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

mpegtsenc.

 

更改记录:

 

3.2.10到3.3.11

添加了切HEVC;mpegts_flags添加initial_discontinuity属性。

 

为什么时间戳开始都是pts:133200,dts:126000?

avcodec_encode_video2过后,pts,dts的值为序号,

没有B帧时:如: (0     0),(1     1),(2     2)。。。。。。

有B帧时:如:   0 -2 ,  3 -1 , 2  0,  1 1。。。。。。

在write_packet中,传入的PTS为0,DTS为-7200,由于avoid_negative_ts,算的avoid_negative_ts。接着pts,dts都变为非0,如下:

   if (pkt->dts != AV_NOPTS_VALUE)
            pkt->dts += offset;
        if (pkt->pts != AV_NOPTS_VALUE)

            pkt->pts += offset;

结果PTS为7200,DTS为0。

static int mpegts_write_packet_internal(AVFormatContext *s, AVPacket *pkt)

{       

。。。

        进入此函数时,pkt->pts =7200,pkt->dts=0。

         // o->mux_max_delay  = 0.7;
         //oc->max_delay = (int)(o->mux_max_delay * AV_TIME_BASE);

         constint64_t delay = av_rescale(s->max_delay, 90000, AV_TIME_BASE) * 2;

        //此时delay变为126000。

         int64_tdts = pkt->dts, pts = pkt->pts; 

   if(ts->copyts < 1) {

       if (pts != AV_NOPTS_VALUE)

           pts += delay;  //pts为133200

       if (dts != AV_NOPTS_VALUE)

           dts += delay; //dts为126000

    }

。。。

}

 static void mpegts_write_pes(AVFormatContext *s, AVStream *st,
                             const uint8_t *payload, int payload_size,
                             int64_t pts, int64_t dts, int key, int stream_id)
{
    MpegTSWriteStream *ts_st = st->priv_data;
    MpegTSWrite *ts = s->priv_data;
    uint8_t buf[TS_PACKET_SIZE];
    uint8_t *q;
    int val, is_start, len, header_len, write_pcr, is_dvb_subtitle, is_dvb_teletext, flags;
    int afc_len, stuffing_len;
    int64_t pcr = -1; /* avoid warning */

    int64_t delay = av_rescale(s->max_delay, 90000, AV_TIME_BASE);  //delay为63000

 ...

}

 

pts,dts时间戳

PTS,DTS就是音视频同步时间戳,时间戳其实就是一次采样的颗粒(简单理解就是数据),以视频来举例,视频同步时钟90K hz(27M/300),如果帧率是25fps的话,一帧数据采样时间40ms,那么时间戳就是90K x 40ms= 3600(估算值)。

avpriv_set_pts_info(st, 33, 1, 90000);     //通过avpriv_set_pts_info(st, 33, 1, 90000)函数,设置AVStream->time_base为1/90000。为什么是90000?因为mpeg的pts、dts都是以90kHz来采样的,所以采样间隔为1/90000秒。

//写pcr

<1>PCR的值和插入时间间隔根据mux_rate的值不同,计算方式都有区别;
<2>当我们设定了mux_rate大于1时,根据我们设定的pcr间隔(默认30ms)进行发送,pcr值为(avio_tell(pb) + 11)* (8 *PCR_TIME_BASE)/ts->mux_rate + ts->first_pcr
<3>当我们设定了mux_rate不大于1时,pcr计算是根据ts_st->user_tb.den / (10 *ts_st->user_tb.num)来计算的。对于25帧视频来说pcr_packet_period值为2,pcr计算方式为(dts - delay) * 300

  if(ts->mux_rate > 1) {

       service->pcr_packet_period = (int64_t)ts->mux_rate *ts->pcr_period /   (TS_PACKET_SIZE * 8 * 1000);

       ts->sdt_packet_period      =(int64_t)ts->mux_rate * SDT_RETRANS_TIME /     (TS_PACKET_SIZE * 8 * 1000);

       ts->pat_packet_period      =(int64_t)ts->mux_rate * PAT_RETRANS_TIME /     (TS_PACKET_SIZE * 8 * 1000);

       if (ts->copyts < 1)

           ts->first_pcr = av_rescale(s->max_delay, PCR_TIME_BASE,AV_TIME_BASE);

    }else {

       /* Arbitrary values, PAT/PMT will also be written on video key frames */

       ts->sdt_packet_period = 200;

       ts->pat_packet_period = 40;

       if (pcr_st->codecpar->codec_type == AVMEDIA_TYPE_AUDIO) {

           int frame_size = av_get_audio_frame_duration2(pcr_st->codecpar, 0);

           if (!frame_size) {

                av_log(s, AV_LOG_WARNING,"frame size not set\n");

                service->pcr_packet_period =      pcr_st->codecpar->sample_rate / (10 * 512);

           } else {

                service->pcr_packet_period =    pcr_st->codecpar->sample_rate / (10 * frame_size);

           }

       } else {

           // max delta PCR 0.1s

           // TODO: should be avg_frame_rate

           service->pcr_packet_period =   ts_st->user_tb.den / (10 *ts_st->user_tb.num);

       }

       if (!service->pcr_packet_period)

           service->pcr_packet_period = 1;

    }

//如何写pcr

static int write_pcr_bits(uint8_t *buf,int64_t pcr)

{

   int64_t pcr_low = pcr % 300, pcr_high = pcr / 300;

   *buf++ = pcr_high >> 25;

   *buf++ = pcr_high >> 17;

   *buf++ = pcr_high >>  9;

   *buf++ = pcr_high >>  1;

   *buf++ = pcr_high <<  7 |pcr_low >> 8 | 0x7e;

   *buf++ = pcr_low;

   return 6;

}

//写pts

static void write_pts(uint8_t *q, intfourbits, int64_t pts)

{

   int val;

   val  = fourbits << 4 |(((pts >> 30) & 0x07) << 1) | 1;

   *q++ = val;

   val  = (((pts >> 15) &0x7fff) << 1) | 1;

   *q++ = val >> 8;

   *q++ = val;

   val  = (((pts) & 0x7fff)<< 1) | 1;

   *q++ = val >> 8;

   *q++ = val;

}

mpegts_write_pes

mpegts_write_pes(AVFormatContext *s,AVStream *st,
                           const uint8_t *payload, intpayload_size,
                           int64_t pts, int64_t dts)
这个函数就是TS打包的主函数了,这个函数主要功能就是把一帧数据拆分成188字节(感觉效率低了点),并加入PTS,DTS同步信息,这个函数封装的对象是一帧视频或者音频数据,payload,payload_size分别是数据和大小。上面提到的PAT,PMT表在每个188字节都会检查一次,

 while (payload_size > 0) {
  retransmit_si_info(s, force_pat, dts);
     //pes head
    /* header size */
    header_len = q - buf;
    /* data len */
    len = TS_PACKET_SIZE - header_len;                          //能装数据的大小

    memcpy(buf + TS_PACKET_SIZE - len, payload, len);    //拷贝数据
   payload      += len;
   payload_size -= len;
   mpegts_prefix_m2ts_header(s);
   avio_write(s->pb, buf, TS_PACKET_SIZE);
 }

 

retransmit_si_info

函数如下,可以看出条件(++ts->pat_packet_count== ts->pat_packet_freq)成立,就会加入PAT,PMT信息,而ts->pat_packet_freq这个值是根据码流大小计算出来。

/* send SDT, PAT and PMT tables regularly*/

static voidretransmit_si_info(AVFormatContext *s, int force_pat, int64_t dts)

{

   MpegTSWrite *ts = s->priv_data;

   int i;

   if (++ts->sdt_packet_count == ts->sdt_packet_period ||

       (dts != AV_NOPTS_VALUE && ts->last_sdt_ts == AV_NOPTS_VALUE)||

       (dts != AV_NOPTS_VALUE && dts - ts->last_sdt_ts >=ts->sdt_period*90000.0)

    ){

       ts->sdt_packet_count = 0;

       if (dts != AV_NOPTS_VALUE)

           ts->last_sdt_ts = FFMAX(dts, ts->last_sdt_ts);

       mpegts_write_sdt(s);

    }

   if (++ts->pat_packet_count == ts->pat_packet_period ||

       (dts != AV_NOPTS_VALUE && ts->last_pat_ts == AV_NOPTS_VALUE)||

       (dts != AV_NOPTS_VALUE && dts - ts->last_pat_ts >=ts->pat_period*90000.0) ||

       force_pat) {

       ts->pat_packet_count = 0;

       if (dts != AV_NOPTS_VALUE)

           ts->last_pat_ts = FFMAX(dts, ts->last_pat_ts);

       mpegts_write_pat(s);

       for (i = 0; i < ts->nb_services; i++)

           mpegts_write_pmt(s, ts->services[i]);

    }

}

sunkaijie@sunkaijie-virtual-machine:~/nfs/hongjing-gti/hj_media/ext_src/ffmpeg/libs/glibc_11.1.0-lib$ sunkaijie@sunkaijie-virtual-machine:~/nfs/hongjing-gti/hj_media/ext_src/ffmpeg/libs/glibc_11.1.0-lib$ readelf -h libavcodec.a | grep Machine sunkaijie@sunkaijie-virtual-machine:~/nfs/hongjing-gti/hj_media/ext_src/ffmpeg/libs/glibc_11.1.0-lib$ sunkaijie@sunkaijie-virtual-machine:~/nfs/hongjing-gti/hj_media/ext_src/ffmpeg/libs/glibc_11.1.0-lib$ sunkaijie@sunkaijie-virtual-machine:~/nfs/hongjing-gti/hj_media/ext_src/ffmpeg/libs/glibc_11.1.0-lib$ file -b libavcodec.a current ar archive sunkaijie@sunkaijie-virtual-machine:~/nfs/hongjing-gti/hj_media/ext_src/ffmpeg/libs/glibc_11.1.0-lib$ arm-linux-gnueabihf-nm libavformat.a | grep avpriv_h264_has_num_reorder_frames arm-linux-gnueabihf-nm: 3dostr.o: file format not recognized arm-linux-gnueabihf-nm: 4xm.o: file format not recognized arm-linux-gnueabihf-nm: a64.o: file format not recognized arm-linux-gnueabihf-nm: aacdec.o: file format not recognized arm-linux-gnueabihf-nm: aadec.o: file format not recognized arm-linux-gnueabihf-nm: aaxdec.o: file format not recognized arm-linux-gnueabihf-nm: ac3dec.o: file format not recognized arm-linux-gnueabihf-nm: ac4dec.o: file format not recognized arm-linux-gnueabihf-nm: ac4enc.o: file format not recognized arm-linux-gnueabihf-nm: acedec.o: file format not recognized arm-linux-gnueabihf-nm: acm.o: file format not recognized arm-linux-gnueabihf-nm: act.o: file format not recognized arm-linux-gnueabihf-nm: adp.o: file format not recognized arm-linux-gnueabihf-nm: ads.o: file format not recognized arm-linux-gnueabihf-nm: adtsenc.o: file format not recognized arm-linux-gnueabihf-nm: adxdec.o: file format not recognized arm-linux-gnueabihf-nm: aea.o: file format not recognized arm-linux-gnueabihf-nm: afc.o: file format not recognized arm-linux-gnueabihf-nm: aiff.o: file format not recognized arm-linux-gnueabihf-nm: aiffdec.o: file format not recognized arm-linux-gnueabihf-nm: aiffenc.o: file format not recognized arm-linux-gnueabihf-nm: aixdec.o: file format not recognized arm-linux-gnueabihf-nm: allformats.o: file format not recognized arm-linux-gnueabihf-nm: alp.o: file format not recognized arm-linux-gnueabihf-nm: amr.o: file format not recognized arm-linux-gnueabihf-nm: amvenc.o: file format not recognized arm-linux-gnueabihf-nm: anm.o: file format not recognized arm-linux-gnueabihf-nm: apac.o: file format not recognized arm-linux-gnueabihf-nm: apc.o: file format not recognized arm-linux-gnueabihf-nm: ape.o: file format not recognized arm-linux-gnueabihf-nm: apetag.o: file format not recognized arm-linux-gnueabihf-nm: apm.o: file format not recognized arm-linux-gnueabihf-nm: apngdec.o: file format not recognized arm-linux-gnueabihf-nm: apngenc.o: file format not recognized arm-linux-gnueabihf-nm: aptxdec.o: file format not recognized arm-linux-gnueabihf-nm: aqtitledec.o: file format not recognized arm-linux-gnueabihf-nm: argo_asf.o: file format not recognized arm-linux-gnueabihf-nm: argo_brp.o: file format not recognized arm-linux-gnueabihf-nm: argo_cvg.o: file format not recognized arm-linux-gnueabihf-nm: asf.o: file format not recognized arm-linux-gnueabihf-nm: asf_tags.o: file format not recognized arm-linux-gnueabihf-nm: asfcrypt.o: file format not recognized arm-linux-gnueabihf-nm: asfdec_f.o: file format not recognized arm-linux-gnueabihf-nm: asfdec_o.o: file format not recognized arm-linux-gnueabihf-nm: asfenc.o: file format not recognized arm-linux-gnueabihf-nm: assdec.o: file format not recognized arm-linux-gnueabihf-nm: assenc.o: file format not recognized arm-linux-gnueabihf-nm: ast.o: file format not recognized arm-linux-gnueabihf-nm: astdec.o: file format not recognized arm-linux-gnueabihf-nm: astenc.o: file format not recognized arm-linux-gnueabihf-nm: async.o: file format not recognized arm-linux-gnueabihf-nm: au.o: file format not recognized arm-linux-gnueabihf-nm: av1.o: file format not recognized arm-linux-gnueabihf-nm: av1dec.o: file format not recognized arm-linux-gnueabihf-nm: avc.o: file format not recognized arm-linux-gnueabihf-nm: avformat.o: file format not recognized arm-linux-gnueabihf-nm: avidec.o: file format not recognized arm-linux-gnueabihf-nm: avienc.o: file format not recognized arm-linux-gnueabihf-nm: avio.o: file format not recognized arm-linux-gnueabihf-nm: aviobuf.o: file format not recognized arm-linux-gnueabihf-nm: avlanguage.o: file format not recognized arm-linux-gnueabihf-nm: avr.o: file format not recognized arm-linux-gnueabihf-nm: avs.o: file format not recognized arm-linux-gnueabihf-nm: avs2dec.o: file format not recognized arm-linux-gnueabihf-nm: avs3dec.o: file format not recognized arm-linux-gnueabihf-nm: bethsoftvid.o: file format not recognized arm-linux-gnueabihf-nm: bfi.o: file format not recognized arm-linux-gnueabihf-nm: bink.o: file format not recognized arm-linux-gnueabihf-nm: binka.o: file format not recognized arm-linux-gnueabihf-nm: bintext.o: file format not recognized arm-linux-gnueabihf-nm: bit.o: file format not recognized arm-linux-gnueabihf-nm: bmv.o: file format not recognized arm-linux-gnueabihf-nm: boadec.o: file format not recognized arm-linux-gnueabihf-nm: bonk.o: file format not recognized arm-linux-gnueabihf-nm: brstm.o: file format not recognized arm-linux-gnueabihf-nm: c93.o: file format not recognized arm-linux-gnueabihf-nm: cache.o: file format not recognized arm-linux-gnueabihf-nm: caf.o: file format not recognized arm-linux-gnueabihf-nm: cafdec.o: file format not recognized arm-linux-gnueabihf-nm: cafenc.o: file format not recognized arm-linux-gnueabihf-nm: cavsvideodec.o: file format not recognized arm-linux-gnueabihf-nm: cdg.o: file format not recognized arm-linux-gnueabihf-nm: cdxl.o: file format not recognized arm-linux-gnueabihf-nm: cinedec.o: file format not recognized arm-linux-gnueabihf-nm: codec2.o: file format not recognized arm-linux-gnueabihf-nm: concat.o: file format not recognized arm-linux-gnueabihf-nm: concatdec.o: file format not recognized arm-linux-gnueabihf-nm: crcenc.o: file format not recognized arm-linux-gnueabihf-nm: crypto.o: file format not recognized arm-linux-gnueabihf-nm: dash.o: file format not recognized arm-linux-gnueabihf-nm: dashenc.o: file format not recognized arm-linux-gnueabihf-nm: data_uri.o: file format not recognized arm-linux-gnueabihf-nm: dauddec.o: file format not recognized arm-linux-gnueabihf-nm: daudenc.o: file format not recognized arm-linux-gnueabihf-nm: dcstr.o: file format not recognized arm-linux-gnueabihf-nm: demux.o: file format not recognized arm-linux-gnueabihf-nm: demux_utils.o: file format not recognized arm-linux-gnueabihf-nm: derf.o: file format not recognized arm-linux-gnueabihf-nm: dfa.o: file format not recognized arm-linux-gnueabihf-nm: dfpwmdec.o: file format not recognized arm-linux-gnueabihf-nm: dhav.o: file format not recognized arm-linux-gnueabihf-nm: diracdec.o: file format not recognized arm-linux-gnueabihf-nm: dnxhddec.o: file format not recognized arm-linux-gnueabihf-nm: dovi_isom.o: file format not recognized arm-linux-gnueabihf-nm: dsfdec.o: file format not recognized arm-linux-gnueabihf-nm: dsicin.o: file format not recognized arm-linux-gnueabihf-nm: dss.o: file format not recognized arm-linux-gnueabihf-nm: dtsdec.o: file format not recognized arm-linux-gnueabihf-nm: dtshddec.o: file format not recognized arm-linux-gnueabihf-nm: dump.o: file format not recognized arm-linux-gnueabihf-nm: dv.o: file format not recognized arm-linux-gnueabihf-nm: dvbsub.o: file format not recognized arm-linux-gnueabihf-nm: dvbtxt.o: file format not recognized arm-linux-gnueabihf-nm: dvenc.o: file format not recognized arm-linux-gnueabihf-nm: dxa.o: file format not recognized arm-linux-gnueabihf-nm: eacdata.o: file format not recognized arm-linux-gnueabihf-nm: electronicarts.o: file format not recognized arm-linux-gnueabihf-nm: epafdec.o: file format not recognized arm-linux-gnueabihf-nm: evc.o: file format not recognized arm-linux-gnueabihf-nm: evcdec.o: file format not recognized arm-linux-gnueabihf-nm: ffmetadec.o: file format not recognized arm-linux-gnueabihf-nm: ffmetaenc.o: file format not recognized arm-linux-gnueabihf-nm: fifo.o: file format not recognized arm-linux-gnueabihf-nm: fifo_test.o: file format not recognized arm-linux-gnueabihf-nm: file.o: file format not recognized arm-linux-gnueabihf-nm: filmstripdec.o: file format not recognized arm-linux-gnueabihf-nm: filmstripenc.o: file format not recognized arm-linux-gnueabihf-nm: fitsdec.o: file format not recognized arm-linux-gnueabihf-nm: fitsenc.o: file format not recognized arm-linux-gnueabihf-nm: flac_picture.o: file format not recognized arm-linux-gnueabihf-nm: flacdec.o: file format not recognized arm-linux-gnueabihf-nm: flacenc.o: file format not recognized arm-linux-gnueabihf-nm: flacenc_header.o: file format not recognized arm-linux-gnueabihf-nm: flic.o: file format not recognized arm-linux-gnueabihf-nm: flvdec.o: file format not recognized arm-linux-gnueabihf-nm: flvenc.o: file format not recognized arm-linux-gnueabihf-nm: format.o: file format not recognized arm-linux-gnueabihf-nm: framecrcenc.o: file format not recognized arm-linux-gnueabihf-nm: framehash.o: file format not recognized arm-linux-gnueabihf-nm: frmdec.o: file format not recognized arm-linux-gnueabihf-nm: fsb.o: file format not recognized arm-linux-gnueabihf-nm: ftp.o: file format not recognized arm-linux-gnueabihf-nm: fwse.o: file format not recognized arm-linux-gnueabihf-nm: g722.o: file format not recognized arm-linux-gnueabihf-nm: g723_1.o: file format not recognized arm-linux-gnueabihf-nm: g726.o: file format not recognized arm-linux-gnueabihf-nm: g729dec.o: file format not recognized arm-linux-gnueabihf-nm: gdv.o: file format not recognized arm-linux-gnueabihf-nm: genh.o: file format not recognized arm-linux-gnueabihf-nm: gif.o: file format not recognized arm-linux-gnueabihf-nm: gifdec.o: file format not recognized arm-linux-gnueabihf-nm: gopher.o: file format not recognized arm-linux-gnueabihf-nm: gsmdec.o: file format not recognized arm-linux-gnueabihf-nm: gxf.o: file format not recognized arm-linux-gnueabihf-nm: gxfenc.o: file format not recognized arm-linux-gnueabihf-nm: h261dec.o: file format not recognized arm-linux-gnueabihf-nm: h263dec.o: file format not recognized arm-linux-gnueabihf-nm: h264dec.o: file format not recognized arm-linux-gnueabihf-nm: hashenc.o: file format not recognized arm-linux-gnueabihf-nm: hca.o: file format not recognized arm-linux-gnueabihf-nm: hcom.o: file format not recognized arm-linux-gnueabihf-nm: hdsenc.o: file format not recognized arm-linux-gnueabihf-nm: hevc.o: file format not recognized arm-linux-gnueabihf-nm: hevcdec.o: file format not recognized arm-linux-gnueabihf-nm: hls.o: file format not recognized arm-linux-gnueabihf-nm: hls_sample_encryption.o: file format not recognized arm-linux-gnueabihf-nm: hlsenc.o: file format not recognized arm-linux-gnueabihf-nm: hlsplaylist.o: file format not recognized arm-linux-gnueabihf-nm: hlsproto.o: file format not recognized arm-linux-gnueabihf-nm: hnm.o: file format not recognized arm-linux-gnueabihf-nm: http.o: file format not recognized arm-linux-gnueabihf-nm: httpauth.o: file format not recognized arm-linux-gnueabihf-nm: icecast.o: file format not recognized arm-linux-gnueabihf-nm: icodec.o: file format not recognized arm-linux-gnueabihf-nm: icoenc.o: file format not recognized arm-linux-gnueabihf-nm: id3v1.o: file format not recognized arm-linux-gnueabihf-nm: id3v2.o: file format not recognized arm-linux-gnueabihf-nm: id3v2enc.o: file format not recognized arm-linux-gnueabihf-nm: idcin.o: file format not recognized arm-linux-gnueabihf-nm: idroqdec.o: file format not recognized arm-linux-gnueabihf-nm: idroqenc.o: file format not recognized arm-linux-gnueabihf-nm: iff.o: file format not recognized arm-linux-gnueabihf-nm: ifv.o: file format not recognized arm-linux-gnueabihf-nm: ilbc.o: file format not recognized arm-linux-gnueabihf-nm: img2.o: file format not recognized arm-linux-gnueabihf-nm: img2_alias_pix.o: file format not recognized arm-linux-gnueabihf-nm: img2_brender_pix.o: file format not recognized arm-linux-gnueabihf-nm: img2dec.o: file format not recognized arm-linux-gnueabihf-nm: img2enc.o: file format not recognized arm-linux-gnueabihf-nm: imx.o: file format not recognized arm-linux-gnueabihf-nm: ingenientdec.o: file format not recognized arm-linux-gnueabihf-nm: ip.o: file format not recognized arm-linux-gnueabihf-nm: ipmovie.o: file format not recognized arm-linux-gnueabihf-nm: ipudec.o: file format not recognized arm-linux-gnueabihf-nm: ircam.o: file format not recognized arm-linux-gnueabihf-nm: ircamdec.o: file format not recognized arm-linux-gnueabihf-nm: ircamenc.o: file format not recognized arm-linux-gnueabihf-nm: isom.o: file format not recognized arm-linux-gnueabihf-nm: isom_tags.o: file format not recognized arm-linux-gnueabihf-nm: iss.o: file format not recognized arm-linux-gnueabihf-nm: iv8.o: file format not recognized arm-linux-gnueabihf-nm: ivfdec.o: file format not recognized arm-linux-gnueabihf-nm: ivfenc.o: file format not recognized arm-linux-gnueabihf-nm: jacosubdec.o: file format not recognized arm-linux-gnueabihf-nm: jacosubenc.o: file format not recognized arm-linux-gnueabihf-nm: jpegxl_anim_dec.o: file format not recognized arm-linux-gnueabihf-nm: jvdec.o: file format not recognized arm-linux-gnueabihf-nm: kvag.o: file format not recognized arm-linux-gnueabihf-nm: lafdec.o: file format not recognized arm-linux-gnueabihf-nm: latmenc.o: file format not recognized arm-linux-gnueabihf-nm: lmlm4.o: file format not recognized arm-linux-gnueabihf-nm: loasdec.o: file format not recognized arm-linux-gnueabihf-nm: lrc.o: file format not recognized arm-linux-gnueabihf-nm: lrcdec.o: file format not recognized arm-linux-gnueabihf-nm: lrcenc.o: file format not recognized arm-linux-gnueabihf-nm: luodatdec.o: file format not recognized arm-linux-gnueabihf-nm: lvfdec.o: file format not recognized arm-linux-gnueabihf-nm: lxfdec.o: file format not recognized arm-linux-gnueabihf-nm: m4vdec.o: file format not recognized arm-linux-gnueabihf-nm: matroska.o: file format not recognized arm-linux-gnueabihf-nm: matroskadec.o: file format not recognized arm-linux-gnueabihf-nm: matroskaenc.o: file format not recognized arm-linux-gnueabihf-nm: mca.o: file format not recognized arm-linux-gnueabihf-nm: mccdec.o: file format not recognized arm-linux-gnueabihf-nm: md5proto.o: file format not recognized arm-linux-gnueabihf-nm: metadata.o: file format not recognized arm-linux-gnueabihf-nm: mgsts.o: file format not recognized arm-linux-gnueabihf-nm: microdvddec.o: file format not recognized arm-linux-gnueabihf-nm: microdvdenc.o: file format not recognized arm-linux-gnueabihf-nm: mj2kdec.o: file format not recognized arm-linux-gnueabihf-nm: mkvtimestamp_v2.o: file format not recognized arm-linux-gnueabihf-nm: mlpdec.o: file format not recognized arm-linux-gnueabihf-nm: mlvdec.o: file format not recognized arm-linux-gnueabihf-nm: mm.o: file format not recognized arm-linux-gnueabihf-nm: mmf.o: file format not recognized arm-linux-gnueabihf-nm: mms.o: file format not recognized arm-linux-gnueabihf-nm: mmsh.o: file format not recognized arm-linux-gnueabihf-nm: mmst.o: file format not recognized arm-linux-gnueabihf-nm: mods.o: file format not recognized arm-linux-gnueabihf-nm: moflex.o: file format not recognized arm-linux-gnueabihf-nm: mov.o: file format not recognized arm-linux-gnueabihf-nm: mov_chan.o: file format not recognized arm-linux-gnueabihf-nm: mov_esds.o: file format not recognized arm-linux-gnueabihf-nm: movenc.o: file format not recognized arm-linux-gnueabihf-nm: movenc_ttml.o: file format not recognized arm-linux-gnueabihf-nm: movenccenc.o: file format not recognized arm-linux-gnueabihf-nm: movenchint.o: file format not recognized arm-linux-gnueabihf-nm: mp3dec.o: file format not recognized arm-linux-gnueabihf-nm: mp3enc.o: file format not recognized arm-linux-gnueabihf-nm: mpc.o: file format not recognized arm-linux-gnueabihf-nm: mpc8.o: file format not recognized arm-linux-gnueabihf-nm: mpeg.o: file format not recognized arm-linux-gnueabihf-nm: mpegenc.o: file format not recognized arm-linux-gnueabihf-nm: mpegts.o: file format not recognized arm-linux-gnueabihf-nm: mpegtsenc.o: file format not recognized arm-linux-gnueabihf-nm: mpegvideodec.o: file format not recognized arm-linux-gnueabihf-nm: mpjpeg.o: file format not recognized arm-linux-gnueabihf-nm: mpjpegdec.o: file format not recognized arm-linux-gnueabihf-nm: mpl2dec.o: file format not recognized arm-linux-gnueabihf-nm: mpsubdec.o: file format not recognized arm-linux-gnueabihf-nm: msf.o: file format not recognized arm-linux-gnueabihf-nm: msnwc_tcp.o: file format not recognized arm-linux-gnueabihf-nm: mspdec.o: file format not recognized arm-linux-gnueabihf-nm: mtaf.o: file format not recognized arm-linux-gnueabihf-nm: mtv.o: file format not recognized arm-linux-gnueabihf-nm: musx.o: file format not recognized arm-linux-gnueabihf-nm: mux.o: file format not recognized arm-linux-gnueabihf-nm: mux_utils.o: file format not recognized arm-linux-gnueabihf-nm: mvdec.o: file format not recognized arm-linux-gnueabihf-nm: mvi.o: file format not recognized arm-linux-gnueabihf-nm: mxf.o: file format not recognized arm-linux-gnueabihf-nm: mxfdec.o: file format not recognized arm-linux-gnueabihf-nm: mxfenc.o: file format not recognized arm-linux-gnueabihf-nm: mxg.o: file format not recognized arm-linux-gnueabihf-nm: ncdec.o: file format not recognized arm-linux-gnueabihf-nm: network.o: file format not recognized arm-linux-gnueabihf-nm: nistspheredec.o: file format not recognized arm-linux-gnueabihf-nm: nspdec.o: file format not recognized arm-linux-gnueabihf-nm: nsvdec.o: file format not recognized arm-linux-gnueabihf-nm: nullenc.o: file format not recognized arm-linux-gnueabihf-nm: nut.o: file format not recognized arm-linux-gnueabihf-nm: nutdec.o: file format not recognized arm-linux-gnueabihf-nm: nutenc.o: file format not recognized arm-linux-gnueabihf-nm: nuv.o: file format not recognized arm-linux-gnueabihf-nm: oggdec.o: file format not recognized arm-linux-gnueabihf-nm: oggenc.o: file format not recognized arm-linux-gnueabihf-nm: oggparsecelt.o: file format not recognized arm-linux-gnueabihf-nm: oggparsedirac.o: file format not recognized arm-linux-gnueabihf-nm: oggparseflac.o: file format not recognized arm-linux-gnueabihf-nm: oggparseogm.o: file format not recognized arm-linux-gnueabihf-nm: oggparseopus.o: file format not recognized arm-linux-gnueabihf-nm: oggparseskeleton.o: file format not recognized arm-linux-gnueabihf-nm: oggparsespeex.o: file format not recognized arm-linux-gnueabihf-nm: oggparsetheora.o: file format not recognized arm-linux-gnueabihf-nm: oggparsevorbis.o: file format not recognized arm-linux-gnueabihf-nm: oggparsevp8.o: file format not recognized arm-linux-gnueabihf-nm: oma.o: file format not recognized arm-linux-gnueabihf-nm: omadec.o: file format not recognized arm-linux-gnueabihf-nm: omaenc.o: file format not recognized arm-linux-gnueabihf-nm: options.o: file format not recognized arm-linux-gnueabihf-nm: os_support.o: file format not recognized arm-linux-gnueabihf-nm: osq.o: file format not recognized arm-linux-gnueabihf-nm: paf.o: file format not recognized arm-linux-gnueabihf-nm: pcm.o: file format not recognized arm-linux-gnueabihf-nm: pcmdec.o: file format not recognized arm-linux-gnueabihf-nm: pcmenc.o: file format not recognized arm-linux-gnueabihf-nm: pdvdec.o: file format not recognized arm-linux-gnueabihf-nm: pjsdec.o: file format not recognized arm-linux-gnueabihf-nm: pmpdec.o: file format not recognized arm-linux-gnueabihf-nm: pp_bnk.o: file format not recognized arm-linux-gnueabihf-nm: prompeg.o: file format not recognized arm-linux-gnueabihf-nm: protocols.o: file format not recognized arm-linux-gnueabihf-nm: psxstr.o: file format not recognized arm-linux-gnueabihf-nm: pva.o: file format not recognized arm-linux-gnueabihf-nm: pvfdec.o: file format not recognized arm-linux-gnueabihf-nm: qcp.o: file format not recognized arm-linux-gnueabihf-nm: qtpalette.o: file format not recognized arm-linux-gnueabihf-nm: r3d.o: file format not recognized arm-linux-gnueabihf-nm: rawdec.o: file format not recognized arm-linux-gnueabihf-nm: rawenc.o: file format not recognized arm-linux-gnueabihf-nm: rawutils.o: file format not recognized arm-linux-gnueabihf-nm: rawvideodec.o: file format not recognized arm-linux-gnueabihf-nm: rdt.o: file format not recognized arm-linux-gnueabihf-nm: realtextdec.o: file format not recognized arm-linux-gnueabihf-nm: redspark.o: file format not recognized arm-linux-gnueabihf-nm: replaygain.o: file format not recognized arm-linux-gnueabihf-nm: riff.o: file format not recognized arm-linux-gnueabihf-nm: riffdec.o: file format not recognized arm-linux-gnueabihf-nm: riffenc.o: file format not recognized arm-linux-gnueabihf-nm: rka.o: file format not recognized arm-linux-gnueabihf-nm: rl2.o: file format not recognized arm-linux-gnueabihf-nm: rm.o: file format not recognized arm-linux-gnueabihf-nm: rmdec.o: file format not recognized arm-linux-gnueabihf-nm: rmenc.o: file format not recognized arm-linux-gnueabihf-nm: rmsipr.o: file format not recognized arm-linux-gnueabihf-nm: rpl.o: file format not recognized arm-linux-gnueabihf-nm: rsd.o: file format not recognized arm-linux-gnueabihf-nm: rso.o: file format not recognized arm-linux-gnueabihf-nm: rsodec.o: file format not recognized arm-linux-gnueabihf-nm: rsoenc.o: file format not recognized arm-linux-gnueabihf-nm: rtmpdigest.o: file format not recognized arm-linux-gnueabihf-nm: rtmphttp.o: file format not recognized arm-linux-gnueabihf-nm: rtmppkt.o: file format not recognized arm-linux-gnueabihf-nm: rtmpproto.o: file format not recognized arm-linux-gnueabihf-nm: rtp.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_ac3.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_amr.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_asf.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_dv.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_g726.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_h261.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_h263.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_h263_rfc2190.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_h264.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_hevc.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_ilbc.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_jpeg.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_latm.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_mpa_robust.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_mpeg12.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_mpeg4.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_mpegts.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_qcelp.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_qdm2.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_qt.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_rfc4175.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_svq3.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_vc2hq.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_vp8.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_vp9.o: file format not recognized arm-linux-gnueabihf-nm: rtpdec_xiph.o: file format not recognized arm-linux-gnueabihf-nm: rtpenc.o: file format not recognized arm-linux-gnueabihf-nm: rtpenc_aac.o: file format not recognized arm-linux-gnueabihf-nm: rtpenc_amr.o: file format not recognized arm-linux-gnueabihf-nm: rtpenc_chain.o: file format not recognized arm-linux-gnueabihf-nm: rtpenc_h261.o: file format not recognized arm-linux-gnueabihf-nm: rtpenc_h263.o: file format not recognized arm-linux-gnueabihf-nm: rtpenc_h263_rfc2190.o: file format not recognized arm-linux-gnueabihf-nm: rtpenc_h264_hevc.o: file format not recognized arm-linux-gnueabihf-nm: rtpenc_jpeg.o: file format not recognized arm-linux-gnueabihf-nm: rtpenc_latm.o: file format not recognized arm-linux-gnueabihf-nm: rtpenc_mpegts.o: file format not recognized arm-linux-gnueabihf-nm: rtpenc_mpv.o: file format not recognized arm-linux-gnueabihf-nm: rtpenc_rfc4175.o: file format not recognized arm-linux-gnueabihf-nm: rtpenc_vc2hq.o: file format not recognized arm-linux-gnueabihf-nm: rtpenc_vp8.o: file format not recognized arm-linux-gnueabihf-nm: rtpenc_vp9.o: file format not recognized arm-linux-gnueabihf-nm: rtpenc_xiph.o: file format not recognized arm-linux-gnueabihf-nm: rtpproto.o: file format not recognized arm-linux-gnueabihf-nm: rtsp.o: file format not recognized arm-linux-gnueabihf-nm: rtspdec.o: file format not recognized arm-linux-gnueabihf-nm: rtspenc.o: file format not recognized arm-linux-gnueabihf-nm: s337m.o: file format not recognized arm-linux-gnueabihf-nm: samidec.o: file format not recognized arm-linux-gnueabihf-nm: sapdec.o: file format not recognized arm-linux-gnueabihf-nm: sapenc.o: file format not recognized arm-linux-gnueabihf-nm: sauce.o: file format not recognized arm-linux-gnueabihf-nm: sbcdec.o: file format not recognized arm-linux-gnueabihf-nm: sbgdec.o: file format not recognized arm-linux-gnueabihf-nm: sccdec.o: file format not recognized arm-linux-gnueabihf-nm: sccenc.o: file format not recognized arm-linux-gnueabihf-nm: scd.o: file format not recognized arm-linux-gnueabihf-nm: sdns.o: file format not recognized arm-linux-gnueabihf-nm: sdp.o: file format not recognized arm-linux-gnueabihf-nm: sdr2.o: file format not recognized arm-linux-gnueabihf-nm: sdsdec.o: file format not recognized arm-linux-gnueabihf-nm: sdxdec.o: file format not recognized arm-linux-gnueabihf-nm: seek.o: file format not recognized arm-linux-gnueabihf-nm: segafilm.o: file format not recognized arm-linux-gnueabihf-nm: segafilmenc.o: file format not recognized arm-linux-gnueabihf-nm: segment.o: file format not recognized arm-linux-gnueabihf-nm: serdec.o: file format not recognized arm-linux-gnueabihf-nm: sga.o: file format not recognized arm-linux-gnueabihf-nm: shortendec.o: file format not recognized arm-linux-gnueabihf-nm: sierravmd.o: file format not recognized arm-linux-gnueabihf-nm: siff.o: file format not recognized arm-linux-gnueabihf-nm: smacker.o: file format not recognized arm-linux-gnueabihf-nm: smjpeg.o: file format not recognized arm-linux-gnueabihf-nm: smjpegdec.o: file format not recognized arm-linux-gnueabihf-nm: smjpegenc.o: file format not recognized arm-linux-gnueabihf-nm: smoothstreamingenc.o: file format not recognized arm-linux-gnueabihf-nm: smush.o: file format not recognized arm-linux-gnueabihf-nm: sol.o: file format not recognized arm-linux-gnueabihf-nm: soxdec.o: file format not recognized arm-linux-gnueabihf-nm: soxenc.o: file format not recognized arm-linux-gnueabihf-nm: spdif.o: file format not recognized arm-linux-gnueabihf-nm: spdifdec.o: file format not recognized arm-linux-gnueabihf-nm: spdifenc.o: file format not recognized arm-linux-gnueabihf-nm: srtdec.o: file format not recognized arm-linux-gnueabihf-nm: srtenc.o: file format not recognized arm-linux-gnueabihf-nm: srtp.o: file format not recognized arm-linux-gnueabihf-nm: srtpproto.o: file format not recognized arm-linux-gnueabihf-nm: stldec.o: file format not recognized arm-linux-gnueabihf-nm: subfile.o: file format not recognized arm-linux-gnueabihf-nm: subtitles.o: file format not recognized arm-linux-gnueabihf-nm: subviewer1dec.o: file format not recognized arm-linux-gnueabihf-nm: subviewerdec.o: file format not recognized arm-linux-gnueabihf-nm: supdec.o: file format not recognized arm-linux-gnueabihf-nm: supenc.o: file format not recognized arm-linux-gnueabihf-nm: svag.o: file format not recognized arm-linux-gnueabihf-nm: svs.o: file format not recognized arm-linux-gnueabihf-nm: swf.o: file format not recognized arm-linux-gnueabihf-nm: swfdec.o: file format not recognized arm-linux-gnueabihf-nm: swfenc.o: file format not recognized arm-linux-gnueabihf-nm: takdec.o: file format not recognized arm-linux-gnueabihf-nm: tcp.o: file format not recognized arm-linux-gnueabihf-nm: tedcaptionsdec.o: file format not recognized arm-linux-gnueabihf-nm: tee.o: file format not recognized arm-linux-gnueabihf-nm: tee_common.o: file format not recognized arm-linux-gnueabihf-nm: teeproto.o: file format not recognized arm-linux-gnueabihf-nm: thp.o: file format not recognized arm-linux-gnueabihf-nm: tiertexseq.o: file format not recognized arm-linux-gnueabihf-nm: tmv.o: file format not recognized arm-linux-gnueabihf-nm: tta.o: file format not recognized arm-linux-gnueabihf-nm: ttaenc.o: file format not recognized arm-linux-gnueabihf-nm: ttmlenc.o: file format not recognized arm-linux-gnueabihf-nm: tty.o: file format not recognized arm-linux-gnueabihf-nm: txd.o: file format not recognized arm-linux-gnueabihf-nm: ty.o: file format not recognized arm-linux-gnueabihf-nm: udp.o: file format not recognized arm-linux-gnueabihf-nm: uncodedframecrcenc.o: file format not recognized arm-linux-gnueabihf-nm: unix.o: file format not recognized arm-linux-gnueabihf-nm: url.o: file format not recognized arm-linux-gnueabihf-nm: urldecode.o: file format not recognized arm-linux-gnueabihf-nm: usmdec.o: file format not recognized arm-linux-gnueabihf-nm: utils.o: file format not recognized arm-linux-gnueabihf-nm: vag.o: file format not recognized arm-linux-gnueabihf-nm: vc1dec.o: file format not recognized arm-linux-gnueabihf-nm: vc1test.o: file format not recognized arm-linux-gnueabihf-nm: vc1testenc.o: file format not recognized arm-linux-gnueabihf-nm: version.o: file format not recognized arm-linux-gnueabihf-nm: vividas.o: file format not recognized arm-linux-gnueabihf-nm: vivo.o: file format not recognized arm-linux-gnueabihf-nm: voc.o: file format not recognized arm-linux-gnueabihf-nm: voc_packet.o: file format not recognized arm-linux-gnueabihf-nm: vocdec.o: file format not recognized arm-linux-gnueabihf-nm: vocenc.o: file format not recognized arm-linux-gnueabihf-nm: vorbiscomment.o: file format not recognized arm-linux-gnueabihf-nm: vpcc.o: file format not recognized arm-linux-gnueabihf-nm: vpk.o: file format not recognized arm-linux-gnueabihf-nm: vplayerdec.o: file format not recognized arm-linux-gnueabihf-nm: vqf.o: file format not recognized arm-linux-gnueabihf-nm: vvcdec.o: file format not recognized arm-linux-gnueabihf-nm: w64.o: file format not recognized arm-linux-gnueabihf-nm: wady.o: file format not recognized arm-linux-gnueabihf-nm: wavarc.o: file format not recognized arm-linux-gnueabihf-nm: wavdec.o: file format not recognized arm-linux-gnueabihf-nm: wavenc.o: file format not recognized arm-linux-gnueabihf-nm: wc3movie.o: file format not recognized arm-linux-gnueabihf-nm: webm_chunk.o: file format not recognized arm-linux-gnueabihf-nm: webmdashenc.o: file format not recognized arm-linux-gnueabihf-nm: webpenc.o: file format not recognized arm-linux-gnueabihf-nm: webvttdec.o: file format not recognized arm-linux-gnueabihf-nm: webvttenc.o: file format not recognized arm-linux-gnueabihf-nm: westwood_aud.o: file format not recognized arm-linux-gnueabihf-nm: westwood_audenc.o: file format not recognized arm-linux-gnueabihf-nm: westwood_vqa.o: file format not recognized arm-linux-gnueabihf-nm: wsddec.o: file format not recognized arm-linux-gnueabihf-nm: wtv_common.o: file format not recognized arm-linux-gnueabihf-nm: wtvdec.o: file format not recognized arm-linux-gnueabihf-nm: wtvenc.o: file format not recognized arm-linux-gnueabihf-nm: wv.o: file format not recognized arm-linux-gnueabihf-nm: wvdec.o: file format not recognized arm-linux-gnueabihf-nm: wvedec.o: file format not recognized arm-linux-gnueabihf-nm: wvenc.o: file format not recognized arm-linux-gnueabihf-nm: xa.o: file format not recognized arm-linux-gnueabihf-nm: xmd.o: file format not recognized arm-linux-gnueabihf-nm: xmv.o: file format not recognized arm-linux-gnueabihf-nm: xvag.o: file format not recognized arm-linux-gnueabihf-nm: xwma.o: file format not recognized arm-linux-gnueabihf-nm: yop.o: file format not recognized arm-linux-gnueabihf-nm: yuv4mpegdec.o: file format not recognized arm-linux-gnueabihf-nm: yuv4mpegenc.o: file format not recognized arm-linux-gnueabihf-nm: ac3_channel_layout_tab.o: file format not recognized arm-linux-gnueabihf-nm: dca_sample_rate_tab.o: file format not recognized arm-linux-gnueabihf-nm: golomb_tab.o: file format not recognized arm-linux-gnueabihf-nm: jpegtables.o: file format not recognized arm-linux-gnueabihf-nm: jpegxl_parse.o: file format not recognized arm-linux-gnueabihf-nm: log2_tab.o: file format not recognized arm-linux-gnueabihf-nm: mpeg4audio_sample_rates.o: file format not recognized arm-linux-gnueabihf-nm: mpegaudiotabs.o: file format not recognized arm-linux-gnueabihf-nm: rangecoder_dec.o: file format not recognized arm-linux-gnueabihf-nm: to_upper4.o: file format not recognized sunkaijie@sunkaijie-virtual-machine:~/nfs/hongjing-gti/hj_media/ext_src/ffmpeg/libs/glibc_11.1.0-lib$
06-24
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值