1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
--- mediatomb-0.12.1.orig/src/metadata/ffmpeg_handler.cc 2012-06-18 02:50:35.000000000 -0400
+++ mediatomb-0.12.1/src/metadata/ffmpeg_handler.cc 2012-06-18 02:59:02.000000000 -0400
@@ -107,8 +107,8 @@
return;
for (const mapping_t *m = mapping; m->avname != NULL; m++)
{
- AVMetadataTag *tag = NULL;
- tag = av_metadata_get(pFormatCtx->metadata, m->avname, NULL, 0);
+ AVDictionaryEntry *tag = NULL;
+ tag = av_dict_get(pFormatCtx->metadata, m->avname, NULL, 0);
if (tag && tag->value && tag->value[0])
{
log_debug("Added metadata %s: %s\n", m->avname, tag->value);
@@ -278,7 +278,7 @@
int x = 0;
int y = 0;
- AVFormatContext *pFormatCtx;
+ AVFormatContext *pFormatCtx = avformat_alloc_context();
// Suppress all log messages
av_log_set_callback(FfmpegNoOutputStub);
@@ -286,15 +286,15 @@
// Register all formats and codecs
av_register_all();
- // Open video file
- if (av_open_input_file(&pFormatCtx,
- item->getLocation().c_str(), NULL, 0, NULL) != 0)
+ // Open video file
+ if (avformat_open_input(&pFormatCtx,
+ item->getLocation().c_str(), NULL, NULL) != 0)
return; // Couldn't open file
// Retrieve stream information
- if (av_find_stream_info(pFormatCtx) < 0)
+ if (avformat_find_stream_info(pFormatCtx,NULL) < 0)
{
- av_close_input_file(pFormatCtx);
+ avformat_close_input(&pFormatCtx);
return; // Couldn't find stream information
}
// Add metadata using ffmpeg library calls
@@ -303,7 +303,7 @@
addFfmpegResourceFields(item, pFormatCtx, &x, &y);
// Close the video file
- av_close_input_file(pFormatCtx);
+ avformat_close_input(&pFormatCtx);
}
Ref<IOHandler> FfmpegHandler::serveContent(Ref<CdsItem> item, int resNum, off_t *data_size)
|