assets.remove_number(i);
continue;
}
- if( !picon->indexable->is_asset ) continue;
+ if( !picon->indexable || !picon->indexable->is_asset ) continue;
struct stat st;
picon->mtime = !stat(picon->indexable->path, &st) ? st.st_mtime : 0;
}
estimated = 1;
}
}
- if( estimated )
+ static int notified = 0;
+ if( !notified && estimated ) {
+ notified = 1;
printf("FFMPEG::open_decoder: some stream times estimated\n");
+ }
ff_lock("FFMPEG::open_decoder");
int ret = 0, bad_time = 0;
window->add_subwindow(format_button = new FormatFormat(x, y, this));
format_button->create_objects();
x += format_button->get_w() + 5;
- window->add_subwindow(ffmpeg_type = new FFMpegType(x, y, 64, 1, asset->fformat));
+ window->add_subwindow(ffmpeg_type = new FFMpegType(x, y, 70, 1, asset->fformat));
FFMPEG::set_asset_format(asset, asset->fformat);
x += ffmpeg_type->get_w();
window->add_subwindow(format_ffmpeg = new FormatFFMPEG(x, y, this));
void SigHandler::push_file(File *file)
{
// Check for duplicate
- for(int i = 0; i < files.total; i++)
- {
- if(files.values[i] == file)
- {
- printf("SigHandler::push_file: file %s already on table.\n",
- file->asset->path);
- return;
- }
+ for(int i = 0; i < files.total; i++) {
+ if(files.values[i] == file) return;
}
// Append file
return;
}
}
- printf("SigHandler::pull_file: file %s not on table.\n",
- file->asset->path);
}
-
-
-
-
-
-
-
-
-
-
--- /dev/null
+webm libopus
+# YOUTUBE - use Settings->Format to adjust your audio -
+# legal sample rates: 8000/12000/16000/24000H/48000Hz
+# Stereo is 384k; change to 128k for mono, 512k for 5.1
+b=384k
--- /dev/null
+stereo.youtube
--- /dev/null
+webm libvpx-vp9
+# YOUTUBE - High Definition video
+# More VP9 options if choose format of webm
+# Refer to section 3.4 in Features5.pdf
+# 1920x1080 (24, 25 or 30 frames per second)
+bitrate=1800k
+minrate=900k
+maxrate=2610k
+tile-columns=2
+g=240
+threads=8
+quality=good
+crf=31
+speed=4
--- /dev/null
+webm libvpx-vp9
+# YOUTUBE & good for many web/mobile devices
+# More VP9 options if choose format of webm
+# Refer to section 3.4 in Features5.pdf
+# 640x480 (Medium Quality, 24/25/30 frames per second)
+bitrate=750k
+minrate=375k
+maxrate=1088k
+tile-columns=1
+g=240
+threads=4
+quality=good
+crf=33
+speed=4
--- /dev/null
+webm libvpx-vp9
+# YOUTUBE - Ultra High Definition video
+# More VP9 options if choose format of webm
+# Refer to section 3.4 in Features5.pdf
+# 3840x2160 (50 or 60 frames per second)
+bitrate=18000k
+minrate=9000k
+maxrate=26100k
+tile-columns=4
+g=240
+threads=24
+quality=good
+crf=15
+speed=4
--- /dev/null
+hd.youtube
int BC_RecentList::handle_event() {
BC_ListBoxItem *item = get_selection(0, 0);
- if (item < 0) return 0;
+ if( !item ) return 0;
char *text = item->get_text();
if (text && textbox) {
// change the text in the textbox
BC_Trace::dump_traces();
BC_Trace::dump_locks();
BC_Trace::dump_buffers();
- BC_Trace::dump_shm_stats();
BC_Trace::delete_temps();
// Call user defined signal handler
{
TheLocker the_locker;
int i = the_list.size();
- while( --i >= 0 && the_list[i]->tid != tid );
+ while( --i >= 0 && !(the_list[i]->tid == tid && the_list[i]->owner == owner) );
if( i >= 0 ) {
printf("dbg_add, dup %016lx %s %s\n",
(unsigned long)tid, nm, the_list[i]->name);
while( running() && !cancelled ) {
int ret = pthread_kill(tid, 0);
if( ret ) break;
- usleep(200000);
+ usleep(10000);
}
tid = ((pthread_t)-1);
}