<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><span style="color: rgb(90, 90, 90); font-family: arial; font-size: 13px; background-color: rgb(255, 255, 255);" class="">Hi, there is a possible SIMPLE example that do a SIMPLE transcode from</span><div class=""><span style="color: rgb(90, 90, 90); font-family: arial; font-size: 13px; background-color: rgb(255, 255, 255);" class="">h264/mlaw to mpeg4/aac?</span></div><div class=""><br class=""></div><div class=""><span style="color: rgb(90, 90, 90); font-family: arial; font-size: 13px; background-color: rgb(255, 255, 255);" class="">I still have not yet found one that works (ffmpeg/transcode.c not work)</span></div><div class=""><span style="color: rgb(90, 90, 90); font-family: arial; font-size: 13px; background-color: rgb(255, 255, 255);" class=""><br class=""></span></div><div class=""><span style="color: rgb(90, 90, 90); font-family: arial; font-size: 13px; background-color: rgb(255, 255, 255);" class="">I post my code: there is a problem on </span><span style="color: rgb(49, 89, 93); font-family: Menlo; font-size: 11px;" class="">avcodec_encode_audio2 </span></div><div class=""><span style="color: rgb(49, 89, 93); font-family: Menlo; font-size: 11px;" class="">-22 Invalid Argument (</span><b style="font-family: Menlo; font-size: 11px;" class="">Input contains NaN)</b></div><div class=""><b style="font-family: Menlo; font-size: 11px;" class=""><br class=""></b></div><div class=""><span style="background-color: rgb(255, 255, 255);" class=""><font color="#5a5a5a" face="arial" size="2" class="">I want to make code very simple, so I don’t want to use fifo_queue and more,</font></span></div><div class=""><span style="background-color: rgb(255, 255, 255);" class=""><font color="#5a5a5a" face="arial" size="2" class="">because the video type is only in one format (webcam)</font></span></div><div class=""><b style="font-family: Menlo; font-size: 11px;" class=""><br class=""></b></div><div class=""><b style="font-family: Menlo; font-size: 11px;" class="">Dump is correct:</b></div><div class=""><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><b class="">Input #0, avi, from '/Users/Shinnok/Library/Developer/Xcode/DerivedData/RainBlack-bamexxbsnwvvoqfegnzeexphynmr/Build/Products/Debug/camera.avi':</b></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><b class=""> Duration: 00:00:11.60, start: 0.000000, bitrate: N/A</b></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><b class=""> Stream #0:0: Video: h264 (Baseline) (h264 / 0x34363268), yuv420p(tv), 1280x720, 1003 kb/s, 15 fps, 15 tbr, 15 tbn, 30 tbc</b></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><b class=""> Stream #0:1: Audio: pcm_mulaw ([7][0][0][0] / 0x0007), 8000 Hz, 1 channels, s16, 64 kb/s</b></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><b class="">Output #0, mp4, to '/Users/Shinnok/Library/Developer/Xcode/DerivedData/RainBlack-bamexxbsnwvvoqfegnzeexphynmr/Build/Products/Debug/output.mp4':</b></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><b class=""> Metadata:</b></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><b class=""> encoder : Lavf56.25.101</b></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><b class=""> Stream #0:0: Video: mpeg4 ( [0][0][0] / 0x0020), yuv420p, 1280x720, q=2-31, 1200 kb/s, 15360 tbn, 15 tbc</b></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><b class=""> Stream #0:1: Audio: aac ([64][0][0][0] / 0x0040), 8000 Hz, mono, fltp, 16 kb/s</b></div></div><div class=""><b style="font-family: Menlo; font-size: 11px;" class=""><br class=""></b></div><div class=""><span style="background-color: rgb(255, 255, 255);" class=""><font color="#5a5a5a" face="arial" size="2" class="">(It’s in Objc)</font></span></div><div class=""><span style="background-color: rgb(255, 255, 255);" class=""><font color="#5a5a5a" face="arial" size="2" class="">Thanks,</font></span></div><div class=""><span style="background-color: rgb(255, 255, 255);" class=""><font color="#5a5a5a" face="arial" size="2" class="">Gabriele</font></span></div><div class=""><span style="background-color: rgb(255, 255, 255);" class=""><font color="#5a5a5a" face="arial" size="2" class=""><br class=""></font></span></div><div class=""><b style="font-family: Menlo; font-size: 11px;" class=""><br class=""></b></div><div class=""><b style="font-family: Menlo; font-size: 11px;" class=""><br class=""></b></div><div class=""><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(187, 44, 162);" class="">__block<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> </span>struct<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">AVFormatContext</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> *inputCtx = </span>NULL<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">;</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">__block</span> <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">struct</span> <span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">AVFormatContext</span> *outputCtx = <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">NULL</span>;</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">__block</span> <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">int</span> ret = <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span>;</div><p style="margin: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><br class="webkit-block-placeholder"></p><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">__block</span> <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">void</span> (^mainProcess)() = ^{</div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(187, 44, 162);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span>__block<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> </span>struct<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">AVPacket</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> packet;</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(187, 44, 162);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span>__block<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> </span>struct<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">AVFrame</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> *frame;</span></div><p style="margin: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><br class="webkit-block-placeholder"></p><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(187, 44, 162);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span>while<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> (</span>true<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">) {</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;" class=""><br class=""></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">if</span> ((ret = <span style="font-variant-ligatures: no-common-ligatures; color: #31595d" class="">av_read_frame</span>(inputCtx, &packet)) < <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span>) {</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">break</span>;</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>}</div><div style="margin: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;" class=""><br class=""></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>frame = <span style="font-variant-ligatures: no-common-ligatures; color: #31595d" class="">av_frame_alloc</span>();</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">unsigned</span> <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">int</span> streamIdx = packet.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">stream_index</span>;</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">int</span> got_packet = <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span>;</div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(49, 89, 93);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span>av_packet_rescale_ts<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(&packet,</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span> inputCtx-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">streams</span>[streamIdx]-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">time_base</span>,</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span> inputCtx-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">streams</span>[streamIdx]-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">codec</span>-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">time_base</span>);</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">enum</span> <span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">AVMediaType</span> type = inputCtx-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">streams</span>[streamIdx]-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">codec</span>-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">codec_type</span>;</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">int</span> len = <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span>;</div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(49, 89, 93);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">if</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> (type == </span>AVMEDIA_TYPE_VIDEO<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">) {</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span><span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">NSLog</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(</span>@"Decoded video"<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">);</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>len = <span style="font-variant-ligatures: no-common-ligatures; color: #31595d" class="">avcodec_decode_video2</span>(inputCtx-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">streams</span>[streamIdx]-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">codec</span>, frame, &got_packet, &packet);</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>} <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">else</span> <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">if</span> (type == <span style="font-variant-ligatures: no-common-ligatures; color: #31595d" class="">AVMEDIA_TYPE_AUDIO</span>) {</div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span><span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">NSLog</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(</span>@"Decoded audio"<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">);</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>len = <span style="font-variant-ligatures: no-common-ligatures; color: #31595d" class="">avcodec_decode_audio4</span>(inputCtx-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">streams</span>[streamIdx]-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">codec</span>, frame, &got_packet, &packet);</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>}</div><p style="margin: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><br class="webkit-block-placeholder"></p><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">if</span> (len < <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span>) {</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #31595d" class="">av_frame_free</span>(&frame);</div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span><span style="font-variant-ligatures: no-common-ligatures; color: #31595d" class="">av_log</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(</span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">NULL</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">, </span><span style="font-variant-ligatures: no-common-ligatures; color: #78492a" class="">AV_LOG_ERROR</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">, </span>"Decoding failed\n"<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">);</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">exit</span>(<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">1</span>);</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>}</div><p style="margin: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><br class="webkit-block-placeholder"></p><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">while</span> (got_packet) {</div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span><span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">NSLog</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(</span>@"Encoding..."<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">);</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">AVPacket</span> enc_pkt;</div><p style="margin: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><br class="webkit-block-placeholder"></p><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span>/* encode filtered frame */</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>enc_pkt.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">data</span> = <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">NULL</span>;</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>enc_pkt.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">size</span> = <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span>;</div><p style="margin: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><br class="webkit-block-placeholder"></p><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #31595d" class="">av_init_packet</span>(&enc_pkt);</div><p style="margin: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><br class="webkit-block-placeholder"></p><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(49, 89, 93);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">if</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> (type == </span>AVMEDIA_TYPE_VIDEO<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">) {</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span><span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">NSLog</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(</span>@"Encoding video"<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">);</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">if</span> ((ret = <span style="font-variant-ligatures: no-common-ligatures; color: #31595d" class="">avcodec_encode_video2</span>(outputCtx-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">streams</span>[streamIdx]-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">codec</span>, &enc_pkt, frame, &got_packet)) < <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span>) {</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #31595d" class="">av_frame_free</span>(&frame);</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">exit</span>(<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">1</span>);</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>}</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>} <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">else</span> {</div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span><span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">NSLog</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(</span>@"Encoding audio"<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">);</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(49, 89, 93);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>frame-></span><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">pts</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> = </span>av_frame_get_best_effort_timestamp<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(frame);</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">if</span> ((ret = <span style="font-variant-ligatures: no-common-ligatures; color: #31595d" class="">avcodec_encode_audio2</span>(outputCtx-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">streams</span>[streamIdx]-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">codec</span>, &enc_pkt, frame, &got_packet)) < <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span>) {</div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span><span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">NSLog</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(</span>@"avcodec_encode_audio2 %s"<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">, </span><span style="font-variant-ligatures: no-common-ligatures; color: #78492a" class="">av_err2str</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(ret));</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #31595d" class="">av_frame_free</span>(&frame);</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">exit</span>(<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">1</span>);</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>}</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>}</div><div style="margin: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;" class=""><br class=""></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">while</span> (got_packet) {</div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span><span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">NSLog</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(</span>@"Write packet"<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">);</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span>/* prepare packet for muxing */</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>enc_pkt.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">stream_index</span> = streamIdx;</div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(49, 89, 93);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span>av_packet_rescale_ts<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(&enc_pkt,</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span> outputCtx-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">streams</span>[streamIdx]-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">codec</span>-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">time_base</span>,</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span> outputCtx-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">streams</span>[streamIdx]-><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">time_base</span>);</div><p style="margin: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><br class="webkit-block-placeholder"></p><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span><span style="font-variant-ligatures: no-common-ligatures; color: #31595d" class="">av_log</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(</span><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">NULL</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">, </span><span style="font-variant-ligatures: no-common-ligatures; color: #78492a" class="">AV_LOG_DEBUG</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">, </span>"Muxing frame\n"<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">);</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span>/* mux encoded frame */</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>ret = <span style="font-variant-ligatures: no-common-ligatures; color: #31595d" class="">av_interleaved_write_frame</span>(outputCtx, &enc_pkt);</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>}</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>}</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>packet.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">data</span> += len;</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>packet.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">size</span> -= len;</div><p style="margin: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><br class="webkit-block-placeholder"></p><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(49, 89, 93);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span>av_frame_free<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(&frame);</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>}</div><p style="margin: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><br class="webkit-block-placeholder"></p><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(49, 89, 93);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span>av_write_trailer<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(outputCtx);</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(61, 29, 129);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span>dispatch_async<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(</span><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">callbackQueue</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">, ^{</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""><span class="Apple-tab-span" style="white-space:pre"> </span></span><span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">NSLog</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(</span>@"FINISH"<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">);</span></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>});</div><p style="margin: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span><br class="webkit-block-placeholder"></p></div>
<br><br>
<br><p><font face="Verdana,Arial" size=2>----<br>
ZE-Light e ZE-Pro: servizi zimbra per caselle con dominio email.it, per tutti i dettagli <a href="http://posta.email.it/caselle-di-posta-z-email-it/?utm_campaign=email_Zimbra_102014=main_footer" target="_blank">clicca qui</a><br>
<br>
Sponsor:<br>
Soluzioni di email hosting per tutte le esigenze: dalle caselle gratuite a quelle professionali su piattaforma Zimbra, da quelle su proprio dominio a quelle certificate PEC. Confronta le soluzioni<br>
<a href=http://adv.email.it/cgi-bin/foclick.cgi?mid=13326&d=1-4 target=_blank>Clicca qui</a></font><br>
<br></body></html>