コード例 #1
0
 public bool TryDecode(ref AVPacket packet, out AVFrame* pFrame)
 {
     int gotPicture;
     fixed (AVPacket* pPacket = &packet)
     {
         int decodedSize = FFmpegInvoke.avcodec_decode_video2(codec_context, avFrame, &gotPicture, pPacket);
         if (decodedSize < 0) { Console.WriteLine("Error while decoding frame."); }
     }
     pFrame = avFrame;
     return gotPicture == 1;
 }
コード例 #2
0
ファイル: VideoDecoder.cs プロジェクト: Rutoka/AR.Drone
 public bool TryDecode(ref AVPacket packet, ref AVFrame frame)
 {
     int gotPicture;
     fixed (AVPacket* pPacket = &packet)
     fixed (AVFrame* pFrame = &frame)
     {
         int decodedSize = FFmpegInvoke.avcodec_decode_video2(_pDecodingContext, pFrame, &gotPicture, pPacket);
         if (decodedSize < 0)
             Trace.TraceWarning("Error while decoding frame.");
     }
     return gotPicture == 1;
 }
コード例 #3
0
ファイル: VideoDecoder.cs プロジェクト: robertohj/AR.Drone
 public bool TryDecode(ref byte[] data, out AVFrame frame)
 {
     int gotPicture;
     frame = new AVFrame();
     fixed (byte* pData = &data[0])
     fixed (AVFrame* pFrame = &frame)
     {
         var packet = new AVPacket {data = pData, size = data.Length};
         int decodedSize = FFmpegInvoke.avcodec_decode_video2(_pDecodingContext, pFrame, &gotPicture, &packet);
         if (decodedSize < 0)
             Trace.TraceWarning("Error while decoding frame.");
     }
     return gotPicture == 1;
 }
コード例 #4
0
 public static extern void av_pkt_dump2(void* f, AVPacket* pkt, int dump_payload, AVStream* st);
コード例 #5
0
 public static extern int av_read_frame(AVFormatContext* s, AVPacket* pkt);
コード例 #6
0
 public static extern int avcodec_encode_video2(AVCodecContext* avctx, AVPacket* avpkt, AVFrame* frame, int* got_packet_ptr);
コード例 #7
0
 public static extern int avcodec_decode_video2(AVCodecContext* avctx, AVFrame* picture, int* got_picture_ptr, AVPacket* avpkt);
コード例 #8
0
 public static extern int avcodec_decode_audio3(AVCodecContext* avctx, short* samples, int* frame_size_ptr, AVPacket* avpkt);
コード例 #9
0
 public static extern int av_packet_copy_props(AVPacket* dst, AVPacket* src);
コード例 #10
0
 public static extern int av_copy_packet_side_data(AVPacket* dst, AVPacket* src);
コード例 #11
0
 public static extern int av_dup_packet(AVPacket* pkt);
コード例 #12
0
 public static extern int av_packet_from_data(AVPacket* pkt, byte* data, int size);
コード例 #13
0
 public static extern int av_grow_packet(AVPacket* pkt, int grow_by);
コード例 #14
0
 public static extern void av_shrink_packet(AVPacket* pkt, int size);
コード例 #15
0
 public static extern int av_new_packet(AVPacket* pkt, int size);
コード例 #16
0
 public static extern void av_packet_unref(AVPacket* pkt);
コード例 #17
0
 public static extern void av_packet_move_ref(AVPacket* dst, AVPacket* src);
コード例 #18
0
 public static extern void av_free_packet(AVPacket* pkt);
コード例 #19
0
 public static extern void av_packet_rescale_ts(AVPacket* pkt, AVRational tb_src, AVRational tb_dst);
コード例 #20
0
 public static extern int av_packet_shrink_side_data(AVPacket* pkt, AVPacketSideDataType type, int size);
コード例 #21
0
 public static extern int avcodec_decode_audio4(AVCodecContext* avctx, AVFrame* frame, int* got_frame_ptr, AVPacket* avpkt);
コード例 #22
0
 public static extern byte* av_packet_get_side_data(AVPacket* pkt, AVPacketSideDataType type, int* size);
コード例 #23
0
 public static extern int avcodec_decode_subtitle2(AVCodecContext* avctx, AVSubtitle* sub, int* got_sub_ptr, AVPacket* avpkt);
コード例 #24
0
 public static extern int av_packet_merge_side_data(AVPacket* pkt);
コード例 #25
0
 public static extern int av_append_packet(AVIOContext* s, AVPacket* pkt, int size);
コード例 #26
0
 public static extern int av_packet_split_side_data(AVPacket* pkt);
コード例 #27
0
 public static extern int av_interleaved_write_frame(AVFormatContext* s, AVPacket* pkt);
コード例 #28
0
 public static extern void av_packet_free_side_data(AVPacket* pkt);
コード例 #29
0
 public static extern void av_pkt_dump_log2(void* avcl, int level, AVPacket* pkt, int dump_payload, AVStream* st);
コード例 #30
0
 public static extern int av_packet_ref(AVPacket* dst, AVPacket* src);