--- /dev/null
+/*
+ * Copyright (C) 2019 Michael Zucchi
+ *
+ * This file is part of jjmpeg <https://www.zedzone.space/software/jjmpeg.html>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package au.notzed.jjmpeg;
+
+import java.nio.ByteBuffer;
+
+/**
+ *
+ */
+public class AVFrameSideData extends AVObject {
+
+ private AVFrameSideData(long p) {
+ super(p);
+ }
+
+ private static void release(long p) {
+ }
+
+ public native int getType();
+
+ public native ByteBuffer getData();
+
+}
--- /dev/null
+/*
+ * Copyright (C) 2019 Michael Zucchi
+ *
+ * This file is part of jjmpeg <https://www.zedzone.space/software/jjmpeg.html>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package au.notzed.jjmpeg;
+
+/**
+ */
+public class AVFrameSideDataType implements AVFrameSideDataTypeBits {
+
+ static {
+ AVObject.init();
+ }
+
+ /**
+ * Call av_frame_side_data_name
+ */
+ public static native String toString(int value);
+}
--- /dev/null
+/*
+ * Copyright (C) 2019 Michael Zucchi
+ *
+ * This file is part of jjmpeg <https://www.zedzone.space/software/jjmpeg.html>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include <stdint.h>
+
+#include <libavutil/frame.h>
+
+#include "au_notzed_jjmpeg_AVFrameSideData.h"
+
+#include "jjmpeg.h"
+//#include "jj-avframesidedata.h"
+
+//jint AVFrameSideData_OnLoad(JavaVM *vmi, JNIEnv *env) {
+// return nativez_ResolveReferences(env, java_names, &java);
+//}
+
+/* ********************************************************************** */
+/* Fields */
+
+GET_prim(jint, AVFrameSideData, Type, type)
+
+/*
+GET_prim(jint, AVStream, Index, index)
+GS_int(AVStream, ID, id)
+
+GS_value(AVRational_new, AVRational_get, AVStream, TimeBase, time_base)
+
+GS_long(AVStream, StartTime, start_time)
+GS_long(AVStream, Duration, duration)
+GS_long(AVStream, NumFrames, nb_frames)
+
+GS_int(AVStream, Discard, discard)
+
+GS_value(AVRational_new, AVRational_get, AVStream, AverageFrameRate, avg_frame_rate)
+GS_value(AVRational_new, AVRational_get, AVStream, SampleAspectRatio, sample_aspect_ratio)
+GS_value(AVRational_new, AVRational_get, AVStream, DisplayAspectRatio, display_aspect_ratio)
+
+REF_object(AVCodecParameters, AVStream, CodecParameters, codecpar)
+*/
+
+JNIEXPORT jobject JNICALL Java_au_notzed_jjmpeg_AVFrameSideData_getData
+(JNIEnv *env, jobject jsd) {
+ AVFrameSideData *sd = NativeZ_getP(env, jsd);
+
+ if (sd->data)
+ return nativez_NewDirectBuffer(env, sd->data, sd->size);
+
+ return NULL;
+}