nutenc.c File Reference
#include "libavutil/intreadwrite.h"
#include "libavutil/mathematics.h"
#include "libavutil/tree.h"
#include "libavutil/dict.h"
#include "libavcodec/mpegaudiodata.h"
#include "nut.h"
#include "internal.h"
#include "avio_internal.h"

Go to the source code of this file.

Functions

static int find_expected_header (AVCodecContext *c, int size, int key_frame, uint8_t out[64])
static int find_header_idx (AVFormatContext *s, AVCodecContext *c, int size, int frame_type)
static void build_elision_headers (AVFormatContext *s)
static void build_frame_code (AVFormatContext *s)
static void put_tt (NUTContext *nut, AVRational *time_base, AVIOContext *bc, uint64_t val)
static void put_str (AVIOContext *bc, const char *string)
 Store a string as vb.
static void put_s (AVIOContext *bc, int64_t val)
static void put_packet (NUTContext *nut, AVIOContext *bc, AVIOContext *dyn_bc, int calculate_checksum, uint64_t startcode)
static void write_mainheader (NUTContext *nut, AVIOContext *bc)
static int write_streamheader (AVFormatContext *avctx, AVIOContext *bc, AVStream *st, int i)
static int add_info (AVIOContext *bc, const char *type, const char *value)
static int write_globalinfo (NUTContext *nut, AVIOContext *bc)
static int write_streaminfo (NUTContext *nut, AVIOContext *bc, int stream_id)
static int write_chapter (NUTContext *nut, AVIOContext *bc, int id)
static int write_headers (AVFormatContext *avctx, AVIOContext *bc)
static int nut_write_header (AVFormatContext *s)
static int get_needed_flags (NUTContext *nut, StreamContext *nus, FrameCode *fc, AVPacket *pkt)
static int find_best_header_idx (NUTContext *nut, AVPacket *pkt)
static int nut_write_packet (AVFormatContext *s, AVPacket *pkt)
static int nut_write_trailer (AVFormatContext *s)

Variables

AVOutputFormat ff_nut_muxer

Function Documentation

static int add_info ( AVIOContext bc,
const char *  type,
const char *  value 
)
static

Definition at line 426 of file nutenc.c.

Referenced by write_chapter(), write_globalinfo(), and write_streaminfo().

static void build_elision_headers ( AVFormatContext s)
static

Definition at line 111 of file nutenc.c.

Referenced by nut_write_header().

static void build_frame_code ( AVFormatContext s)
static

Definition at line 132 of file nutenc.c.

Referenced by nut_write_header().

static int find_best_header_idx ( NUTContext nut,
AVPacket pkt 
)
static

Definition at line 675 of file nutenc.c.

Referenced by nut_write_packet().

static int find_expected_header ( AVCodecContext c,
int  size,
int  key_frame,
uint8_t  out[64] 
)
static

Definition at line 31 of file nutenc.c.

Referenced by find_header_idx().

static int find_header_idx ( AVFormatContext s,
AVCodecContext c,
int  size,
int  frame_type 
)
static

Definition at line 92 of file nutenc.c.

Referenced by build_frame_code().

static int get_needed_flags ( NUTContext nut,
StreamContext nus,
FrameCode fc,
AVPacket pkt 
)
static

Definition at line 657 of file nutenc.c.

Referenced by nut_write_packet().

static int nut_write_header ( AVFormatContext s)
static

Definition at line 581 of file nutenc.c.

static int nut_write_packet ( AVFormatContext s,
AVPacket pkt 
)
static

Definition at line 694 of file nutenc.c.

static int nut_write_trailer ( AVFormatContext s)
static

Definition at line 848 of file nutenc.c.

static void put_packet ( NUTContext nut,
AVIOContext bc,
AVIOContext dyn_bc,
int  calculate_checksum,
uint64_t  startcode 
)
static

Definition at line 282 of file nutenc.c.

Referenced by nut_write_packet(), and write_headers().

static void put_s ( AVIOContext bc,
int64_t  val 
)
static

Definition at line 261 of file nutenc.c.

Referenced by add_info(), write_chapter(), and write_mainheader().

static void put_str ( AVIOContext bc,
const char *  string 
)
static

Store a string as vb.

Definition at line 254 of file nutenc.c.

Referenced by add_info().

static void put_tt ( NUTContext nut,
AVRational time_base,
AVIOContext bc,
uint64_t  val 
)
static

Definition at line 245 of file nutenc.c.

Referenced by nut_write_packet(), and write_chapter().

static int write_chapter ( NUTContext nut,
AVIOContext bc,
int  id 
)
static

Definition at line 490 of file nutenc.c.

Referenced by write_headers().

static int write_globalinfo ( NUTContext nut,
AVIOContext bc 
)
static

Definition at line 433 of file nutenc.c.

Referenced by write_headers().

static int write_headers ( AVFormatContext avctx,
AVIOContext bc 
)
static

Definition at line 518 of file nutenc.c.

Referenced by nut_write_header(), nut_write_packet(), and nut_write_trailer().

static void write_mainheader ( NUTContext nut,
AVIOContext bc 
)
static

Definition at line 303 of file nutenc.c.

Referenced by write_headers().

static int write_streamheader ( AVFormatContext avctx,
AVIOContext bc,
AVStream st,
int  i 
)
static

Definition at line 374 of file nutenc.c.

Referenced by write_headers().

static int write_streaminfo ( NUTContext nut,
AVIOContext bc,
int  stream_id 
)
static

Definition at line 459 of file nutenc.c.

Referenced by write_headers().

Variable Documentation

AVOutputFormat ff_nut_muxer
Initial value:
{
.name = "nut",
.long_name = NULL_IF_CONFIG_SMALL("NUT format"),
.mime_type = "video/x-nut",
.extensions = "nut",
.priv_data_size = sizeof(NUTContext),
.audio_codec = CODEC_ID_MP2,
.video_codec = CODEC_ID_MPEG4,
}

Definition at line 863 of file nutenc.c.