diff --git a/gst-libs/gst/codecparsers/gsth264parser.h b/gst-libs/gst/codecparsers/gsth264parser.h index e954bc0495..54270ef0b5 100644 --- a/gst-libs/gst/codecparsers/gsth264parser.h +++ b/gst-libs/gst/codecparsers/gsth264parser.h @@ -1024,65 +1024,87 @@ struct _GstH264NalParser GstH264PPS *last_pps; }; +GST_EXPORT GstH264NalParser *gst_h264_nal_parser_new (void); +GST_EXPORT GstH264ParserResult gst_h264_parser_identify_nalu (GstH264NalParser *nalparser, const guint8 *data, guint offset, gsize size, GstH264NalUnit *nalu); +GST_EXPORT GstH264ParserResult gst_h264_parser_identify_nalu_unchecked (GstH264NalParser *nalparser, const guint8 *data, guint offset, gsize size, GstH264NalUnit *nalu); +GST_EXPORT GstH264ParserResult gst_h264_parser_identify_nalu_avc (GstH264NalParser *nalparser, const guint8 *data, guint offset, gsize size, guint8 nal_length_size, GstH264NalUnit *nalu); +GST_EXPORT GstH264ParserResult gst_h264_parser_parse_nal (GstH264NalParser *nalparser, GstH264NalUnit *nalu); +GST_EXPORT GstH264ParserResult gst_h264_parser_parse_slice_hdr (GstH264NalParser *nalparser, GstH264NalUnit *nalu, GstH264SliceHdr *slice, gboolean parse_pred_weight_table, gboolean parse_dec_ref_pic_marking); +GST_EXPORT GstH264ParserResult gst_h264_parser_parse_subset_sps (GstH264NalParser *nalparser, GstH264NalUnit *nalu, GstH264SPS *sps, gboolean parse_vui_params); +GST_EXPORT GstH264ParserResult gst_h264_parser_parse_sps (GstH264NalParser *nalparser, GstH264NalUnit *nalu, GstH264SPS *sps, gboolean parse_vui_params); +GST_EXPORT GstH264ParserResult gst_h264_parser_parse_pps (GstH264NalParser *nalparser, GstH264NalUnit *nalu, GstH264PPS *pps); +GST_EXPORT GstH264ParserResult gst_h264_parser_parse_sei (GstH264NalParser *nalparser, GstH264NalUnit *nalu, GArray ** messages); +GST_EXPORT void gst_h264_nal_parser_free (GstH264NalParser *nalparser); +GST_EXPORT GstH264ParserResult gst_h264_parse_subset_sps (GstH264NalUnit *nalu, GstH264SPS *sps, gboolean parse_vui_params); +GST_EXPORT GstH264ParserResult gst_h264_parse_sps (GstH264NalUnit *nalu, GstH264SPS *sps, gboolean parse_vui_params); +GST_EXPORT GstH264ParserResult gst_h264_parse_pps (GstH264NalParser *nalparser, GstH264NalUnit *nalu, GstH264PPS *pps); +GST_EXPORT void gst_h264_sps_clear (GstH264SPS *sps); + +GST_EXPORT void gst_h264_pps_clear (GstH264PPS *pps); +GST_EXPORT void gst_h264_quant_matrix_8x8_get_zigzag_from_raster (guint8 out_quant[64], const guint8 quant[64]); +GST_EXPORT void gst_h264_quant_matrix_8x8_get_raster_from_zigzag (guint8 out_quant[64], const guint8 quant[64]); +GST_EXPORT void gst_h264_quant_matrix_4x4_get_zigzag_from_raster (guint8 out_quant[16], const guint8 quant[16]); +GST_EXPORT void gst_h264_quant_matrix_4x4_get_raster_from_zigzag (guint8 out_quant[16], const guint8 quant[16]); +GST_EXPORT void gst_h264_video_calculate_framerate (const GstH264SPS * sps, guint field_pic_flag, guint pic_struct, gint * fps_num, gint * fps_den); diff --git a/gst-libs/gst/codecparsers/gsth265parser.h b/gst-libs/gst/codecparsers/gsth265parser.h index 4ec91fa65f..21d6551142 100644 --- a/gst-libs/gst/codecparsers/gsth265parser.h +++ b/gst-libs/gst/codecparsers/gsth265parser.h @@ -997,20 +997,24 @@ struct _GstH265Parser GstH265PPS *last_pps; }; +GST_EXPORT GstH265Parser * gst_h265_parser_new (void); +GST_EXPORT GstH265ParserResult gst_h265_parser_identify_nalu (GstH265Parser * parser, const guint8 * data, guint offset, gsize size, GstH265NalUnit * nalu); +GST_EXPORT GstH265ParserResult gst_h265_parser_identify_nalu_unchecked (GstH265Parser * parser, const guint8 * data, guint offset, gsize size, GstH265NalUnit * nalu); +GST_EXPORT GstH265ParserResult gst_h265_parser_identify_nalu_hevc (GstH265Parser * parser, const guint8 * data, guint offset, @@ -1018,63 +1022,81 @@ GstH265ParserResult gst_h265_parser_identify_nalu_hevc (GstH265Parser * parser, guint8 nal_length_size, GstH265NalUnit * nalu); +GST_EXPORT GstH265ParserResult gst_h265_parser_parse_nal (GstH265Parser * parser, GstH265NalUnit * nalu); +GST_EXPORT GstH265ParserResult gst_h265_parser_parse_slice_hdr (GstH265Parser * parser, GstH265NalUnit * nalu, GstH265SliceHdr * slice); +GST_EXPORT GstH265ParserResult gst_h265_parser_parse_vps (GstH265Parser * parser, GstH265NalUnit * nalu, GstH265VPS * vps); +GST_EXPORT GstH265ParserResult gst_h265_parser_parse_sps (GstH265Parser * parser, GstH265NalUnit * nalu, GstH265SPS * sps, gboolean parse_vui_params); +GST_EXPORT GstH265ParserResult gst_h265_parser_parse_pps (GstH265Parser * parser, GstH265NalUnit * nalu, GstH265PPS * pps); +GST_EXPORT GstH265ParserResult gst_h265_parser_parse_sei (GstH265Parser * parser, GstH265NalUnit * nalu, GArray **messages); +GST_EXPORT void gst_h265_parser_free (GstH265Parser * parser); +GST_EXPORT GstH265ParserResult gst_h265_parse_vps (GstH265NalUnit * nalu, GstH265VPS * vps); +GST_EXPORT GstH265ParserResult gst_h265_parse_sps (GstH265Parser * parser, GstH265NalUnit * nalu, GstH265SPS * sps, gboolean parse_vui_params); +GST_EXPORT GstH265ParserResult gst_h265_parse_pps (GstH265Parser * parser, GstH265NalUnit * nalu, GstH265PPS * pps); +GST_EXPORT gboolean gst_h265_slice_hdr_copy (GstH265SliceHdr * dst_slice, const GstH265SliceHdr * src_slice); +GST_EXPORT void gst_h265_slice_hdr_free (GstH265SliceHdr * slice_hdr); +GST_EXPORT gboolean gst_h265_sei_copy (GstH265SEIMessage * dest_sei, const GstH265SEIMessage * src_sei); +GST_EXPORT void gst_h265_sei_free (GstH265SEIMessage * sei); +GST_EXPORT void gst_h265_quant_matrix_4x4_get_zigzag_from_raster (guint8 out_quant[16], const guint8 quant[16]); +GST_EXPORT void gst_h265_quant_matrix_4x4_get_raster_from_zigzag (guint8 out_quant[16], const guint8 quant[16]); +GST_EXPORT void gst_h265_quant_matrix_8x8_get_zigzag_from_raster (guint8 out_quant[64], const guint8 quant[64]); +GST_EXPORT void gst_h265_quant_matrix_8x8_get_raster_from_zigzag (guint8 out_quant[64], const guint8 quant[64]); @@ -1087,15 +1109,19 @@ void gst_h265_quant_matrix_8x8_get_raster_from_zigzag (guint8 out_quant[64], #define gst_h265_quant_matrix_32x32_get_raster_from_zigzag \ gst_h265_quant_matrix_8x8_get_raster_from_zigzag +GST_EXPORT void gst_h265_quant_matrix_4x4_get_uprightdiagonal_from_raster (guint8 out_quant[16], const guint8 quant[16]); +GST_EXPORT void gst_h265_quant_matrix_4x4_get_raster_from_uprightdiagonal (guint8 out_quant[16], const guint8 quant[16]); +GST_EXPORT void gst_h265_quant_matrix_8x8_get_uprightdiagonal_from_raster (guint8 out_quant[64], const guint8 quant[64]); +GST_EXPORT void gst_h265_quant_matrix_8x8_get_raster_from_uprightdiagonal (guint8 out_quant[64], const guint8 quant[64]); diff --git a/gst-libs/gst/codecparsers/gstjpeg2000sampling.h b/gst-libs/gst/codecparsers/gstjpeg2000sampling.h index fb6a0aa584..cc91fdba30 100644 --- a/gst-libs/gst/codecparsers/gstjpeg2000sampling.h +++ b/gst-libs/gst/codecparsers/gstjpeg2000sampling.h @@ -58,11 +58,20 @@ typedef enum /* GST_JPEG2000_SAMPLING_LIST: sampling strings in list form, for use in caps */ #define GST_JPEG2000_SAMPLING_LIST "sampling = (string) {\"RGB\", \"BGR\", \"RGBA\", \"BGRA\", \"YCbCr-4:4:4\", \"YCbCr-4:2:2\", \"YCbCr-4:2:0\", \"YCbCr-4:1:1\", \"GRAYSCALE\" , \"YCbCrA-4:4:4:4\"}" +GST_EXPORT const gchar *gst_jpeg2000_sampling_to_string (GstJPEG2000Sampling sampling); + +GST_EXPORT GstJPEG2000Sampling gst_jpeg2000_sampling_from_string (const gchar * sampling_string); + +GST_EXPORT gboolean gst_jpeg2000_sampling_is_rgb (GstJPEG2000Sampling sampling); + +GST_EXPORT gboolean gst_jpeg2000_sampling_is_yuv (GstJPEG2000Sampling sampling); + +GST_EXPORT gboolean gst_jpeg2000_sampling_is_mono (GstJPEG2000Sampling sampling); @@ -81,8 +90,11 @@ typedef enum GST_JPEG2000_COLORSPACE_GRAY } GstJPEG2000Colorspace; +GST_EXPORT const gchar *gst_jpeg2000_colorspace_to_string (GstJPEG2000Colorspace colorspace); + +GST_EXPORT GstJPEG2000Colorspace gst_jpeg2000_colorspace_from_string (const gchar * colorspace_string); diff --git a/gst-libs/gst/codecparsers/gstjpegparser.h b/gst-libs/gst/codecparsers/gstjpegparser.h index 98db436186..ce32aa3122 100644 --- a/gst-libs/gst/codecparsers/gstjpegparser.h +++ b/gst-libs/gst/codecparsers/gstjpegparser.h @@ -374,28 +374,36 @@ struct _GstJpegSegment gssize size; }; +GST_EXPORT gboolean gst_jpeg_parse (GstJpegSegment * seg, const guint8 * data, gsize size, guint offset); +GST_EXPORT gboolean gst_jpeg_segment_parse_frame_header (const GstJpegSegment * segment, GstJpegFrameHdr * frame_hdr); +GST_EXPORT gboolean gst_jpeg_segment_parse_scan_header (const GstJpegSegment * segment, GstJpegScanHdr * scan_hdr); +GST_EXPORT gboolean gst_jpeg_segment_parse_huffman_table (const GstJpegSegment * segment, GstJpegHuffmanTables * huff_tables); +GST_EXPORT gboolean gst_jpeg_segment_parse_restart_interval (const GstJpegSegment * segment, guint * interval); +GST_EXPORT gboolean gst_jpeg_segment_parse_quantization_table (const GstJpegSegment * segment, GstJpegQuantTables * quant_tables); +GST_EXPORT void gst_jpeg_get_default_quantization_tables (GstJpegQuantTables * quant_tables); +GST_EXPORT void gst_jpeg_get_default_huffman_tables (GstJpegHuffmanTables * huff_tables); G_END_DECLS diff --git a/gst-libs/gst/codecparsers/gstmpeg4parser.h b/gst-libs/gst/codecparsers/gstmpeg4parser.h index c9030b8889..aa87d8ccb6 100644 --- a/gst-libs/gst/codecparsers/gstmpeg4parser.h +++ b/gst-libs/gst/codecparsers/gstmpeg4parser.h @@ -532,45 +532,48 @@ struct _GstMpeg4Packet GstMpeg4StartCode type; }; +GST_EXPORT GstMpeg4ParseResult gst_h263_parse (GstMpeg4Packet * packet, const guint8 * data, guint offset, gsize size); +GST_EXPORT GstMpeg4ParseResult gst_mpeg4_parse (GstMpeg4Packet * packet, gboolean skip_user_data, GstMpeg4VideoObjectPlane *vop, const guint8 * data, guint offset, gsize size); - +GST_EXPORT GstMpeg4ParseResult gst_mpeg4_parse_video_object_plane (GstMpeg4VideoObjectPlane *vop, GstMpeg4SpriteTrajectory *sprite_trajectory, GstMpeg4VideoObjectLayer *vol, const guint8 * data, gsize size); - +GST_EXPORT GstMpeg4ParseResult gst_mpeg4_parse_group_of_vop (GstMpeg4GroupOfVOP *gov, const guint8 * data, gsize size); - +GST_EXPORT GstMpeg4ParseResult gst_mpeg4_parse_video_object_layer (GstMpeg4VideoObjectLayer *vol, GstMpeg4VisualObject *vo, const guint8 * data, gsize size); - +GST_EXPORT GstMpeg4ParseResult gst_mpeg4_parse_visual_object (GstMpeg4VisualObject *vo, GstMpeg4VideoSignalType *signal_type, const guint8 * data, gsize size); - +GST_EXPORT GstMpeg4ParseResult gst_mpeg4_parse_visual_object_sequence (GstMpeg4VisualObjectSequence *vos, const guint8 * data, gsize size); +GST_EXPORT GstMpeg4ParseResult gst_mpeg4_parse_video_plane_short_header (GstMpeg4VideoPlaneShortHdr * shorthdr, const guint8 * data, gsize size); - +GST_EXPORT GstMpeg4ParseResult gst_mpeg4_parse_video_packet_header (GstMpeg4VideoPacketHdr * videopackethdr, GstMpeg4VideoObjectLayer * vol, diff --git a/gst-libs/gst/codecparsers/gstmpegvideometa.h b/gst-libs/gst/codecparsers/gstmpegvideometa.h index ddf5449a66..6b77d6f142 100644 --- a/gst-libs/gst/codecparsers/gstmpegvideometa.h +++ b/gst-libs/gst/codecparsers/gstmpegvideometa.h @@ -32,9 +32,11 @@ G_BEGIN_DECLS typedef struct _GstMpegVideoMeta GstMpegVideoMeta; +GST_EXPORT GType gst_mpeg_video_meta_api_get_type (void); #define GST_MPEG_VIDEO_META_API_TYPE (gst_mpeg_video_meta_api_get_type()) #define GST_MPEG_VIDEO_META_INFO (gst_mpeg_video_meta_get_info()) +GST_EXPORT const GstMetaInfo * gst_mpeg_video_meta_get_info (void); /** @@ -75,6 +77,7 @@ struct _GstMpegVideoMeta { #define gst_buffer_get_mpeg_video_meta(b) ((GstMpegVideoMeta*)gst_buffer_get_meta((b),GST_MPEG_VIDEO_META_API_TYPE)) +GST_EXPORT GstMpegVideoMeta * gst_buffer_add_mpeg_video_meta (GstBuffer * buffer, const GstMpegVideoSequenceHdr *seq_hdr, diff --git a/gst-libs/gst/codecparsers/gstmpegvideoparser.h b/gst-libs/gst/codecparsers/gstmpegvideoparser.h index 3989f0cf87..d44497c084 100644 --- a/gst-libs/gst/codecparsers/gstmpegvideoparser.h +++ b/gst-libs/gst/codecparsers/gstmpegvideoparser.h @@ -501,68 +501,89 @@ struct _GstMpegVideoPacket gint size; }; +GST_EXPORT gboolean gst_mpeg_video_parse (GstMpegVideoPacket * packet, const guint8 * data, gsize size, guint offset); +GST_EXPORT gboolean gst_mpeg_video_packet_parse_sequence_header (const GstMpegVideoPacket * packet, GstMpegVideoSequenceHdr * seqhdr); +GST_EXPORT gboolean gst_mpeg_video_packet_parse_sequence_extension (const GstMpegVideoPacket * packet, GstMpegVideoSequenceExt * seqext); +GST_EXPORT gboolean gst_mpeg_video_packet_parse_sequence_display_extension (const GstMpegVideoPacket * packet, GstMpegVideoSequenceDisplayExt * seqdisplayext); +GST_EXPORT gboolean gst_mpeg_video_packet_parse_sequence_scalable_extension (const GstMpegVideoPacket * packet, GstMpegVideoSequenceScalableExt * seqscaleext); +GST_EXPORT gboolean gst_mpeg_video_packet_parse_picture_header (const GstMpegVideoPacket * packet, GstMpegVideoPictureHdr* pichdr); +GST_EXPORT gboolean gst_mpeg_video_packet_parse_picture_extension (const GstMpegVideoPacket * packet, GstMpegVideoPictureExt *picext); +GST_EXPORT gboolean gst_mpeg_video_packet_parse_gop (const GstMpegVideoPacket * packet, GstMpegVideoGop * gop); +GST_EXPORT gboolean gst_mpeg_video_packet_parse_slice_header (const GstMpegVideoPacket * packet, GstMpegVideoSliceHdr * slice_hdr, GstMpegVideoSequenceHdr * seq_hdr, GstMpegVideoSequenceScalableExt * seqscaleext); +GST_EXPORT gboolean gst_mpeg_video_packet_parse_quant_matrix_extension (const GstMpegVideoPacket * packet, GstMpegVideoQuantMatrixExt * quant); /* seqext and displayext may be NULL if not received */ + +GST_EXPORT gboolean gst_mpeg_video_finalise_mpeg2_sequence_header (GstMpegVideoSequenceHdr *hdr, GstMpegVideoSequenceExt *seqext, GstMpegVideoSequenceDisplayExt *displayext); #ifndef GST_DISABLE_DEPRECATED +GST_EXPORT gboolean gst_mpeg_video_parse_picture_header (GstMpegVideoPictureHdr* hdr, const guint8 * data, gsize size, guint offset); +GST_EXPORT gboolean gst_mpeg_video_parse_picture_extension (GstMpegVideoPictureExt *ext, const guint8 * data, gsize size, guint offset); +GST_EXPORT gboolean gst_mpeg_video_parse_gop (GstMpegVideoGop * gop, const guint8 * data, gsize size, guint offset); +GST_EXPORT gboolean gst_mpeg_video_parse_sequence_header (GstMpegVideoSequenceHdr * seqhdr, const guint8 * data, gsize size, guint offset); +GST_EXPORT gboolean gst_mpeg_video_parse_sequence_extension (GstMpegVideoSequenceExt * seqext, const guint8 * data, gsize size, guint offset); +GST_EXPORT gboolean gst_mpeg_video_parse_sequence_display_extension (GstMpegVideoSequenceDisplayExt * seqdisplayext, const guint8 * data, gsize size, guint offset); +GST_EXPORT gboolean gst_mpeg_video_parse_quant_matrix_extension (GstMpegVideoQuantMatrixExt * quant, const guint8 * data, gsize size, guint offset); #endif +GST_EXPORT void gst_mpeg_video_quant_matrix_get_raster_from_zigzag (guint8 out_quant[64], const guint8 quant[64]); +GST_EXPORT void gst_mpeg_video_quant_matrix_get_zigzag_from_raster (guint8 out_quant[64], const guint8 quant[64]); diff --git a/gst-libs/gst/codecparsers/gstvc1parser.h b/gst-libs/gst/codecparsers/gstvc1parser.h index a73ff9d14c..e74f9a3593 100644 --- a/gst-libs/gst/codecparsers/gstvc1parser.h +++ b/gst-libs/gst/codecparsers/gstvc1parser.h @@ -576,65 +576,78 @@ struct _GstVC1BDU guint8 * data; }; +GST_EXPORT GstVC1ParserResult gst_vc1_identify_next_bdu (const guint8 *data, gsize size, GstVC1BDU *bdu); +GST_EXPORT GstVC1ParserResult gst_vc1_parse_sequence_header (const guint8 *data, gsize size, GstVC1SeqHdr * seqhdr); +GST_EXPORT GstVC1ParserResult gst_vc1_parse_entry_point_header (const guint8 *data, gsize size, GstVC1EntryPointHdr * entrypoint, GstVC1SeqHdr *seqhdr); +GST_EXPORT GstVC1ParserResult gst_vc1_parse_sequence_layer (const guint8 *data, gsize size, GstVC1SeqLayer * seqlayer); - +GST_EXPORT GstVC1ParserResult gst_vc1_parse_sequence_header_struct_a (const guint8 *data, gsize size, GstVC1SeqStructA *structa); +GST_EXPORT GstVC1ParserResult gst_vc1_parse_sequence_header_struct_b (const guint8 *data, gsize size, GstVC1SeqStructB *structb); - +GST_EXPORT GstVC1ParserResult gst_vc1_parse_sequence_header_struct_c (const guint8 *data, gsize size, GstVC1SeqStructC *structc); +GST_EXPORT GstVC1ParserResult gst_vc1_parse_frame_layer (const guint8 *data, gsize size, GstVC1FrameLayer * framelayer); +GST_EXPORT GstVC1ParserResult gst_vc1_parse_frame_header (const guint8 *data, gsize size, GstVC1FrameHdr * framehdr, GstVC1SeqHdr *seqhdr, GstVC1BitPlanes *bitplanes); +GST_EXPORT GstVC1ParserResult gst_vc1_parse_field_header (const guint8 *data, gsize size, GstVC1FrameHdr * fieldhdr, GstVC1SeqHdr *seqhdr, GstVC1BitPlanes *bitplanes); +GST_EXPORT GstVC1ParserResult gst_vc1_parse_slice_header (const guint8 *data, gsize size, GstVC1SliceHdr *slicehdr, GstVC1SeqHdr *seqhdr); +GST_EXPORT GstVC1BitPlanes * gst_vc1_bitplanes_new (void); +GST_EXPORT void gst_vc1_bitplanes_free (GstVC1BitPlanes *bitplanes); +GST_EXPORT void gst_vc1_bitplanes_free_1 (GstVC1BitPlanes *bitplanes); +GST_EXPORT gboolean gst_vc1_bitplanes_ensure_size (GstVC1BitPlanes *bitplanes, GstVC1SeqHdr *seqhdr); diff --git a/gst-libs/gst/codecparsers/gstvp8parser.h b/gst-libs/gst/codecparsers/gstvp8parser.h index 43dcd12c2b..279ea3854b 100644 --- a/gst-libs/gst/codecparsers/gstvp8parser.h +++ b/gst-libs/gst/codecparsers/gstvp8parser.h @@ -326,12 +326,14 @@ struct _GstVp8Parser GstVp8ModeProbs mode_probs; }; -void -gst_vp8_parser_init (GstVp8Parser * parser); +GST_EXPORT +void gst_vp8_parser_init (GstVp8Parser * parser); -GstVp8ParserResult -gst_vp8_parser_parse_frame_header (GstVp8Parser * parser, - GstVp8FrameHdr * frame_hdr, const guint8 * data, gsize size); +GST_EXPORT +GstVp8ParserResult gst_vp8_parser_parse_frame_header (GstVp8Parser * parser, + GstVp8FrameHdr * frame_hdr, + const guint8 * data, + gsize size); G_END_DECLS diff --git a/gst-libs/gst/codecparsers/gstvp8rangedecoder.h b/gst-libs/gst/codecparsers/gstvp8rangedecoder.h index f659496795..35f28ec294 100644 --- a/gst-libs/gst/codecparsers/gstvp8rangedecoder.h +++ b/gst-libs/gst/codecparsers/gstvp8rangedecoder.h @@ -58,21 +58,22 @@ struct _GstVp8RangeDecoderState { guint8 count; }; -gboolean -gst_vp8_range_decoder_init (GstVp8RangeDecoder * rd, const guchar * buf, - guint buf_size); +GST_EXPORT +gboolean gst_vp8_range_decoder_init (GstVp8RangeDecoder * rd, + const guchar * buf, + guint buf_size); -gint -gst_vp8_range_decoder_read (GstVp8RangeDecoder * rd, guint8 prob); +GST_EXPORT +gint gst_vp8_range_decoder_read (GstVp8RangeDecoder * rd, guint8 prob); -gint -gst_vp8_range_decoder_read_literal (GstVp8RangeDecoder * rd, gint bits); +GST_EXPORT +gint gst_vp8_range_decoder_read_literal (GstVp8RangeDecoder * rd, gint bits); -guint -gst_vp8_range_decoder_get_pos (GstVp8RangeDecoder * rd); +GST_EXPORT +guint gst_vp8_range_decoder_get_pos (GstVp8RangeDecoder * rd); -void -gst_vp8_range_decoder_get_state (GstVp8RangeDecoder * rd, - GstVp8RangeDecoderState * state); +GST_EXPORT +void gst_vp8_range_decoder_get_state (GstVp8RangeDecoder * rd, + GstVp8RangeDecoderState * state); #endif /* GST_VP8_RANGE_DECODER_H */ diff --git a/gst-libs/gst/codecparsers/gstvp9parser.h b/gst-libs/gst/codecparsers/gstvp9parser.h index aaf30e5b0d..2130294cd5 100644 --- a/gst-libs/gst/codecparsers/gstvp9parser.h +++ b/gst-libs/gst/codecparsers/gstvp9parser.h @@ -482,10 +482,13 @@ struct _GstVp9Parser GstVp9Segmentation segmentation[GST_VP9_MAX_SEGMENTS]; }; +GST_EXPORT GstVp9Parser * gst_vp9_parser_new (void); +GST_EXPORT GstVp9ParserResult gst_vp9_parser_parse_frame_header (GstVp9Parser* parser, GstVp9FrameHdr * frame_hdr, const guint8 * data, gsize size); +GST_EXPORT void gst_vp9_parser_free (GstVp9Parser * parser); G_END_DECLS