This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM365 H.264 decode on PC

hello

i want to decode the h.264 stream on my computer(windows XP) using ffdshow or coreavc, but can't.  the screen is black.

i try to change the Application Parameter in VIDENC1_Params &VIDENC1_DynamicParams(i only change the base parameter, who can tell me how to change the extend parameter? THX), but the problem always existed.

so who can tell me the type of H.264 encode from dm365(e.g. using the default  parameter)? and how to solve this problem?

 

  • I have written an app for the DM365 that streams H.264 using RTP for the video data and RTSP to request stream information.  The stream can be played by VideoLan client.  You need to download the RFCs for RTSP and RTP.  The handling of the SPS/PPS for RTSP and the modification of the NAL units in the stream for RTP is a bit technical, but the info is in the documents.

    I did not find it necessary to use the extended parameters.

    John A.

  • thanks for your reply  : )

    well, in this project we have written a program to display the video captured  from dm365, so i can not use VLC to decode.

    i find a problem when run the encode demo! when i run the encode demo using the default parameters, i can get a h.264 file, but when i decode this file using MPlayer, well, black screen!!!  and the output info shows as follow:

    ID_DEMUXER=h264es
    ID_VIDEO_FORMAT=0x10000005
    ID_VIDEO_BITRATE=0
    ID_VIDEO_WIDTH=720
    ID_VIDEO_HEIGHT=576
    ID_VIDEO_FPS=0.000
    ID_VIDEO_ASPECT=0.0000
    ID_START_TIME=0.00
    ID_LENGTH=0.00
    ID_SEEKABLE=1
    ID_CHAPTERS=0
    [gl] using extended formats. Use -vo gl:nomanyfmts if playback fails.
    Opening video filter: [screenshot]
    ==========================================================================
    Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
    Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264)
    ==========================================================================
    ID_VIDEO_CODEC=ffh264
    Audio: no sound
    Starting playback...
    [h264 @ 01111bd4]no frame!
    Error while decoding frame!
    Error while decoding frame!
    [h264 @ 01111bd4]no frame!
    Error while decoding frame!
    [h264 @ 01111bd4]non-existing PPS 0 referenced
    [h264 @ 01111bd4]non-existing PPS 0 referenced
    [h264 @ 01111bd4]decode_slice_header error
    [h264 @ 01111bd4]no frame!
    Error while decoding frame!
    Error while decoding frame!
    [h264 @ 01111bd4]non-existing PPS 0 referenced
    [h264 @ 01111bd4]non-existing PPS 0 referenced
    [h264 @ 01111bd4]decode_slice_header error

     

    as the blue text shows, the decoder can't find the FPS, no frame and no-existing PPS!!!

    so what is PPS, what can i do to insert the PPS?

    thx

  • Answered here

    Use "mplayer -fps 24 input.264"

    Regards,
    Chaitanya

     

  •  Hi John, may I ask you which RTP RTSP server implementation did you ported on the DM365?

    Thank you,

    mario

  • I wrote it myself.  I originally implemented MPEG-4 streaming with a 70Mhz Arm and a dedicated MPEG-4 encoder (not TI) for another product.  It used RTSP as well.  My implementation is pretty simple.  It currently only supports a single stream, which is normally multicast to support multiple viewers.  So the RTSP only supplies the information to access an already existing stream.  In other words, it doesn't create a new strem for each RTSP request.

    I probably grabbed some open source  code to use as a basic reference when I first implemented this.  Been so long I don't remember.

    John A

  • Congratulations John, great job. Thank you for the answer.