ffmpeg--mpegts.c

本文详细介绍了FFmpeg解析TS流的过程,包括mpegts_probe、mpegts_read_header等关键函数的作用及实现原理,并深入探讨了如何通过PAT表、PMT表等获取流的基本信息。

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

数字电视当中接触最多的还是ts流,以前使用ffplay播放过录制的ts流,但却不知道在ffmpeg当中ts流是如何被解析出来的,今天花点时间对ffmpeg当中ts流的解析过程做了一个简单分析。

mpegts.c

从这个文件最下面开始:

AVInputFormat mpegts_demuxer = {
    "mpegts",
    NULL_IF_CONFIG_SMALL("MPEG-2 transport stream format"),
    sizeof(MpegTSContext),
    mpegts_probe,
    mpegts_read_header,
    mpegts_read_packet,
    mpegts_read_close,
    read_seek,
    mpegts_get_pcr,
    .flags = AVFMT_SHOW_IDS|AVFMT_TS_DISCONT,
};

mpegts_probe

这函数一看就知道是检测数据格式是不是mpegts格式的。

mpegts_read_header

读数据头信息,比如在ts流当中的数据包大小,和ts流中的节目信息,sdt表,pmt表,video pid,audio pid等等,以便后面读数据时使用。

/* read the first 1024 bytes to get packet size */
pos = url_ftell(pb);
len = get_buffer(pb, buf, sizeof(buf));
if (len != sizeof(buf))
    goto fail;
ts->raw_packet_size = get_packet_size(buf, sizeof(buf));
if (ts->raw_packet_size <= 0)
    goto fail;

上面这几行代码是从数据流当中读了5 * 1024个字节来判断数据包的大小raw_packet_size,一般这个值是188,当然如果这个ts流不是标准和dvb ts流的话,那当然会不一样的。
/* first do a scaning to get all the services */
url_fseek(pb, pos, SEEK_SET);
mpegts_scan_sdt(ts);

mpegts_set_service(ts);

handle_packets(ts, s->probesize);
/* if could not find service, enable auto_guess */
ts->auto_guess = 1;

上面这几行代码是扫描节目信息,首先mpegts_scan_sdt当中调用mpegts_open_section_filter设置了一个SDT表的filter,SDT表当中会有节目的名子,提供商名子等等。接着在mpegts_set_service当中又设置mpegts_open_section_filter设置了一个PAT表filter,PAT表当中会存放节目的SID, PMT_PID,从而可以取到对应的PMT表,然后解板出VIDEO PID, AUDIO PID来,handle_packets就不用看了,上面设置了filter,这里紧跟着就得让filter工作起来了。
pat_cb:
……
av_new_program(ts->stream, sid);
ts->stop_parse--;
mpegts_open_section_filter(ts, pmt_pid, pmt_cb, ts, 1);
add_pat_entry(ts, sid);
add_pid_to_pmt(ts, sid, 0); //add pat pid to program
add_pid_to_pmt(ts, sid, pmt_pid);

……
pmt_cb
……
/* now create ffmpeg stream */
switch(stream_type) {
case STREAM_TYPE_AUDIO_MPEG1:
case STREAM_TYPE_AUDIO_MPEG2:
case STREAM_TYPE_VIDEO_MPEG1:
case STREAM_TYPE_VIDEO_MPEG2:
case STREAM_TYPE_VIDEO_MPEG4:
case STREAM_TYPE_VIDEO_H264:
case STREAM_TYPE_VIDEO_VC1:
case STREAM_TYPE_VIDEO_DIRAC:
case STREAM_TYPE_AUDIO_AAC:
case STREAM_TYPE_AUDIO_AC3:
case STREAM_TYPE_AUDIO_DTS:
case STREAM_TYPE_AUDIO_HDMV_DTS:
case STREAM_TYPE_SUBTITLE_DVB:
    if((stream_type == STREAM_TYPE_AUDIO_HDMV_DTS && !has_hdmv_descr)
    || (stream_type == STREAM_TYPE_VIDEO_DIRAC    && !has_dirac_descr))
        break;
    if(ts->pids[pid] && ts->pids[pid]->type == MPEGTS_PES){
        pes= ts->pids[pid]->u.pes_filter.opaque;
        st= pes->st;
    }else{
        if (ts->pids[pid]) mpegts_close_filter(ts, ts->pids[pid]); //wrongly added sdt filter probably
        pes = add_pes_stream(ts, pid, pcr_pid, stream_type);
        if (pes)
            st = new_pes_av_stream(pes, 0);
    }
    add_pid_to_pmt(ts, h->id, pid);
    if(st)
        av_program_add_stream_index(ts->stream, h->id, st->index);
    break;
default:
    /* we ignore the other streams */
    break;
}

