-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Various fixes #4
Conversation
…utput buffer after usage Reference count handling is done by the base class, but we need to unmap buffers after we're done with using them if we mapped them ourselves. Fixes memory leaks.
Otherwise we'll get a NULL buffer at EOS, which we can't handle and do not have to handle anyway as we don't queue up any input data between handle_frame() calls.
This happens regularly via RTP and as such should be supported here.
Still cannot decode raw g729 with these patches. gst-launch-1.0 filesrc location=./eng_f7.wav ! wavparse ! g729enc ! g729dec ! audioresample ! pulsesink This also works (the resulting gst-launch-1.0 filesrc location=./eng_f7.wav ! wavparse ! g729enc ! filesink location=./test.g729 But this one doesn't work for me: gst-launch-1.0 filesrc location=./test.g729 ! "audio/G729,rate=(int)8000,channels=(int)1" ! g729dec ! filesink location=./test.raw Maybe I'm missing something? |
You can't decode raw g729, that's correct. It needs to be properly packetized, e.g. from RTP or some other container format (not WAV). A parser would be needed otherwise first, but that doesn't exist currently. |
Ah got that. |
Not without writing code for that, and as you can see from the code here the G729 packets can be different sizes than 10 so you'd need to write a proper parser instead of just chunking into 10 byte packets. Where did you get unframed G729 packets from? |
See the individual commits for details