30 #define GXF_AUDIO_PACKET_SIZE 65536
102 #define SERVER_PATH "EXT:/PDR/default/"
103 #define ES_NAME_PATTERN "EXT:/PDR/default/ES."
110 for (i = 0; i < 6; ++i) {
121 for (; to_pad > 0; to_pad--) {
169 int size, starting_line;
192 size = snprintf(buffer, 1024,
"Ver 1\nBr %.6f\nIpg 1\nPpi %d\nBpiop %d\n"
193 "Pix 0\nCf %d\nCg %d\nSl %d\nnl16 %d\nVi 1\nf1 1\n",
276 const char *filename = strrchr(s->
filename,
'/');
286 len = strlen(filename);
373 int fields_per_flt = (gxf->
nb_fields+1) / 1000 + 1;
374 int flt_entries = gxf->
nb_fields / fields_per_flt;
383 for (i = 0; i < flt_entries; i++)
387 for (; i < 1000; i++)
397 int timecode_base = gxf->
time_base.
den == 60000 ? 60 : 50;
398 int64_t timestamp = 0;
404 timestamp = s->timestamp;
412 gxf->
nb_fields / (timecode_base * 3600) % 24 << 24 |
413 gxf->
nb_fields / (timecode_base * 60) % 60 << 16 |
414 gxf->
nb_fields / timecode_base % 60 << 8 |
515 for (i = 0; i < 8; i++) {
554 int64_t startpos, curpos;
648 uint8_t tracks[255] = {0};
649 int i, media_info = 0;
656 gxf->
flags |= 0x00080000;
686 gxf->
flags |= 0x04000000;
697 gxf->
flags |= 0x00000080;
703 gxf->
flags |= 0x00000040;
707 "gxf muxer only accepts PAL or NTSC resolutions currently\n");
721 gxf->
flags |= 0x00004000;
733 gxf->
flags |= 0x00008000;
740 gxf->
flags |= 0x00002000;
744 gxf->
flags |= 0x00001000;
754 sc->
media_info = media_info<<8 | (
'0'+tracks[media_info]++);
762 gxf->
flags |= 0x200000;
818 for(i=0; i<size-4 && c!=0x100; i++){
823 return (buf[i+1]>>3)&7;
880 int packet_start_offset =
avio_tell(pb) / 1024;
884 padding = 4 - pkt->
size % 4;
924 for (i = 0; i < 2; i++) {
932 field_nb[i] = pkt[i]->
dts;
935 return field_nb[1] > field_nb[0] ||
936 (field_nb[1] == field_nb[0] && sc[1]->
order > sc[0]->
order);