I am using the av_find_streaminfo to find the stream properties and then create frames. But since the call fails we are unable to proceed further. We do not have an option to directly decode the frames using libfaad. Is there something else we can do by just using the ffmpeg api and not using the libfaad?

How was that file created? It is clearly invalid, it claims the audio is coded as two channels, but there is only one (+ parametric stereo, so it looks like two, but still only one is encoded).
The below patch proves that by fixing playback (but of course will break any non-mono AAC file)