On 08/22/2016 06:32 PM, Charles wrote:
I seem to be lost in where the values get copied.
Want to create a new h.264 file without an input stream to copy from

Steps
1 - av_encode_codec = avcodec_find_encoder( codec_id )
2 - av_encode_codec_ctx = avcodec_alloc_context3( av_encode_codec )
     av_encode_codec_ctx->width       = w_;   /// \note multiple of 2
     av_encode_codec_ctx->height      = h_;   /// \note multiple of 2
3 - avcodec_open2( av_encode_codec_ctx, av_encode_codec, &av_dict_opts )
4 - avformat_alloc_output_context2( &av_out_fmt_ctx, NULL, (char*)"mp4", fname )
5 - video_st = avformat_new_stream( av_out_fmt_ctx, av_encode_codec )
     av_out_fmt_ctx->streams[ 0 ]->codecpar->width = w_;
     av_out_fmt_ctx->streams[ 0 ]->codecpar->height = h_;
6 - avcodec_parameters_to_context( av_encode_codec_ctx, av_out_fmt_ctx->streams[ 0 
]->codecpar )
7 - avio_open( &av_out_fmt_ctx->pb, fname, AVIO_FLAG_WRITE )
8 - avformat_write_header( av_out_fmt_ctx, NULL )

[mp4 @ 0x29b4060] dimensions not set

transcoding.c
is using enc_ctx = out_stream->codec;
Which should be the same as av_encode_codec_ctx

What am I missing here?

Thanks
cco
_______________________________________________
Libav-user mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/libav-user

Posted the code at :
https://gist.github.com/LinuxwitChdoCtOr/74c1721dd7688cf1d16509ea2a52d231

Current output:
Output #0, mp4, to 'enc.mp4':
    Stream #0:0: Unknown: none (h264_nvenc) ([33][0][0][0] / 0x0021)
[mp4 @ 0x1a08a60] Using AVStream.codec to pass codec parameters to muxers is 
deprecated, use AVStream.codecpar instead.
[mp4 @ 0x1a08a60] dimensions not set


_______________________________________________
Libav-user mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/libav-user

Reply via email to