[vlc-devel] [PATCH] Accept subtitle transcoding options
Brendon Justin
brendonjustin at gmail.com
Sun Jun 10 01:12:47 CEST 2012
VLCStreamOutput now accepts subtitle-related options
for transcoding.
---
Two things:
This patch is for VLCKit, not vlc.git.
I have had no success compiling VLCKit, even when it was
still in vlc.git, so I have been unable to test these changes.
The code does compile on its own, so it is at least syntactically
valid.
Sources/VLCStreamOutput.m | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/Sources/VLCStreamOutput.m b/Sources/VLCStreamOutput.m
index 85b3312..49bfc61 100644
--- a/Sources/VLCStreamOutput.m
+++ b/Sources/VLCStreamOutput.m
@@ -3,9 +3,11 @@
*****************************************************************************
* Copyright (C) 2008 Pierre d'Herbemont
* Copyright (C) 2008 VLC authors and VideoLAN
+ * Copyright (C) 2012 Brendon Justin
* $Id$
*
* Authors: Pierre d'Herbemont <pdherbemont # videolan.org>
+ * Brendon Justin <brendonjustin # gmail.com>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published by
@@ -157,6 +159,7 @@
{
NSString * videoCodec = [transcodingOptions objectForKey:@"videoCodec"];
NSString * audioCodec = [transcodingOptions objectForKey:@"audioCodec"];
+ NSString * subtitleCodec = [transcodingOptions objectForKey:@"subtitleCodec"];
NSString * videoBitrate = [transcodingOptions objectForKey:@"videoBitrate"];
NSString * audioBitrate = [transcodingOptions objectForKey:@"audioBitrate"];
NSString * channels = [transcodingOptions objectForKey:@"channels"];
@@ -165,6 +168,8 @@
NSString * width = [transcodingOptions objectForKey:@"width"];
NSString * audioSync = [transcodingOptions objectForKey:@"audioSync"];
NSString * videoEncoder = [transcodingOptions objectForKey:@"videoEncoder"];
+ NSString * subtitleEncoder = [transcodingOptions objectForKey:@"subtitleEncoder"];
+ NSString * subtitleOverlay = [transcodingOptions objectForKey:@"subtitleOverlay"];
if( videoEncoder ) [subOptions addObject:[NSString stringWithFormat:@"venc=%@", videoEncoder]];
if( videoCodec ) [subOptions addObject:[NSString stringWithFormat:@"vcodec=%@", videoCodec]];
if( videoBitrate ) [subOptions addObject:[NSString stringWithFormat:@"vb=%@", videoBitrate]];
@@ -175,6 +180,9 @@
if( audioBitrate ) [subOptions addObject:[NSString stringWithFormat:@"ab=%@", audioBitrate]];
if( channels ) [subOptions addObject:[NSString stringWithFormat:@"channels=%@", channels]];
if( audioSync ) [subOptions addObject:[NSString stringWithFormat:@"audioSync", width]];
+ if( subtitleCodec ) [subOptions addObject:[NSString stringWithFormat:@"scodec=%@", subtitleCodec]];
+ if( subtitleEncoder ) [subOptions addObject:[NSString stringWithFormat:@"senc=%@", subtitleEncoder]];
+ if( subtitleOverlay ) [subOptions addObject:@"soverlay"];
[optionsAsArray addObject: [NSString stringWithFormat:@"#transcode{%@}", [subOptions componentsJoinedByString:@","]]];
[subOptions removeAllObjects];
}
--
1.7.7.5 (Apple Git-26)
More information about the vlc-devel
mailing list