RTSP server pipeline for AAC?

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

RTSP server pipeline for AAC?

noscgag
I have been trying to figure out a pipeline for AAC audio for the GStreamer RTSP server but have so far been unsuccessful. Using the test-launch tool I have successfully created pipelines for both speex and Vorbis, but not AAC.

The speex and Vorbis pipelines that work for me are:

test-launch "( audiotestsrc ! speexenc ! rtpspeexpay name=pay0 )"
test-launch "( audiotestsrc ! vorbisenc quality=0.5 ! rtpvorbispay name=pay0 pt=97 )"

These both play fine with "gst-launch-1.0 playbin uri=rtsp://127.0.0.1:8554/test"

The AAC pipelines I've tried are:

test-launch "( audiotestsrc ! avenc_aac ! rtpmp4apay name=pay0 )"
test-launch "( audiotestsrc ! avenc_aac ! rtpmp4gpay name=pay0 )"

When trying to play with the "rtpmp4apay" payloader playbin doesn't complain, but no sound comes out. When I use the "rtpmp4gpay" payloader playbin says:

ERROR: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source: Could not read from resource.
Additional debug info:
gstrtspsrc.c(5610): gst_rtspsrc_send (): /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source:
Got error response: 503 (Service Unavailable).
ERROR: pipeline doesn't want to preroll.

I have searched the Internet and this forum but have not found someone else who has posted a solution to this particular problem.
Reply | Threaded
Open this post in threaded view
|

Re: RTSP server pipeline for AAC?

Arjen Veenhuizen
Try to put an aacparse element between encoder and payloader.
Reply | Threaded
Open this post in threaded view
|

Re: RTSP server pipeline for AAC?

noscgag
Thanks for the response. I tried that with both payloaders. Trying to play the stream with the rtpmp4gpay payloader no longer results in the error message from before, but neither pipeline with aacparse results in any sound. The playbin pipeline for both eventually times out with the error message:

ERROR: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source: Could not read from resource.
Additional debug info:
gstrtspsrc.c(5448): gst_rtspsrc_try_send (): /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source:
Could not receive message. (Timeout while waiting for server response)
ERROR: pipeline doesn't want to preroll.