……

得到每个video, audio的PID,然后就设置成pes filter,到这里基本上获取流的基本信息就已经结束了。

下面再来看使用最多的一个函数

mpegts_read_packet

/* return AVERROR_something if error or EOF. Return 0 if OK. */
static int read_packet(AVFormatContext *s, uint8_t *buf, int raw_packet_size,
                       const uint8_t **data)
{
    AVIOContext *pb = s->pb;
    int len;

    for (;;) {

        //读188个字节出来,如果缓冲里有,读缓冲,如果没有,读文件。

        len = ffio_read_indirect(pb, buf, TS_PACKET_SIZE, data);    
        if (len != TS_PACKET_SIZE)
            return len < 0 ? len : AVERROR_EOF;
        /* check packet sync byte */
        if ((*data)[0] != 0x47) {
            /* find a new packet start */
            if (mpegts_resync(s, raw_packet_size, *data) < 0)
                return AVERROR(EAGAIN);
            else
                continue;
        } else {
            break;
        }
    }
    return 0;
}     

handle_packets 这是我们刚刚跳过去的函数,此函数执行完,就得到一个PES包,保存在pkt中。

             handle_packet 这函数是处理单个包的,所以后面没有s
                     if (tss->type == MPEGTS_SECTION) {
                            ……
                            write_section_data(s, tss,
                                   p, p_end - p, 0);

                            ……
                     } else {
                            // Note: The position here points actually behind the current packet.
                            tss->u.pes_filter.pes_cb(tss,
                                 p, p_end - p, is_start, pos - ts->raw_packet_size);
                     }


处理每一个包,如果是section包,就调用write_section_data,这个函数里面如果一个PAT, PMT, SDT表已经构成,则会调用刚刚看到的pat_cb, pmt_cb, sdt_cb,分析到这里,已经不用再管section包了,只看pes包,所以一般会调用tss->u.pes_filter.pes_cb,这个函数指针到底是什么呢?在函数add_pes_stream里面可以看到,mpegts_open_pes_filter函数的一个参数mpegts_push_data就是这里的tss->u.pes_filter.pes_cb,好,跟到这个函数里面瞧瞧。
mpegts_push_data
    ……   
    while (buf_size > 0) {
        switch(pes->state) {
        case MPEGTS_HEADER:
        case MPEGTS_PESHEADER_FILL:
        case MPEGTS_PAYLOAD:
                 if (pes->data_index > 0 &&
                    pes->data_index + buf_size > pes->total_size) {
                    new_pes_packet(pes, ts->pkt);
                    pes->total_size = MAX_PES_PAYLOAD;
                    pes->buffer = av_buffer_alloc(pes->total_size +
                                                  AV_INPUT_BUFFER_PADDING_SIZE);
                    if (!pes->buffer)
                        return AVERROR(ENOMEM);
                    ts->stop_parse = 1;
                }

            return;
    ……

ts->stop_parse = 1意味着一个pes包构成了,所以上面的函数mpegts_read_packet就返回了,这样,一个pes包送上去了,再送到codec去解码,最后送去video或audio输出设置显示了。由些可以看到ts流和avi, mkv这些一样,都是一个容器,真真的数据都是包含在其中的一个一个的串流。

I帧判断

获取到一个PES包后,会进行帧判断。


问题


PES packet size mismatch
static int new_pes_packet(PESContext *pes, AVPacket *pkt)
{
...
    if (pes->total_size != MAX_PES_PAYLOAD &&
        pes->pes_header_size + pes->data_index != pes->total_size +
        PES_START_SIZE) {
        av_log(pes->stream, AV_LOG_WARNING, "PES packet size mismatch\n");
        pes->flags |= AV_PKT_FLAG_CORRUPT;
    }
...
}

多久插入PCR

muxrate 默认是1。

    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 alsobe 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);

                           //ts_st->user_tb为(1,50),service->pcr_packet_period5

        }

        if (!service->pcr_packet_period)

            service->pcr_packet_period = 1;

    }

  service->pcr_packet_count =service->pcr_packet_period;

是否要加PCR。

       if (ts->mux_rate > 1 || is_start) // VBR pcr period is based onframes

               ts_st->service->pcr_packet_count++;

            if(ts_st->service->pcr_packet_count >=

               ts_st->service->pcr_packet_period) {

                ts_st->service->pcr_packet_count= 0;

                write_pcr = 1;

            }




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
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值