• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/ap/gpl/minidlna/ffmpeg-2.3.4/libavformat/

Lines Matching defs:gxf

29 #include "gxf.h"
233 static int gxf_write_timecode_auxiliary(AVIOContext *pb, GXFContext *gxf)
235 uint32_t timecode = GXF_TIMECODE(gxf->tc.color, gxf->tc.drop,
236 gxf->tc.hh, gxf->tc.mm,
237 gxf->tc.ss, gxf->tc.ff);
249 GXFContext *gxf = s->priv_data;
269 gxf_write_timecode_auxiliary(pb, gxf);
310 GXFContext *gxf = s->priv_data;
340 avio_wb32(pb, gxf->nb_fields);
349 avio_wb32(pb, gxf->nb_fields);
361 GXFContext *gxf = s->priv_data;
371 gxf_write_track_description(s, &gxf->timecode_track, s->nb_streams);
378 GXFContext *gxf = s->priv_data;
383 if (!(gxf->map_offsets_nb % 30)) {
385 if ((err = av_reallocp_array(&gxf->map_offsets,
386 gxf->map_offsets_nb + 30,
387 sizeof(*gxf->map_offsets))) < 0) {
388 gxf->map_offsets_nb = 0;
393 gxf->map_offsets[gxf->map_offsets_nb++] = pos; // do not increment here
410 GXFContext *gxf = s->priv_data;
413 int fields_per_flt = (gxf->nb_fields+1) / 1000 + 1;
414 int flt_entries = gxf->nb_fields / fields_per_flt;
422 if (gxf->flt_entries) {
424 avio_wl32(pb, gxf->flt_entries[(i*fields_per_flt)>>1]);
435 GXFContext *gxf = s->priv_data;
437 int timecode_base = gxf->time_base.den == 60000 ? 60 : 50;
447 timecode_in = GXF_TIMECODE(gxf->tc.color, gxf->tc.drop,
448 gxf->tc.hh, gxf->tc.mm,
449 gxf->tc.ss, gxf->tc.ff);
451 nb_fields = gxf->nb_fields +
452 gxf->tc.hh * (timecode_base * 3600) +
453 gxf->tc.mm * (timecode_base * 60) +
454 gxf->tc.ss * timecode_base +
455 gxf->tc.ff;
457 timecode_out = GXF_TIMECODE(gxf->tc.color, gxf->tc.drop,
463 avio_wl32(pb, gxf->flags);
464 avio_wl32(pb, gxf->nb_fields); /* length of the longest track */
465 avio_wl32(pb, gxf->nb_fields); /* length of the shortest track */
467 avio_wl32(pb, gxf->nb_fields); /* mark out */
474 avio_wl16(pb, gxf->audio_tracks);
477 avio_wl16(pb, gxf->mpeg_tracks);
483 GXFContext *gxf = s->priv_data;
486 avio_wl32(pb, gxf->umf_length); /* total length of the umf data */
489 avio_wl32(pb, gxf->umf_track_offset); /* umf track section offset */
490 avio_wl32(pb, gxf->umf_track_size);
492 avio_wl32(pb, gxf->umf_media_offset);
493 avio_wl32(pb, gxf->umf_media_size);
494 avio_wl32(pb, gxf->umf_length); /* user data offset */
504 GXFContext *gxf = s->priv_data;
508 gxf->umf_track_offset = pos - gxf->umf_start_offset;
515 avio_wl16(pb, gxf->timecode_track.media_info);
587 GXFContext *gxf = s->priv_data;
593 gxf->umf_media_offset = pos - gxf->umf_start_offset;
599 sc = &gxf->timecode_track;
608 avio_wl32(pb, gxf->nb_fields);
611 avio_wl32(pb, gxf->nb_fields); /* mark out */
621 if (sc == &gxf->timecode_track)
622 gxf_write_umf_media_timecode(pb, gxf->tc.drop);
649 GXFContext *gxf = s->priv_data;
657 avio_wb32(pb, gxf->umf_length); /* data length */
659 gxf->umf_start_offset = avio_tell(pb);
662 gxf->umf_track_size = gxf_write_umf_track_description(s);
663 gxf->umf_media_size = gxf_write_umf_media_description(s);
664 gxf->umf_length = avio_tell(pb) - gxf->umf_start_offset;
707 GXFContext *gxf = s->priv_data;
715 av_log(s, AV_LOG_ERROR, "gxf muxer does not support streamed output, patch welcome\n");
719 gxf->flags |= 0x00080000; /* material is simple clip */
748 gxf->audio_tracks++;
749 gxf->flags |= 0x04000000; /* audio is 16 bit pcm */
760 gxf->flags |= 0x00000080;
761 gxf->time_base = (AVRational){ 1001, 60000 };
766 gxf->flags |= 0x00000040;
767 gxf->time_base = (AVRational){ 1, 50 };
770 "gxf muxer only accepts PAL or NTSC resolutions currently\n");
775 avpriv_set_pts_info(st, 64, gxf->time_base.num, gxf->time_base.den);
786 gxf->flags |= 0x00004000;
791 gxf->mpeg_tracks++;
797 gxf->mpeg_tracks++;
798 gxf->flags |= 0x00008000;
805 gxf->flags |= 0x00002000;
809 gxf->flags |= 0x00001000;
827 gxf_init_timecode(s, &gxf->tc, tcr->value, vsc->fields);
829 gxf_init_timecode_track(&gxf->timecode_track, vsc);
830 gxf->flags |= 0x200000; // time code track is non-drop frame
837 gxf->packet_count = 3;
853 GXFContext *gxf = s->priv_data;
871 for (i = 1; i < gxf->map_offsets_nb; i++) {
872 avio_seek(pb, gxf->map_offsets[i], SEEK_SET);
880 av_freep(&gxf->flt_entries);
881 av_freep(&gxf->map_offsets);
900 GXFContext *gxf = s->priv_data;
909 field_nb = gxf->nb_fields;
911 field_nb = av_rescale_rnd(pkt->dts, gxf->time_base.den,
912 (int64_t)48000*gxf->time_base.num, AV_ROUND_UP);
947 GXFContext *gxf = s->priv_data;
965 if (!(gxf->flt_entries_nb % 500)) {
967 if ((err = av_reallocp_array(&gxf->flt_entries,
968 gxf->flt_entries_nb + 500,
969 sizeof(*gxf->flt_entries))) < 0) {
970 gxf->flt_entries_nb = 0;
971 gxf->nb_fields = 0;
976 gxf->flt_entries[gxf->flt_entries_nb++] = packet_start_offset;
977 gxf->nb_fields += 2; // count fields
982 gxf->packet_count++;
983 if (gxf->packet_count == 100) {
986 gxf->packet_count = 0;
994 GXFContext *gxf = s->priv_data;
1003 field_nb[i] = av_rescale_rnd(pkt[i]->dts, gxf->time_base.den,
1004 (int64_t)48000*gxf->time_base.num, AV_ROUND_UP);
1023 .name = "gxf",
1025 .extensions = "gxf",