#define pr_fmt(fmt) …
#include <linux/bug.h>
#include <linux/crc32.h>
#include <linux/fixp-arith.h>
#include <linux/jiffies.h>
#include <linux/kernel.h>
#include <linux/math64.h>
#include <linux/printk.h>
#include <linux/ratelimit.h>
#include <linux/slab.h>
#include <linux/string.h>
#include <linux/types.h>
#include <linux/vmalloc.h>
#include "vidtv_common.h"
#include "vidtv_encoder.h"
#include "vidtv_s302m.h"
#define S302M_SAMPLING_RATE_HZ …
#define PES_PRIVATE_STREAM_1 …
#define S302M_BLOCK_SZ …
#define S302M_SIN_LUT_NUM_ELEM …
#define FF_S302M_DEFAULT_NUM_FRAMES …
#define FF_S302M_DEFAULT_PTS_INCREMENT …
#define FF_S302M_DEFAULT_PTS_OFFSET …
#define PI …
static const u8 reverse[256] = …;
struct tone_duration { … };
#define COMPASS …
static const struct tone_duration beethoven_fur_elise[] = …;
static struct vidtv_access_unit *vidtv_s302m_access_unit_init(struct vidtv_access_unit *head)
{ … }
static void vidtv_s302m_access_unit_destroy(struct vidtv_encoder *e)
{ … }
static void vidtv_s302m_alloc_au(struct vidtv_encoder *e)
{ … }
static void
vidtv_s302m_compute_sample_count_from_video(struct vidtv_encoder *e)
{ … }
static void vidtv_s302m_compute_pts_from_video(struct vidtv_encoder *e)
{ … }
static u16 vidtv_s302m_get_sample(struct vidtv_encoder *e)
{ … }
static u32 vidtv_s302m_write_frame(struct vidtv_encoder *e,
u16 sample)
{ … }
static u32 vidtv_s302m_write_h(struct vidtv_encoder *e, u32 p_sz)
{ … }
static void vidtv_s302m_write_frames(struct vidtv_encoder *e)
{ … }
static void *vidtv_s302m_encode(struct vidtv_encoder *e)
{ … }
static u32 vidtv_s302m_clear(struct vidtv_encoder *e)
{ … }
struct vidtv_encoder
*vidtv_s302m_encoder_init(struct vidtv_s302m_encoder_init_args args)
{ … }
void vidtv_s302m_encoder_destroy(struct vidtv_encoder *e)
{ … }