Merge remote-tracking branch 'upstream/master'
This commit is contained in:
commit
99667ce98d
@ -9,7 +9,7 @@
|
||||
<property name="BASE_DIR" value="${basedir}" />
|
||||
<property name="SRC_DIR" value="${BASE_DIR}/src" />
|
||||
|
||||
<property name="OUTPUT_DIR" value="${BASE_DIR}/bin" />
|
||||
<property name="OUTPUT_DIR" value="${BASE_DIR}/client" />
|
||||
<taskdef resource="flexTasks.tasks" classpath="${FLEX_HOME}/ant/lib/flexTasks.jar" />
|
||||
|
||||
<target name="init-ant-contrib">
|
||||
|
@ -674,3 +674,12 @@ MDIWindow { /*None of the following properties are overridden by the MDIWindow c
|
||||
{
|
||||
icon: Embed('assets/images/webcam.png');
|
||||
}
|
||||
|
||||
Alert {
|
||||
borderColor: #DFDFDF;
|
||||
backgroundColor: #EFEFEF;
|
||||
borderAlpha: 1;
|
||||
shadowDistance: 1;
|
||||
dropShadowColor: #FFFFFF;
|
||||
color: #000000;
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
function setTitle(title){
|
||||
document.title=title;
|
||||
document.title= "BigBlueButton - " + title;
|
||||
}
|
||||
|
||||
var i = 1;
|
||||
|
@ -105,7 +105,7 @@ package org.bigbluebutton.main.model.users
|
||||
}
|
||||
|
||||
// assign the meeting name to the document title
|
||||
ExternalInterface.call("setTitle", "BigBlueButton - " + _conferenceParameters.meetingName);
|
||||
ExternalInterface.call("setTitle", _conferenceParameters.meetingName);
|
||||
|
||||
/**
|
||||
* Temporarily store the parameters in global BBB so we get easy access to it.
|
||||
|
@ -179,12 +179,12 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
// Confirm logout using built-in alert
|
||||
var alert:Alert = Alert.show(ResourceUtil.getInstance().getString('bbb.logout.confirm.message'), ResourceUtil.getInstance().getString('bbb.logout.confirm.title'), Alert.YES | Alert.NO, this, alertLogout, null, Alert.YES);
|
||||
|
||||
var newX:Number = this.width/2 - alert.width/2;
|
||||
var newY:Number = 86;
|
||||
var newX:Number = langSelector.x + langSelector.width/2;
|
||||
var newY:Number = btnLogout.y + btnLogout.height + 5;
|
||||
|
||||
alert.validateNow();
|
||||
alert.move(newX, newY);
|
||||
Accessibility.updateProperties();
|
||||
//Accessibility.updateProperties();
|
||||
}
|
||||
else{
|
||||
doLogout();
|
||||
@ -312,6 +312,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
]]>
|
||||
</mx:Script>
|
||||
|
||||
<mx:HBox id="quickLinks" width="1" includeInLayout="false">
|
||||
<mx:LinkButton id="usersLinkBtn" click="onQuickLinkClicked('users')" label="{ResourceUtil.getInstance().getString('bbb.users.quickLink.label')}"
|
||||
accessibilityDescription="{usersLinkBtn.label}" toolTip="{usersLinkBtn.label}"
|
||||
|
@ -289,6 +289,29 @@ module BigBlueButton
|
||||
File.rename(temp_wav_file, file)
|
||||
end
|
||||
end
|
||||
|
||||
# Stretch/squish the length of the audio file to match the requested length
|
||||
# The length parameter should be in milliseconds.
|
||||
# Returns the filename of the new file (in the same directory as the original)
|
||||
def self.stretch_audio_file(file, length, sample_rate)
|
||||
BigBlueButton.logger.info("Task: Stretching/Squishing Audio")
|
||||
orig_length = determine_length_of_audio_from_file(file)
|
||||
new_file = "#{file}.stretch.wav"
|
||||
|
||||
if (orig_length == 0)
|
||||
BigBlueButton.logger.error("Stretch received 0-length file as input!")
|
||||
# Generate silence to fill the length
|
||||
generate_silence(length, new_file, sample_rate)
|
||||
return new_file
|
||||
end
|
||||
|
||||
speed = orig_length.to_f / length.to_f
|
||||
BigBlueButton.logger.info("Adjusting #{file} speed to #{speed}")
|
||||
sox_cmd = "sox #{file} #{new_file} speed #{speed} rate -h #{sample_rate} trim 0 #{length.to_f/1000}"
|
||||
|
||||
BigBlueButton.execute(sox_cmd)
|
||||
return new_file
|
||||
end
|
||||
|
||||
# Determine the audio padding we need to generate.
|
||||
def self.generate_audio_paddings(events, events_xml)
|
||||
|
@ -41,7 +41,10 @@ module BigBlueButton
|
||||
BigBlueButton::AudioEvents.generate_silence(ae.length_of_gap, ae.file, sampling_rate)
|
||||
else
|
||||
# Substitute the original file location with the archive location
|
||||
ae.file = ae.file.sub(/.+\//, "#{audio_dir}/")
|
||||
orig_file = ae.file.sub(/.+\//, "#{audio_dir}/")
|
||||
length = ae.stop_event_timestamp.to_i - ae.start_event_timestamp.to_i
|
||||
|
||||
ae.file = BigBlueButton::AudioEvents.stretch_audio_file(orig_file, length, sampling_rate)
|
||||
end
|
||||
|
||||
audio_files << ae.file
|
||||
|
@ -645,7 +645,7 @@ def processChatMessages
|
||||
chat_sender = node.xpath(".//sender")[0].text()
|
||||
chat_message = BigBlueButton::Events.linkify(node.xpath(".//message")[0].text())
|
||||
chat_start = (chat_timestamp.to_i - $meeting_start.to_i) / 1000
|
||||
$xml.chattimeline(:in => chat_start, :direction => :down, :name => chat_sender, :message => chat_message, :target => :chat )
|
||||
$xml.chattimeline(:in => chat_start, :direction => :down, :name => chat_sender, :message => chat_message.to_s.gsub("event:",""), :target => :chat )
|
||||
end
|
||||
}
|
||||
end
|
||||
|
Loading…
Reference in New Issue
Block a user