<div dir="ltr">I'm encoding audio data to .m4a files. I've got the usual container format setting using av_guess_format function:<div><pre style="background-color:rgb(43,43,43);color:rgb(169,183,198);font-family:"Droid Sans Mono";font-size:9.8pt"><span style="color:rgb(128,128,128)">/* Guess the desired container format based on the file extension */<br></span><span style="color:rgb(204,120,50)">if </span><span style="color:rgb(152,118,170);font-style:italic">(</span>!<span style="color:rgb(152,118,170);font-style:italic">((</span>*output_format_context<span style="color:rgb(152,118,170);font-style:italic">)</span>-><span style="color:rgb(147,115,165)">oformat </span>= av_guess_format<span style="color:rgb(152,118,170);font-style:italic">(</span><span style="color:rgb(106,135,89)">"m4a"</span><span style="color:rgb(204,120,50)">, </span>fileUrl<span style="color:rgb(204,120,50)">, </span><span style="color:rgb(106,135,89)">"audio/m4a"</span><span style="color:rgb(152,118,170);font-style:italic">))) {<br></span><span style="color:rgb(152,118,170);font-style:italic"><br></span><span style="color:rgb(152,118,170);font-style:italic">    </span>__android_log_print<span style="color:rgb(152,118,170);font-style:italic">(ANDROID_LOG_ERROR</span><span style="color:rgb(204,120,50)">, </span><span style="color:rgb(144,139,37)">FREQUENCY_ENGINE_TAG</span><span style="color:rgb(204,120,50)">,<br></span><span style="color:rgb(204,120,50)">                        </span><span style="color:rgb(106,135,89)">"Could not output file format!"</span><span style="color:rgb(152,118,170);font-style:italic">)</span><span style="color:rgb(204,120,50)">;<br></span><span style="color:rgb(204,120,50)">    goto </span>cleanup<span style="color:rgb(204,120,50)">;<br></span><span style="color:rgb(152,118,170);font-style:italic">}</span></pre><div>About 1/30 times this call will be null and I will get the error message you see. My question is, how do I resolve this? Again this happens 1/30 times so wondering what could be happening on that special time that it's not working? </div><div><br></div><div>Second question is, according to documentation, this function should work with any of the 3 arguments: </div><div><pre style="background-color:rgb(43,43,43);color:rgb(169,183,198);font-family:"Droid Sans Mono";font-size:9.8pt"><br><span style="color:rgb(128,128,128)">/**<br></span><span style="color:rgb(128,128,128)"> * Return the output format in the list of registered output formats<br></span><span style="color:rgb(128,128,128)"> * which best matches the provided parameters, or return NULL if<br></span><span style="color:rgb(128,128,128)"> * there is no match.<br></span><span style="color:rgb(128,128,128)"> *<br></span><span style="color:rgb(128,128,128)"> * @param short_name if non-NULL checks if short_name matches with the<br></span><span style="color:rgb(128,128,128)"> * names of the registered formats<br></span><span style="color:rgb(128,128,128)"> * @param filename if non-NULL checks if filename terminates with the<br></span><span style="color:rgb(128,128,128)"> * extensions of the registered formats<br></span><span style="color:rgb(128,128,128)"> * @param mime_type if non-NULL checks if mime_type matches with the<br></span><span style="color:rgb(128,128,128)"> * MIME type of the registered formats<br></span><span style="color:rgb(128,128,128)"> */<br></span><span style="color:rgb(144,139,37)">ff_const59 </span><span style="color:rgb(185,188,209)">AVOutputFormat </span>*<span style="color:rgb(255,198,109)">av_guess_format</span><span style="color:rgb(152,118,170);font-style:italic">(</span><span style="color:rgb(204,120,50)">const char </span>*short_name<span style="color:rgb(204,120,50)">,<br></span><span style="color:rgb(204,120,50)">                                const char </span>*filename<span style="color:rgb(204,120,50)">,<br></span><span style="color:rgb(204,120,50)">                                const char </span>*mime_type<span style="color:rgb(152,118,170);font-style:italic">)</span><span style="color:rgb(204,120,50)">;</span></pre><div>However, I'm seeing that it only works with the filename, as in when I keep the "m4a" and "audio/m4a" and set filename to NULL, it errors out. Is this expected? I was hoping that even when it NULLs like it does 1/30 times that maybe providing all 3 arguments would help. </div><div><br></div><div>Thanks!</div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div>Mariah Smith</div><div dir="ltr"><div><br></div></div></div></div></div></div></div></div></div></div></div>