c54cc0bf5b
After you call av_frame_alloc(), ffmpeg expects you to fill in certain fields on the frame, depending on whether it's an audio or video frame. obs-ffmpeg did this in the two places where it allocates video frames, but not where it allocates audio frames. On my system, using trunk ffmpeg and the Opus codec, this causes OBS to crash while calling avcodec_send_frame, ultimately because av_frame_copy fails due to 'dst->format < 0' (as 'format' stays at the default of -1), causing a null pointer to be added to a buffer queue, which later gets dereferenced. Oddly, the fields in question can just be copied directly from corresponding fields in the AVCodecContext, but I don't see any ffmpeg API to automatically copy all relevant fields, and all the examples I've seen do it by hand. So this patch does the same.