LeopardBoard 368 1080p support

From RidgeRun Developer Connection

Jump to:navigation, search

Contents

Introduction

One of the great features of the DM368 processor is support for HD 1080P video resolution. As I was working on getting GStreamer configured with 1080P support, I thought I would takes notes on the issues I ran into and how I resolved them. This wiki page is a work in progress of that effort.

You need to be using a DM368 with the DM368 DVSDK as the DM365 doesn't support 1080p.

Hardware

I am using a leo368 with MT9P031 CMOS sensor and TFP410 digital transmitter

SDK

I am using RidgeRun's 2011Q2 DM368 SDK with TI DVSDK 4.02.00.06 that includes H.264 Baseline/Main/High Profile Encoder on DM365/DM368 with support for resolutions up to 4096x4096.

Configuration

In order to use rr-rtsp-server demo, you need properly configure the SDK and add the GStreamer pipeline used by rr-rtsp-server.

720P Video Only

In order to use rr-rtsp-server demo, run make config and select:

-> User Applications  -> [*] RTSP Server example

-> Architecture configurations                     
 -> Component Standard(720P-60) 
 -> Maximum Video Output Buffer Size
          -> value: 720P
 -> Maximum Video Input Buffer Size
          -> value: 720P
-> Proprietary configurations                     
 (0x3b00000)Amount of Reserved memory from kernel
 (0x3200000)Amount of Reserved memory for cmemk

Add the GStreamer pipeline show below to the rr-rtsp-server.init file under $DEVDIR/myapps/rr-rtsp-server

/usr/bin/rr_rtsp_server  "( v4l2src always-copy=false chain-ipipe=false ! video/x-raw-yuv, format=(fourcc)NV12, width=1280, height=720 !  dmaiaccel ! queue ! dmaienc_h264 encodingpreset=2 ratecontrol=4 ! queue ! rtph264pay pt=96 name=pay0 )" &

720P Video + Audio

Use the same SDK configuration for 720P video only.

Add the below gstreamer pipeline in the rr-rtsp-server.init file under $DEVDIR/myapps/rr-rtsp-server

/usr/bin/rr_rtsp_server  "( v4l2src always-copy=false chain-ipipe=false ! video/x-raw-yuv, format=(fourcc)NV12, width=1280, height=720 ! dmaiaccel ! queue ! dmaienc_h264 encodingpreset=2 ratecontrol=4 ! queue ! rtph264pay pt=96 name=pay0 alsasrc buffer-time=800000  latency-time=30000 ! audio/x-raw-int, rate=22050 ! queue ! dmaienc_aac outputBufferSize=131072 bitrate=128000 ! queue ! rtpmp4gpay name=pay1 )" &

1080P Video Only

In order to use rr-rtsp-server demo, run make config and select:

-> User Applications  -> [*] RTSP Server example
-> Architecture configurations                     
 -> Component Standard(720P-60) 
 -> Maximum Video Output Buffer Size
          -> value: 720P
 -> Maximum Video Input Buffer Size
          -> value: 1080P
-> Proprietary configurations                     
 (0x3200000)Amount of Reserved memory from kernel
 (0x1E00000)Amount of Reserved memory for cmemk

Add the below gstreamer pipeline in the rr-rtsp-server.init file under $DEVDIR/myapps/rr-rtsp-server

/usr/bin/rr_rtsp_server "( v4l2src always-copy=false chain-ipipe=false ! video/x-raw-yuv,format=(fourcc)NV12, width=1920, height=1088 ! dmaiaccel ! queue ! dmaienc_h264 encodingpreset=2 ratecontrol=4 ! queue ! rtph264pay pt=96 name=pay0 )" &

Viewing streaming video using a web browser

For Testing above pipelines using the browsers (IE or Chrome ) Embedded Server(lighttpd) should be configured in the leopardboard side, and RTSP video streaming should be invoked by creating Embedded Server WebPages. (It needs an application framework to be developed)

Navigation
Toolbox